开启辅助访问 切换到窄版
搜索

Fortran Coder

 找回密码
 极速注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

[复制链接]

询问一个关于计算速度的问题

[讨论]
蒂姆邓肯 发表于 2016-12-26 19:56:24 查看183 回复1 阅读模式
假设a=x*y-m*n
请问是否写成
p=x*y
q=m*n
a=p-q
能提高计算速度,原理又是什么呢?
谢谢

回复

使用道具 举报

fcode 发表于 2016-12-27 08:43:07
如果 p 和 q 的数据类型是匹配于运算的,那么可以这么改写。

并不能提高计算速度。反之,可能会降低运算速度。(这当然取决于编译器的优化性能)
不考虑编译器自动优化的情况下,第一种写法可以充分利用缓存和寄存器来存放中间结果。
而第二种写法需要写入到内存里的变量里。因此,第一种写法会效率更高。
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则 长代码粘贴

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表