同步多線程是什么
同步多線程是什么
多線程(英語:multithreading),是指從軟件或者硬件上實現多個線程并發(fā)執(zhí)行的技術。下面是學習啦小編帶來的關于同步多線程是什么的內容,歡迎閱讀!
同步多線程是什么:
同步多線程(SMT)是一種在一個CPU 的時鐘周期內能夠執(zhí)行來自多個線程的指令的硬件多線程技術。本質上,同步多線程是一種將線程級并行處理(多CPU)轉化為指令級并行處理(同一CPU)的方法。 同步多線程是單個物理處理器從多個硬件線程上下文同時分派指令的能力。同步多線程用于在商用環(huán)境中及為周期/指令(CPI)計數較高的工作負載創(chuàng)造性能優(yōu)勢。 處理器采用超標量結構,最適于以并行方式讀取及運行指令。同步多線程使您可在同一處理器上同時調度兩個應用程序,從而利用處理器的超標量結構性質。
概述
任何單個應用程序都不能完全使該處理器達到滿負荷。當一個線程遇到較長等待時間事件時,同步多線程還允許另一線程中的指令使用所有執(zhí)行單元。例如,當一個線程發(fā)生高速緩存不命中,另一個線程可以繼續(xù)執(zhí)行。同步多線程是 POWER5™ 和 POWER6™ 處理器的功能,可與共享處理器配合使用。
SMT 對于商業(yè)事務處理負載的性能優(yōu)化可達30%。在更加注重系統的整體吞吐量而非單獨線程的吞吐量時,SMT 是一個很好地選擇。
但是并非所有的應用都能通過SMT 取得性能優(yōu)化。那些性能受到執(zhí)行單元限制的應用,或者那些耗盡所有處理器的內存帶寬的應用,其性能都不會通過在同一個處理器上執(zhí)行兩個線程而得到提高。
相關閱讀推薦:
多線程(英語:multithreading),是指從軟件或者硬件上實現多個線程并發(fā)執(zhí)行的技術。具有多線程能力的計算機因有硬件支持而能夠在同一時間執(zhí)行多于一個線程,進而提升整體處理性能。具有這種能力的系統包括對稱多處理機、多核心處理器以及芯片級多處理(Chip-level multithreading)或同時多線程(Simultaneous multithreading)處理器。
在一個程序中,這些獨立運行的程序片段叫作“線程”(Thread),利用它編程的概念就叫作“多線程處理(Multithreading)”。具有多線程能力的計算機因有硬件支持而能夠在同一時間執(zhí)行多于一個線程(臺灣譯作“執(zhí)行緒”),進而提升整體處理性能。
看了同步多線程是什么文章內容的人還看: