四執行緒

四執行緒,指搶先多任務的意思,但在實施線在現代的執行水平超標處理器。

詳情
多執行緒是類似的概念 搶先多任務 但在實施線在現代的執行水平超標處理器。
同時多執行緒(SMT)的是兩個主要的多執行緒實現之一,其他形式被 時間多執行緒。在時間多執行緒,只有一個執行緒可以執行的指令在任何特定的時間階段管道。在同時多執行緒,從多個執行緒指令可以執行在任何特定的時間階段管道。這樣做是沒有基本的處理器架構的巨大變化:增加所需要的主要是能夠獲取從多個執行緒在一個周期的指示,和更大的登記檔案來保存從多個執行緒的數據。的並發執行緒的數量可以決定的晶片設計,晶片上的複雜性,但實際的規定,限制了大多數的SMT實現的數目為兩個,雖然有多達8個,每個核心執行緒被,例如, 基於UltraSPARC T2的。
由於該技術的確是一個有效率的解決方案是不可避免的衝突共享資源增加,測量或解決方案的有效性可能很難達成一致。一些研究人員已經證明,額外的執行緒可以被用來積極種子就像一個快取共享資源,提高單個執行緒的另一個表現,並聲稱這表明SMT是不是只是一個效率的解決方案。其他人使用的SMT提供冗餘計算,對部分錯誤檢測和恢復的水平。
然而,在大多數當前情況下,SMT是對隱藏記憶體延遲,提高效率,增加每硬體使用量計算吞吐量。
分類學
在處理器的設計,有兩種方法可以用較少的資源需求增加片上並行:一種是 超標 技術,它試圖以增加指令級並行(獨立工黨),另一種是 多執行緒 方法利用執行緒級並行(TLP)的。
超標量是指在同一時間執行多個指令,而晶片級多執行緒(CMT)的一個處理器晶片內執行多個指令執行緒在同一時間。有很多方法可以支持多個執行緒在一個晶片上,即:
交織多執行緒:從不同的執行緒多個指令交錯的問題,也被稱為 時序多執行緒。它可以進一步分為細粒度多執行緒或粗晶粒多執行緒依賴於頻率的交叉問題。 細粒度 多執行緒 - 例如在 桶處理器 - 問題的指示後,每個周期,同時為不同的執行緒 粗晶粒 只有多執行緒切換到另一個執行緒的問題時,從當前執行的執行緒導致一些長期潛伏的事件,如頁故障等(指令)。粗晶粒多執行緒是較常見的為少執行緒之間的上下文切換。例如,英特爾的 蒙特西托 處理器使用粗粒多執行緒,而Sun的 UltraSPARC T1處理器 使用細粒度多執行緒。對於那些只有一個處理器,每個核心的管道,交織多執行緒是唯一可能的方式,因為它可以發行最多每個周期的指令。
同時多執行緒(SMT)的:從多個執行緒發出多個指令在一個周期。超標量處理器必須這樣做。
晶片級多處理(CMP或 多核):集成了兩個或更多 超標[編輯] 到一個晶片處理器,每個獨立的執行緒執行
任何多執行緒/貼片/ CMP的組合
區分的關鍵因素是看他們有多少可以發出指令,處理器在一個周期中,有多少執行緒從該指示來。例如,Sun微系統公司的 UltraSPARC T1處理器 (稱為“尼亞加拉”,直到其2005年11月14日發布)是一種多核心處理器,細粒度多執行緒同步多執行緒技術,而不是因為每個問題的核心只能一次一個指令相結合。
實現歷史
同時多執行緒處理器上世紀50年代以來各地,同時多執行緒首先研究由IBM於1968年。微處理器的第一個重大的商業開發是與貼片 阿爾法21464 (EV8)。這是由微處理器 12月 在院長的協調下,美國加州聖迭戈,和蘇珊埃格斯和漢克的華盛頓大學利維大學Tullsen。微處理器是從未公布以來,微處理器阿爾法線,前不久已停止 惠普 後天 康柏 這反過來又收購 12月。院長Tullsen的工作也被用來發展“超執行緒“(或”HTT的“)的英特爾奔騰4處理器的版本,如”諾斯伍德“和”斯科特“。
現代商業實現
該 英特爾 奔騰4 第一屆現代台式機處理器同時執行多執行緒,從2002年發表的配備3.06GHz模式,因為到了他們的處理器的數量引進開始。英特爾調用功能 超執行緒技術 (HTT)最大,並提供了一個基本的兩個執行緒的SMT引擎。英特爾聲稱高達30%的速度相比提高了對一個相同的,否則,非貼片奔騰4。看到的是,性能改善非常取決於應用程式,以及一些方案其實稍為放緩,開啟時HTT的是,由於增加對資源的爭奪如頻寬,高速快取, TLBs, 重新排序緩衝區 參賽作品等,這通常是用於數據訪問例程寫得不好,造成高延遲intercache交易(快取抖動在多處理器系統)的情況。以前編寫的程式設計的多處理器和多核是普遍常見的最佳化,因為沒有一個單一的CPU系統快取訪問,只有一個單一快取始終是與自己一致。在多處理器系統上的CPU或核心通常有它自己的快取,這是與其他CPU /核心在系統快取中相互聯繫,保持快取的一致性。如果執行緒A訪問一個記憶體位置[00]和執行緒B然後訪問記憶體位置[01]它可引起intercache交易,特別是當快取線填充超過2個位元組,因為是所有現代處理器的情況。
最新[什麼時候?] MIPS架構 表面貼裝系統設計包括一個被稱為 “MIPS的噸”。為雙方提供的MIPS噸重量級虛擬處理單元,重量更輕的硬體microthreads。 RMI公司,一蘋果的啟動,是首個MIPS處理器供應商提供一個 有機碳 基於8個核心,每個運行4個執行緒。該執行緒可以運行在精細模式下,糧食在不同的執行緒可以執行每個周期。執行緒也可以分配的優先次序。
該 IBM公司 基於POWER52004年5月宣布,來作為雙核心擴張型心肌病,或四核心或10月核心MCM的每個包括兩個執行緒的SMT引擎的核心。 IBM的執行比以往複雜的,因為它可以分配一個不同的優先權到各個執行緒,更細粒度和SMT的引擎可以打開和關閉動態,以便更好地執行這些工作負載凡的SMT處理器將不提高性能。這是IBM的普遍可用的硬體多執行緒的第二個執行。
雖然很多人說, 太陽微系統公司' UltraSPARC T1處理器 (稱為 “尼亞加拉” 直到2005年11月14日發布)和即將推出的處理器 代號 “岩“ (將於2009年〜 [一])是實現的 SPARC的 重點幾乎完全利用SMT和 博聞 技術,尼亞加拉是不實際使用貼片。太陽是指結合的方法,因為這些“全面經濟狀況評審”,以及整體概念,“吞吐量計算”。尼亞加拉有8個核心,但每個核心只有一個管道,因此,實際上它使用細粒度多執行緒。不像表面貼裝技術,其中從多個執行緒共享的問題視窗每個周期指令,處理器採用了單循環的政策問題,從下一個活動執行緒每個周期指令。這使得它更類似於 桶處理器。 太陽微系統公司' Rock處理器 是不同的,它有更多複雜的核心,有一個以上的管道。
該 英特爾 原子在2008年推出,是第一個英特爾產品功能不支持的指令重新排序,投機執行的SMT(如超執行緒行銷),或註冊更名。英特爾重新超與執行緒 黑爾姆微後,其對缺席 Core微架構

同步多執行緒不能提高性能,如果是共享資源的任何限制的性能瓶頸。事實上,有些應用程式運行速度較慢時,同時啟用多執行緒。批評者認為這是一個相當大的負擔,把軟體開發人員,他們要測試是否同步多執行緒是好還是壞了他們在不同的情況及套用插入額外的邏輯來關閉它,如果它降低性能。目前的作業系統缺乏方便 空氣污染指數 為此呼籲,並防止與從不同的優先採取互相資源進程 [2]。
還有一個同步多執行緒安全問題。它已被證明,它有可能為一個應用程式竊取一 密鑰 從另一個應用程式在同一個處理器上運行的方法是監測其使用快取 。

相關詞條

熱門詞條

聯絡我們