首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >性能: log(a/b)与log(a) - log(b)

性能: log(a/b)与log(a) - log(b)
EN

Stack Overflow用户
提问于 2015-01-23 15:18:20
回答 1查看 1.3K关注 0票数 0

我在想什么更快:

代码语言:javascript
复制
double value = Math.log(a) - Math.log(b);

代码语言:javascript
复制
double value = Math.log(a/b);

我计算value的方式是否会对性能产生影响(假设这会经常被调用),或者编译器会为我优化这一点吗?

EN

回答 1

Stack Overflow用户

发布于 2015-01-23 15:32:48

我认为Math.log(a/b)更快。为什么?

为了解决.log(x),编译器首先解析x的值,在本例中是a/b

因此,解决log的步骤是:

  1. x
  2. a/b
    1. a
    2. b

  1. 返回a/b
  2. 返回log(a/b)

另一方面,日志的减法意味着对Solve x进行2次( ab各一次)。然后,您将不得不解析x-y,其中xy.log()操作。

但是,Java可以为您优化所有这些。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28112984

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档