-
1 # 科技100分
-
2 # 紐扣布偶貓
先說說執行緒吧,早起cpu都是單核單執行緒的,到後來p4的時候發現cpu效能過剩了,閒置的效能用不到怎麼辦呢?就有了超執行緒技術了,就是把cpu剩餘的效能模擬出來另一個處理器這樣利用兩個人幹活怎麼會比一個人快,這就是單核雙執行緒了,這樣就理解核心跟執行緒了吧,就像鳴人的影分身,實體只有一個但是還多一個分身,雖然分身不厲害但是多少會有幫助的!
-
3 # 超能網
你說的核心與執行緒是常說的某CPU有4核心8執行緒中的意義吧,這個就要分開講講:
CPU核心
隨著工藝的侷限和頻率的難以提升,CPU的效能不能再是無限制的往高頻率的方向發展了,開始轉向多核心的方向,簡單地說,就是在一個物理核心裡並列幾個功能相同的核心,它們可以並行執行不同的任務程序,打個比方說,以前是一個人上夜班,現在是四個人上夜班,這就是所謂的CPU核心。
各個CPU核心都具有固定的邏輯結構,如一級快取、二級快取、執行單元、指令級單元和匯流排介面等邏輯單元等,CPU核心的進步對普通消費者而言,就是能以較低的價格買到效能較強的CPU。
但是,在多核CPU中,並不是所有的核心都是在全速滿負載工作,可能有時核心會有所閒置,這樣就有了Intel的超執行緒和AMD的多執行緒技術,把這些閒置資源利用起來。
執行緒
嚴格來說,執行緒(Thread)是作業系統能夠進行運算調動的最小單位,作為程序中的實際運作單位,一個程序中可以併發多個執行緒,每條執行緒並行執行不同的任務。
多執行緒指的是在一個CPU核心上執行多個執行緒,或者多個任務,雖然在同一核心但是它們之間完全分離。
多執行緒可以用Temporal MultiThreading時間多執行緒和Simulate MultiThreading同步多執行緒來實現,具體細節這裡就不講了。
Windows 10下CPU的負載相當平均
對於單一核心而言,它能每秒鐘處理成千上萬條指令,但是在某一時刻只能夠對一條指令進行處理,超/多執行緒技術能夠在軟體層變成將它變成兩個邏輯處理器 ,同步並行處理更多指令和資料,它就是一種可以將CPU內部暫時閒置處理資源充分“調動”起來的技術。
我們對比測試過Core i7-6700K和Core i5-7600K,他們主要區別就在於超執行緒的有無和L3快取的大小了,至於Skylake與Kaby Lake架構是沒有效能上的差別的。
可以看到有超執行緒的Core i7-6700K其多執行緒效能比Core i5-7600K好19%左右。
所以,可以這麼說,一個核心最少對應一個執行緒,透過超執行緒技術,一個核心可以對應兩個執行緒。超執行緒技術是很好的提升核心利用率,將閒置處理資源充分調動起來,在作業系統中一顆物理CPU能當做多顆CPU來使用。當然要發揮出多核多執行緒的作用,還需要軟體和作業系統的支援最佳化。
-
4 # 藍色憂鬱129083392
都說這專業做啥?我簡單點說,你請了個很牛逼的廚子師傅,做菜又快又好。但打下手的只有一套班子,大廚又快又好,但打下手的不夠,所以大廚炒完菜還有閒工夫抽根菸,因為打下手配菜的沒跟上來,於是你整了兩套打下手的班子,這樣一個菜完了另一個班子配好的菜大廚接著炒,這樣效率是不就高了?你能看到打下手的就是執行緒,大廚就是核心。不是很確切的比方,但大概就這麼個事。
-
5 # 啊歐阿嘔
使用超執行緒技術的cpu,一個硬核心對應兩個執行緒。兩個非獨立的流水線,共用某些運算單元,如乘法器、除法器。因為兩個執行緒上同時使用同一個運算單元的機率極低。所以其它指標一樣的情況下,使用超執行緒技術的i7比未使用超執行緒的i5效能要高的多。當然原生的4核比2核4執行緒的要好
-
6 # 蒙面侍衛
要弄清這個問題,需先從程式執行的相關知識說起。
準備知識:程序和執行緒
一個正在執行中的程式例項稱為程序(你可以通俗地將程序理解為正在執行的程式)。一個程序可以包含一個或多個執行緒,執行緒是程式執行時的最小單位。這時候有人可能就要問了:為什麼程序還要細分為執行緒呢?這主要是因為有些程式需要併發執行。所謂併發,就是幾個任務同時執行。比如說,一個多執行緒的下載軟體,它為了提高下載速度,將正在下載的某個檔案拆分成 8 個部分,然後使用 8 個執行緒分別同時下載其中的一部分,等到所有部分都下載到本地電腦後,再將它們合併成一個檔案。這樣,由於是 8 個執行緒同時進行下載,總的下載效率就大大提高了。
好了,說完了預備知識,下面我們來轉入正題。
CPU的核心和執行緒
CPU的核心數
通常我們說的某個CPU有幾核,指的是它的物理核心數量(也就是它實打實的硬體核心)。用個比喻來說,一個四核CPU,就好比某個單位有四個房間。這四個房間每個都有一張床,一臺電腦,一個廁所……等等,也就是說,它們每一間都是一個獨立的功能個體,都是用實實在在的磚頭砌出來的。
CPU的執行緒數
通常我們所說的某個CPU有幾個執行緒,是指CPU廠商利用一定技術,能夠同時執行的併發執行緒數量。一般說來,每個核心比較常見的併發執行緒數量是兩個,但也不是完全定死的,有些CPU的單個核心甚至可以支援八個併發執行緒。
那麼,這究竟是什麼意思呢?下面,我來透過一個比喻來解釋。
還是前面的那個單位房間的例子。原來,一個房間只有一張床,只能住一個人,效率很低。現在,由於單位新進了人員,老總面對住房問題不禁一籌莫展。就在這當兒,聰明的宿舍管理劉大媽看到原來的每間房住一個人其實還留有不少空間,資源沒有完全利用起來,於是靈機一動,將原來的每個房間從中間扯一塊布,一邊放一張床,一邊放一臺電視,但空調啊,衛生間什麼的還是兩人共用一個。經過這樣一番搗鼓,單位原來的四間房就可以同時住進八個人了。後來,這事傳到了老總那裡,老總到現場一視察,心想:咦,怎麼我之前沒想到,這法子真TM好啊!如此一來,單位只需增加四塊隔布的投資,卻可使入住效率增加一倍。於是,在年終總結大會上,老總將劉大媽立為標兵,並且特意對此取了一個悅耳動聽的名字:劉大媽四房八床高效能綜合宿舍。
回覆列表
電腦cpu的核心一般是指物力核心,物理本身存在的晶片,一個程式會佔用多個執行緒怎麼理解?
就是比如一個遊戲程式的執行,電腦在開啟這個程式時候,軟體會將資訊釋出給多個cpu進行運算。這個軟體如果是4核心最佳化的,會同時釋出給4個處理器共同處理,(那這個軟體就佔用了cpu的4個執行緒通道)這樣速度和效率就提高了。
就像是高速公路出口,車流很大,原來只有2個收費室,現在增加了4個。同一時間能處理的並流就大了,效率自然提高了!
再說說多執行緒,比如intel的雙核處理器但是擁有4執行緒,俗稱雙核4執行緒。就是讓一次只能處理一車的視窗,增加到兩個視窗(就像是一個收費通道,兩個收費室)這樣一個收費視窗可以同時處理兩張車,效率自然上去啦!
物理四核心vs雙核4執行緒,但是物理四核更強(這裡必須相同工藝、製程、同代之間對比)主要是價格更貴了