PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 電腦硬體討論群組 > 系統組件
帳戶
密碼
 

  回應
 
主題工具
冬之炎陽
Advance Member
 

加入日期: Apr 2005
文章: 431
處理器的執行續概念和作業系統執行緒很類似
但處理器的執行緒主要是為了增加指令執行效率
但軟體的執行緒大部分不是為了增加效率, 反而是多工
在軟體層次, 執行緒增加效率的, 最常見的是影片轉檔和遊戲
為了多工, 例如天天用的瀏覽器, 例如Chrome, 隨便就是開50個Thread以上
專業在用的, 例如網頁伺服器會利用 Thread Pool 預先開好很多Thread以處理網頁請求

執行緒到底是?
就想成有好幾個人可以同時做事情即可!
就類似天津飯的四身拳, 開再多分身, 單一分身的力量還是無法超越本身
     
      

此文章於 2018-11-20 10:54 PM 被 冬之炎陽 編輯.
舊 2018-11-20, 10:51 PM #51
回應時引用此文章
冬之炎陽離線中  
pc0805
Basic Member
 

加入日期: Nov 2012
文章: 18
Wink

好久沒讀計組計結還有OS
我也記得NEAL大16樓的才是正解
Hyper-Threading 是硬體的架構
thread針對process做分配
OS在執行process的過程中要等待的時候可以藉由切換thread
來達到看似多工的目的
所以就一般單核心來講
同時間只能執行一定數量的thread
就我了解Hyper-Threading是在硬體上做改進
execution resource同樣還是只有一份
但在其餘的架構上複製一份
上面是查到intel自己的Hyper-Threading paper上開頭這樣定義(http://www.cs.virginia.edu/~mc2zk/c...6iss1_art01.pdf 後面我懶得看, 錯了再說)
當一個thread只用到某些execution resource時
還有其他的execution resource沒被用到
這時候因為有另一份架構存在
所以可以在同一時間內
可能可以額外執行更多thread
來讓閒置的execution resource更能充分的被使用
所以可以知道在大量同性質運算時
Hyper-Threading不見得有用

當然硬體出來後OS才要做thread 分配上的改變
才能適應這套硬體
所以這兩個東西是相輔相成的
我覺得除了名字上雷同外
根本是不同的東西

以上以我破爛的計組計結還有OS知識拼湊出來的
錯了多多包涵
 

此文章於 2018-11-30 03:01 PM 被 pc0805 編輯.
舊 2018-11-30, 02:46 PM #52
回應時引用此文章
pc0805離線中  
anderson1127
Golden Member
 

加入日期: Jan 2002
文章: 3,989
.........................

到目前為止,瞭解的程度都還僅止於

1. 以程式設計觀點看thread 運作
2. 以OS的觀點看thread 運作

就是還沒有人可以指出 , 到底純軟體的thread 與CPU的1C2T 的T 到底有何關連 !!
為什麼M$/Linux 等OS要去把這個T去模擬出一個Logical CPU 出來呢??

到底為什麼呢 ??????
__________________
您想買新硬碟嗎? 購買前請務必參考這篇文章,是我的實際經驗

還想讓統一賺你的錢嗎?統一集團成員(能見度高的):
星巴克、家樂福、7-11、無印良品、黑貓宅急便、聖娜多堡、阪急百貨、
康是美、博客來、夢時代、Mister Donut 、Cold Stone 、龜甲萬、
維力33%股權、光泉31%股權、Smile速邁樂、紅心辣椒、台北轉運站(統一企業BOT)

統一LP33膠囊有環保署早已列管的一級管制品: DNOP塑化劑
舊 2018-12-01, 08:48 AM #53
回應時引用此文章
anderson1127現在在線上  
NEAL
Golden Member
 
NEAL的大頭照
 

加入日期: Jun 2002
您的住址: Taiwan
文章: 2,668
引用:
作者anderson1127
.........................

到目前為止,瞭解的程度都還僅止於

1. 以程式設計觀點看thread 運作
2. 以OS的觀點看thread 運作

就是還沒有人可以指出 , 到底純軟體的thread 與CPU的1C2T 的T 到底有何關連 !!
為什麼M$/Linux 等OS要去把這個T去模擬出一個Logical CPU 出來呢??

到底為什麼呢 ??????


我休假中,有空再畫個圖上來解釋。
__________________
工作主力機:
AMD Ryzen9 5900X 2203 B2
MSI B550M Mortar WiFi
Kingston Fury Beast RGB D4-3600 32GBx4 (Hynix AJR)
Samsung 970 EVO Plus 1TB
EVGA 850GM SFX
Thermalright SilverArrow IB-E Extreme
Mech. Master C28
BenQ PD3200Q
ASUS ROG Gladius II Origin
GANSS HS75T x Glorious Panda

護眼LCD的選擇
LG 32LM6200 32吋液晶電視電源模組維修經驗分享
舊 2018-12-01, 11:05 AM #54
回應時引用此文章
NEAL離線中  
Xforce
Senior Member
 
Xforce的大頭照
 

加入日期: Feb 2002
您的住址: 宜蘭
文章: 1,341
正解就是 NEAL 之前回答,
程式為循序執行(thread) 對應到 CPU 端是以 register set 來實作(Data register, Program Counter ....). HyperThreading 是在一個實體 CPU 有兩套以上 register set 來對應不同的循序執行.

目前 CPU 設計分為幾個 stage, 在 decode, dispatch 後 依照不同指令性質 會被分配到不同的執行單元(integer, floating, memory access), 譬如說 一個整數指令在進行時 浮點運算 或記憶體純取的單元可能是空閒的, SMT的目的 就是盡量讓所有的執行單元能同時運作.

至於軟體端的Thread 實作, 基本上也是一個軟體 Thread 保持一組 register set, 在 context switch 的時候 會置換 CPU register set 內容
__________________
AMD Athlon 64 3000+
Asus A8N-E nfoce 4 empowered
Simems DDR 400 512MB *2
Benq 1640
---------------------------------

此文章於 2018-12-01 05:50 PM 被 Xforce 編輯.
舊 2018-12-01, 05:47 PM #55
回應時引用此文章
Xforce離線中  
anderson1127
Golden Member
 

加入日期: Jan 2002
文章: 3,989
引用:
作者Xforce
正解就是 NEAL 之前回答,
程式為循序執行(thread) 對應到 CPU 端是以 register set 來實作(Data register, Program Counter ....). HyperThreading 是在一個實體 CPU 有兩套以上 register set 來對應不同的循序執行.
[恕刪]


我一直覺得不對勁.....

如果這說法成立,那也無法解釋 Intel所說的1C2T的2T 為何是2T !!
照這說法如果成立的話,那應該是 1C NT 才對 (N = 為任意整數 , 1 2 3 4 5 6 7 ..... )

事實上呢? N到目前為止就只有2 , 沒別的數字!!
__________________
您想買新硬碟嗎? 購買前請務必參考這篇文章,是我的實際經驗

還想讓統一賺你的錢嗎?統一集團成員(能見度高的):
星巴克、家樂福、7-11、無印良品、黑貓宅急便、聖娜多堡、阪急百貨、
康是美、博客來、夢時代、Mister Donut 、Cold Stone 、龜甲萬、
維力33%股權、光泉31%股權、Smile速邁樂、紅心辣椒、台北轉運站(統一企業BOT)

統一LP33膠囊有環保署早已列管的一級管制品: DNOP塑化劑
舊 2018-12-08, 11:05 AM #56
回應時引用此文章
anderson1127現在在線上  
bureia
Golden Member
 

加入日期: Dec 2001
文章: 2,875
引用:
作者anderson1127
我一直覺得不對勁.....

如果這說法成立,那也無法解釋 Intel所說的1C2T的2T 為何是2T !!
照這說法如果成立的話,那應該是 1C NT 才對 (N = 為任意整數 , 1 2 3 4 5 6 7 ..... )

事實上呢? N到目前為止就只有2 , 沒別的數字!!

Xeon phi有一核4執行緒的
舊 2018-12-08, 01:02 PM #57
回應時引用此文章
bureia離線中  
Xforce
Senior Member
 
Xforce的大頭照
 

加入日期: Feb 2002
您的住址: 宜蘭
文章: 1,341
引用:
作者anderson1127
我一直覺得不對勁.....

如果這說法成立,那也無法解釋 Intel所說的1C2T的2T 為何是2T !!
照這說法如果成立的話,那應該是 1C NT 才對 (N = 為任意整數 , 1 2 3 4 5 6 7 ..... )

事實上呢? N到目前為止就只有2 , 沒別的數字!!

IBM POWER8 最多1C8T.
__________________
AMD Athlon 64 3000+
Asus A8N-E nfoce 4 empowered
Simems DDR 400 512MB *2
Benq 1640
---------------------------------
舊 2018-12-08, 09:50 PM #58
回應時引用此文章
Xforce離線中  
anderson1127
Golden Member
 

加入日期: Jan 2002
文章: 3,989
1C4T or 1C8T 隨便啦...

然後呢?? 來一個1C 10000T 如何 ??

沒說明1C8T的T 與 OS裡的thread 的T 到底是什麼關係 !!

是相同的東西嗎?? 那為何Intel說明T的時候,總是組合語言的方式來說明 T
而不是用OS的角度的thread 來當做範例 ??

如果樓上各位說的T是Programming or OS的thread , 那照理說 thread數量根本不受限制
愛有多少個thread 就能夠有多少個thread , 可是到目前為止 ,沒有一家半導體廠商敢宣稱
他們家的T愛有多少個就有多少個 !! 8T就算多了嗎??

愛找語病我沒意見 , 至少也說個東西出來討論嘛!!

到目前為止,沒有答案!! 我也傾向 Intel 所說的Thread , 並不是各位所說的thread !!
兩者的相異之處差太大了!!
__________________
您想買新硬碟嗎? 購買前請務必參考這篇文章,是我的實際經驗

還想讓統一賺你的錢嗎?統一集團成員(能見度高的):
星巴克、家樂福、7-11、無印良品、黑貓宅急便、聖娜多堡、阪急百貨、
康是美、博客來、夢時代、Mister Donut 、Cold Stone 、龜甲萬、
維力33%股權、光泉31%股權、Smile速邁樂、紅心辣椒、台北轉運站(統一企業BOT)

統一LP33膠囊有環保署早已列管的一級管制品: DNOP塑化劑

此文章於 2018-12-08 11:06 PM 被 anderson1127 編輯.
舊 2018-12-08, 11:01 PM #59
回應時引用此文章
anderson1127現在在線上  
bureia
Golden Member
 

加入日期: Dec 2001
文章: 2,875
引用:
作者anderson1127
1C4T or 1C8T 隨便啦...

然後呢?? 來一個1C 10000T 如何 ??

沒說明1C8T的T 與 OS裡的thread 的T 到底是什麼關係 !!

是相同的東西嗎?? 那為何Intel說明T的時候,總是組合語言的方式來說明 T
而不是用OS的角度的thread 來當做範例 ??

如果樓上各位說的T是Programming or OS的thread , 那照理說 thread數量根本不受限制
愛有多少個thread 就能夠有多少個thread , 可是到目前為止 ,沒有一家半導體廠商敢宣稱
他們家的T愛有多少個就有多少個 !! 8T就算多了嗎??

愛找語病我沒意見 , 至少也說個東西出來討論嘛!!

到目前為止,沒有答案!! 我也傾向 Intel 所說的Thread , 並不是各位所說的thread !!
兩者的相異之處差太大了!!

你先去了解一下單核心的CPU怎麼處理多thread的程式再說吧,
然後多核心CPU怎麼處理多thread的程式,別管1C到底幾T
舊 2018-12-09, 12:06 AM #60
回應時引用此文章
bureia離線中  


    回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是10:21 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2024。