2010-05-22 40 views
6

爲了優化數學評估,我對某些浮點操作的現代臺式機CPU的時間成本感興趣。特別是我對exp,log等複雜操作與簡單操作如+,*/之間的比較感興趣。CPU浮動操作成本

我試圖搜索這些信息,但找不到來源。

浮點運算的成本是多少?

+0

爲什麼不寫一個循環來做10,000'*'和10,000'exp'並收集數據? – 2010-05-22 11:16:44

+0

什麼CPU? x86家族? 32位或64位? – 2010-07-19 08:17:09

+0

@彼得:x86 64位 – 2010-07-26 21:12:54

回答

2

現代CPU將會在幾個時鐘內浮動+和 - 。許多人會用少量時鐘做*,但超過+和 - 。分頻通常比*慢得多。超越比Divide慢。

通過查看英特爾優化手冊,您可能會對速度有所瞭解。

+1

是的,這是我所需要的:英特爾優化手冊頁碼C-25 – 2010-05-22 11:22:36

+0

爲什麼我可以找到sin/cos/tan的指令,但不能用於log/exp? – 2010-05-22 11:41:37

+0

他們在英特爾指令集中。我不確定它是直接計算它們的; IIRC計算了一些中間結果,可以很容易地計算出這些結果。仔細閱讀FP指令集。 – 2010-05-22 16:02:18