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