2011-03-14 90 views
1

我會尋找計算機的兩個核心之間的通信速度。多核處理器核心通信速度

我在規劃的初期階段,以大規模parallelise順序計劃,我需要考慮網絡通信速度與在單個處理器核心之間的通信。

Ubuntu Linux操作系統提供了可能看到這類信息的一些方法?我會認爲速度波動..我只需要一些平均值。我現在基本上需要寫點東西,談談這些比例是件好事。

任何想法?

謝謝。

+0

我增加了帶寬比較以及我的答案,根據您所做的確切性質,這可能與延遲相關或不相關。 – Davy8 2011-03-14 22:29:06

回答

4

根據這一基準:http://www.dragonsteelmods.com/index.php?option=com_content&task=view&id=6120&Itemid=38&limit=1&limitstart=4(頁面上最後一張圖像)

在Intel Q6600,核間的等待時間爲32納秒。網絡等待時間以毫秒爲單位,即1,000,000毫秒/納秒。 「好」的網絡延遲被認爲是大約100ms左右,所以考慮到這一點,差異大約是核心間延遲的100萬倍。

除了等待,雖然有帶寬也需要考慮。再次基於鏈接書籤,針對該特定配置的基準,核心間帶寬約爲14GB/sec,而根據此:http://www.tomshardware.com/reviews/gigabit-ethernet-bandwidth,2321-3.html,千兆以太網連接的實際測試顯示約爲35.8MB/sec,因此差異較小,僅在帶寬方面大約快500倍而非延遲的1,000,000倍。取決於哪些對您的應用程序更重要,可能會更改您的號碼。

0

這是一件不平凡的事情。兩個內核之間的數據傳輸速度完全取決於應用程序。它可能取決於任何(或全部) - 寄存器訪問的速度,內核的時鐘速度,系統總線速度,緩存的延遲,內存的延遲等等。總之,運行一個基準測試,或者你會在黑暗中猜測。

+0

謝謝Reinderien。出於興趣,是不是有一些'理論最大值'?具體來說,特定系統上的特定處理器上的兩個內核之間是否會有最大的通信速度? – ale 2011-03-14 21:24:08

+1

@ vivid-colours:理論最大值?吞吐量還是延遲?如果是延遲,則理論最小延遲由光速決定。 – ninjalj 2011-03-14 21:39:34

+0

@ninjalj是對的。事實上,我相信光速是限制因素之一(最後我讀到)在CPU中獲得更高的時鐘速度,這是近期核心數量增加而不是時鐘速度增加的原因。 – Davy8 2011-03-14 22:31:49

1

核心間通信將是大規模更快。爲什麼?

  1. 網絡層施加了巨大的開銷在分組方面,解決,處理爭等
  2. 物理距離將處以相當大的影響

你如何衡量核心間通訊速度會非常困難。但鑑於上述情況,我認爲這是一個多餘的計算。

+0

同意。核心間通信速度非常快。我經歷了網絡與核心間通信之間的一般比例。我可以理解,速度是特定問題,但我們必須確定網絡速度與核心處理器速度有一定關係? – ale 2011-03-14 21:25:51

4

網絡速度在用於以太網毫秒($ 5- $ 100 /端口),或微秒專門MPI硬件像海豚上測量Myrintet(〜$ 1K /端口)。核心速度以毫微秒爲單位進行測量,因爲數據從一個存儲區複製到另一個存儲區,然後某個信號從一個CPU發送到另一個CPU(數據將受到保護,以免被互斥或全身隊列同時訪問)。

所以,使用back'o'the'napkin計算比爲1:10^6。