引用:
作者space
CPUMARK99不是測整數的嗎?
還是我記錯了?
|
您說的是對的,確實是整數運算
感謝指正
為了證實這個說法
我拿了一顆FPU模組共用的推土機CPU來測試
將核心數量關到剩一個模組(1M2T),然後再開兩個CPUMARK99
發現測出來的數值較單線程的確有變低,但總合分數仍較單線程測試下多約6成
然後花了點時間用fortran寫了一個用上IEEE 754定義的雙精度浮點數(64位)的小程式
計算勞倫茲轉換,只有單線程,算完最後會write跑完所需的時間
我發現若使用一個模組的狀態下,同時跑兩個上述的程式
相較於只跑一個,會發生效率低落的情形,完成時間幾乎多出一倍
反之
我用大數運算寫的伽利略轉換去計算跑完的時間,在同時跑一個與跑兩個程式的測試中
卻沒有這麼嚴重的差異
所以我推測cpumark99這支程式應該是測整數而不是測浮點
這樣的測試與推論不知有沒有什麼問題
如果有不對的地方還請提出
p.s.
1.勞倫茲轉換的部份,是因為計算結果不重要才可以無視精度這樣做
否則勞倫茲因子的誤差會因為速度增加而愈來愈大

2.fortran用的庫是ARPREC,IMSL應該也是可以