gpt4 book ai didi

c - 数学函数在现代处理器上需要多少周期

转载 作者:太空狗 更新时间:2023-10-29 15:43:37 25 4
gpt4 key购买 nike

我们知道现代处理器直接在处理器上执行诸如 cosinesin 之类的指令,因为它们具有针对这些指令的操作码。我的问题是这些指令通常需要多少周期。它们需要常数时间还是取决于输入参数?

最佳答案

时间因处理器型号而异。时间通常从几十个 CPU 周期到一百个或更多。

(许多指令消耗的时间因情况而异,因为指令使用处理器中的各种资源[调度程序、执行单元、重命名寄存器等],所以一条指令延迟其他工作多长时间取决于其他因素正在处理器中进行。例如,如果某些代码几乎全部执行加载和存储指令,那么非常偶然的正弦指令可能根本不会减慢其执行速度。但是,需要数十个 CPU 周期的指令通常由它们的指令主导执行单元中的次数,这是执行实际数值计算的部分。)

执行时间可能因输入参数而异。三角函数的大自变量必须以 2π 为模约化,这本身就是一个复杂的问题。

在 Mac OS X 数学库中,我们通常使用汇编语言编写自己的实现,原因可能包括速度、符合标准、应用程序二进制接口(interface)的适用性和其他特性。

如果您只是好奇,那么“数十到数百个处理器周期”可能是一个很好的答案,尤其是在不指定特定处理器型号的情况下。从本质上讲,时间足够长,您不应无缘无故地使用这些操作。 (例如,我看到过将 π 获取为 4·arctan(1) 的代码。请不要那样做。)

如有其他提问原因,应说明,以便回答有重点。

关于c - 数学函数在现代处理器上需要多少周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12333638/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com