Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
当我转换powf为它时,__powf它会给我带来性能改进。但如果我转换sqrtf为其中之一,__fsqrt_[rn,rz,ru,rd]它会减慢速度。我认为它们的运行速度至少应该和 sqrtf 一样快。可能是什么问题?
powf
__powf
sqrtf
__fsqrt_[rn,rz,ru,rd]
问候
如果您需要对整数进行平方(或浮点数),那么您可以将值与自身相乘,即代替;
y = powf(x, 2);
利用:
y = x * x;
这避免了使用昂贵的超越函数(连同其相关的函数调用开销),并且在大多数情况下只生成单个乘法指令。
平方根可能无法避免,但您可以使用fsqrtf而不是sqrtf只需要单精度 - 这通常要快得多。
fsqrtf