一.多核心:
單芯片多處理器( Chip Multiprocessors,簡稱CMP)是由美國斯坦福大學(xué)提出的,其思想是將大規(guī)模并行處理器中的SMP(對稱多處理器)集成到同一芯片內(nèi),各個(gè)處理器并行執(zhí)行不同的進(jìn)程。這種依靠多個(gè)CPU同時(shí)并行地運(yùn)行程序是實(shí)現(xiàn)超高速計(jì)算的一個(gè)重要方向,稱為并行處理。
多核心是指物理上的多個(gè)獨(dú)立CPU核心被集成在單個(gè)處理器上。
每個(gè)核心都可以獨(dú)立地執(zhí)行指令和處理數(shù)據(jù)。這意味著處理器可以同時(shí)處理多個(gè)任務(wù),從而提高整體性能。
例如,一個(gè)8核處理器意味著它內(nèi)部有8個(gè)獨(dú)立的計(jì)算核心,可以同時(shí)執(zhí)行8個(gè)線程或任務(wù)。若存在CPU多線程技術(shù),則可以同時(shí)執(zhí)行更多的線程或任務(wù)。
多核心CPU特別適合于多任務(wù)處理和需要大量并行計(jì)算的應(yīng)用,如視頻編輯、3D渲染、科學(xué)計(jì)算等。
二.多線程:
指的是一個(gè)處理器核心能夠在同一時(shí)間執(zhí)行兩個(gè)或更多的線程。
在多核心處理器中,每個(gè)核心都可以獨(dú)立地執(zhí)行線程。
多線程分為兩種類型:
1.Simultaneous MultiThreading:簡稱SMT。SMT可通過復(fù)制處理器上的結(jié)構(gòu)狀態(tài),讓同一個(gè)處理器上的多個(gè)線程同步執(zhí)行并共享處理器的執(zhí)行資源,最大限度地實(shí)現(xiàn)寬發(fā)射、亂序的超標(biāo)量處理(通過并行執(zhí)行多條指令以及靈活地調(diào)度指令的執(zhí)行順序),提高處理器運(yùn)算部件的利用率,緩和由于數(shù)據(jù)相關(guān)或 Cache未命中帶來的訪問內(nèi)存延時(shí)。
2.超線程技術(shù)(Hyper-Threading, HT):Intel引入超線程技術(shù)后,允許一個(gè)物理核心同時(shí)處理2個(gè)邏輯線程,使核心數(shù)與線程數(shù)形成1:2的關(guān)系,提高了系統(tǒng)的整體處理性能。
三.CPU核心數(shù)和線程數(shù)的關(guān)系:
目前主流CPU有雙核、三核、四核、六核、八核、十六核等,六核在2010年發(fā)布。
每個(gè)核心可以處理一定數(shù)量的線程數(shù)。
增加核心數(shù)目就是為了增加線程數(shù),因?yàn)椴僮飨到y(tǒng)是通過線程來執(zhí)行任務(wù)的。
一個(gè)CPU的性能不僅取決于核心數(shù)量,還取決于每個(gè)核心能夠處理的線程數(shù)量以及這些線程如何被調(diào)度和執(zhí)行。
微風(fēng)不燥,陽光正好,你就像風(fēng)一樣經(jīng)過這里,愿你停留的片刻溫暖舒心。
我是程序員小迷(致力于C、C++、Java、Kotlin、Android、Shell、JavaScript、TypeScript、Python等編程技術(shù)的技巧經(jīng)驗(yàn)分享),若作品對您有幫助,請關(guān)注、分享、點(diǎn)贊、收藏、在看、喜歡,您的支持是我們?yōu)槟峁椭淖畲髣?dòng)力。
歡迎關(guān)注。助您在編程路上越走越好!