2017-06-17 45 views
0

我的工作是運行具有20個計算節點的集羣系統。 我很難計算此HPC系統的最高理論性能。如何計算hpc性能rpeak

我知道HPC世界正在使用節點峯理論性能下式:在GFLOPS =(以GHz CPU速度)

節點性能X(CPU內核數量)×(每個週期CPU指​​令)x(每個節點的CPU數量)

但我沒有得到如何找出(CPU指令每個週期)的CPU。 這裏有20個節點的型號名稱:

  1. Xeon5460 3.16Ghz 4Core * 2
  2. Xeon5450 3.00Ghz 4Core * 2
  3. Xeon5450 3.00Ghz 4Core * 2
  4. Xeon5460 3.16Ghz 4Core * 2
  5. Xeon5460 3.16Ghz 4Core * 2
  6. Xeon5460 3.16Ghz 4Core * 2
  7. Xeon5460 3.16Ghz 4Core * 2
  8. Xeon5460 3.16Ghz 4Core * 2
  9. Xeon5460 3.16Ghz 4Core * 2
  10. Xeon5460 3.16Ghz 4Core * 2
  11. Xeon2690 2.90Ghz 8Core * 2
  12. Xeon2690 2.90Ghz 8Core * 2
  13. Xeon2690 2.90Ghz 8Core * 2
  14. Xeon5680 3.33GHz的6Core * 2
  15. Xeon5660 2.80GHz的6Core * 2
  16. Xeon5660 2.80GHz的6Core * 2
  17. Xeon5660 2.80GHz的6Core * 2
  18. Xeon5660 2.80GHz的6Core * 2
  19. Xeon2680 2.80GHz的10Core * 2
  20. Xeon2680 2.80GHz的10Core * 2

我擡頭英特爾的首頁,但不能找到我需要的信息。 任何人都可以幫助我找出(CPU週期的指令)和系統的rpeak?

回答

2

「指令每個週期」與計算觸發器無關,它應該具體爲每個週期的指令浮點數。每個週期浮點指令的數量通常低於每個週期的指令總數。另外不要忘記矢量大小。

例如,對於Xeon5460(基於Penryn的Xeon),在正確的情況下,每個週期可以執行多達5條指令,但其中只有兩條可以是浮點指令,並且必須能夠訪問不同的端口例如addpsmulps,它們都是「值得」4次操作,因爲它們在4個浮點數的矢量上操作)。

無論如何,你可以使用這些號碼,從this table衍生

  • 的Penryn /的Nehalem/Westmere的樣,每循環2個浮點指令,向量大小4(2爲雙),所以8跳動/ c或4 dflop/c。 Sandy和Ivy,每個週期2個浮點運算,向量大小8(4爲double),所以16個翻轉/ c或8個dflop/c。
  • Haswell/Broadwell/Skylake,每個週期仍然有2個浮點運算,但它們可以是FMAs,所以32個翻轉/ c或16個dflop/c,因爲FMA計數爲2。

在這些計算中並沒有顯示出這些計算之間存在更多的差異(在總的Flops中也沒有,所以像往常一樣我質疑這個數字是多麼有用)。例如,在Skylake上,您可以在一個循環中執行2個浮點指令,例如添加,最小/最大,比較和一些轉換。 Broadwell和Haswell每個週期只能做兩個補充,使它們成爲FMA的一部分,而最小/最大等在那裏運氣不好。分部吞吐量超過Haswell和Broadwell的兩倍,希望部門很少,但這可能至少有有時

您可以在wikipedia上查找處理器基於哪種體系結構。儘管它們可以通過內核數量和頻率進行區分,但您應該始終包含版本號,E5-2690(Sandy)與E5-2690 v4(Broadwell)完全不同。根據核心數量,您列出的是Sandy和Ivy。