首頁 > 硬體

同步多執行緒是什麼

2020-10-19 15:59:19

  同步多執行緒(SMT)是一種在一個CPU 的時鐘週期內能夠執行來自多個執行緒的指令的硬體多執行緒技術。本質上,同步多執行緒是一種將執行緒級並行處理(多CPU)轉化為指令級並行處理(同一CPU)的方法。 同步多執行緒是單個物理處理器從多個硬體執行緒上下文同時分派指令的能力。同步多執行緒用於在商用環境中及為週期/指令(CPI)計數較高的工作負載創造效能優勢。 處理器採用超標量結構,最適於以並行方式讀取及執行指令。同步多執行緒使您可在同一處理器上同時排程兩個應用程式,從而利用處理器的超標量結構性質。

概述

  任何單個應用程式都不能完全使該處理器達到滿負荷。當一個執行緒遇到較長等待時間事件時,同步多執行緒還允許另一執行緒中的指令使用所有執行單元。例如,當一個執行緒發生快取記憶體不命中,另一個執行緒可以繼續執行。同步多執行緒是 POWER5™ 和 POWER6™ 處理器的功能,可與共用處理器配合使用。

  SMT 對於商業事務處理負載的效能優化可達30%。在更加註重系統的整體吞吐量而非單獨執行緒的吞吐量時,SMT 是一個很好地選擇。

  但是並非所有的應用都能通過SMT 取得效能優化。那些效能受到執行單元限制的應用,或者那些耗盡所有處理器的記憶體頻寬的應用,其效能都不會通過在同一個處理器上執行兩個執行緒而得到提高。


IT145.com E-mail:sddin#qq.com