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