平方函数和直接在Rust中调用powi(2)之间是否存在性能差异?

ideaman42

在Rust中,您可以编写(x * x)x.powi(2)

是否有任何理由要/反对在Rust中将其包装到功能/宏中(x * x) (除了可读性和个人喜好以外),或者这等同于使用x.powi(2)

(其中2in常量x.powi(2)被折叠并转换为x * x

氨纶

不,在当前的Rust编译器中,它们是等效的,生成的结果完全相同。

您可以通过Rust Playground查看为这两种变体生成的汇编代码

#![crate_type = "lib"]

pub fn square_mul(x:f64) -> f64 {
    x*x
}

pub fn square_pow(x:f64) -> f64 {
    x.powi(2)
}

选择一个频道并释放编辑模式,然后按ASM左上角按钮。这是Rust v1.10的输出:

// square_mul:
mulsd   %xmm0, %xmm0
retq

// square_pow:
mulsd   %xmm0, %xmm0
retq

因此,Rust为这两个函数生成完全相同的代码。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

平方函数和直接在Rust中调用powi(2)之间是否存在性能差异?

来自分类Dev

在 Common Lisp 中,函数和宏之间是否存在性能差异?

来自分类Dev

JavaScript中的“ let”和“ var”之间是否存在性能差异

来自分类Dev

匿名函数和直接在React组件中调用函数之间的区别

来自分类Dev

在javascript类构造函数中声明变量与在所述构造函数内部调用方法之间是否存在有意义的性能差异?

来自分类Dev

NumericVector和vector <double>之间是否存在性能差异?

来自分类Dev

Elasticsearch中的`ngram`过滤器和`ngram`标记生成器之间是否存在性能差异

来自分类Dev

这三种函数的返回方式之间是否存在性能差异(C ++)

来自分类Dev

int和仅包含int的结构之间是否存在性能差异?

来自分类Dev

在使用angular $ filter和带有Filter后缀的名称之间是否存在性能差异?

来自分类Dev

在这种情况下,子文档和全局文档之间是否存在性能差异?

来自分类Dev

使用Virtual Box的VMDK和VDI虚拟磁盘格式之间是否存在性能差异?

来自分类Dev

介于“喜欢”和“喜欢%”之间是否确实存在性能差异?

来自分类Dev

通过icc或gcc编译和链接mkl库之间是否存在性能差异?

来自分类Dev

强制转换为 void* 和基本结构指针之间是否存在性能差异?

来自分类Dev

?? 之间的性能差异 和 ==

来自分类Dev

std :: copy和容器的copy构造函数之间是否有性能差异?

来自分类Dev

对象和函数之间的方法调用差异

来自分类Dev

SQL Server中不存在和左联接之间的性能差异

来自分类Dev

之间存在性能差异?和.where.present?

来自分类Dev

在循环中调用`n`函数与每个调用1个函数进行`n`循环之间是否存在速度差异?

来自分类Dev

如何直接在url中调用onclick javascript函数?

来自分类Dev

ArrayList构造函数之间的性能和学习差异

来自分类Dev

如果EC2实例位于不同的子网中,网络性能是否存在差异?

来自分类Dev

如果EC2实例位于不同的子网中,网络性能是否存在差异?

来自分类Dev

PHP OOP-> __construct中的if语句与直接调用函数(性能和未来)

来自分类Dev

备份MBR时,计数= 2的dd和对应块大小的count = 1之间是否存在差异?

来自分类Dev

HL7 ORU消息中的ORC和OBR公用元素之间是否存在差异?

来自分类Dev

在Rails 5中,“ model.save”和“ model.errors.empty”之间是否存在功能差异?

Related 相关文章

  1. 1

    平方函数和直接在Rust中调用powi(2)之间是否存在性能差异?

  2. 2

    在 Common Lisp 中,函数和宏之间是否存在性能差异?

  3. 3

    JavaScript中的“ let”和“ var”之间是否存在性能差异

  4. 4

    匿名函数和直接在React组件中调用函数之间的区别

  5. 5

    在javascript类构造函数中声明变量与在所述构造函数内部调用方法之间是否存在有意义的性能差异?

  6. 6

    NumericVector和vector <double>之间是否存在性能差异?

  7. 7

    Elasticsearch中的`ngram`过滤器和`ngram`标记生成器之间是否存在性能差异

  8. 8

    这三种函数的返回方式之间是否存在性能差异(C ++)

  9. 9

    int和仅包含int的结构之间是否存在性能差异?

  10. 10

    在使用angular $ filter和带有Filter后缀的名称之间是否存在性能差异?

  11. 11

    在这种情况下,子文档和全局文档之间是否存在性能差异?

  12. 12

    使用Virtual Box的VMDK和VDI虚拟磁盘格式之间是否存在性能差异?

  13. 13

    介于“喜欢”和“喜欢%”之间是否确实存在性能差异?

  14. 14

    通过icc或gcc编译和链接mkl库之间是否存在性能差异?

  15. 15

    强制转换为 void* 和基本结构指针之间是否存在性能差异?

  16. 16

    ?? 之间的性能差异 和 ==

  17. 17

    std :: copy和容器的copy构造函数之间是否有性能差异?

  18. 18

    对象和函数之间的方法调用差异

  19. 19

    SQL Server中不存在和左联接之间的性能差异

  20. 20

    之间存在性能差异?和.where.present?

  21. 21

    在循环中调用`n`函数与每个调用1个函数进行`n`循环之间是否存在速度差异?

  22. 22

    如何直接在url中调用onclick javascript函数?

  23. 23

    ArrayList构造函数之间的性能和学习差异

  24. 24

    如果EC2实例位于不同的子网中,网络性能是否存在差异?

  25. 25

    如果EC2实例位于不同的子网中,网络性能是否存在差异?

  26. 26

    PHP OOP-> __construct中的if语句与直接调用函数(性能和未来)

  27. 27

    备份MBR时,计数= 2的dd和对应块大小的count = 1之间是否存在差异?

  28. 28

    HL7 ORU消息中的ORC和OBR公用元素之间是否存在差异?

  29. 29

    在Rails 5中,“ model.save”和“ model.errors.empty”之间是否存在功能差异?

热门标签

归档