1、 CPU的核心數是指物理上,也就是硬體上存在有幾個核心。舉個例子,雙核就是包括2個相對獨立的 CPU核心單元組,四核就包含4個相對獨立的 CPU核心單元組,等等,依次類推。
2、執行緒數是一種邏輯的概念,也就是模擬出的CPU核心數。
3、例如,可以透過一個CPU核心數模擬出2執行緒的CPU,也就是說,這個單核心的CPU被模擬成了一個類似雙核心CPU的功能。我們從任務管理器的效能標籤頁中看到的是兩個CPU。
4、CPU的執行緒數概念僅僅只針對Intel的CPU才有用,因為它是透過Intel超執行緒技術來實現的,最早應用在Pentium4上。如果沒有超執行緒技術,一個CPU核心對應一個執行緒。所以,對於AMD的CPU來說,只有核心數的概念,沒有執行緒數的概念。
5、CPU之所以要增加執行緒數,是源於多工處理的需要。執行緒數越多,越有利於同時執行多個程式,因為執行緒數等同於在某個瞬間CPU能同時並行處理的任務數。
6、要保證這些執行緒,全都不呼叫阻塞的API。如果有阻塞,有等待,比如要做輸出的話,多開幾個執行緒,可能更合適。
1、 CPU的核心數是指物理上,也就是硬體上存在有幾個核心。舉個例子,雙核就是包括2個相對獨立的 CPU核心單元組,四核就包含4個相對獨立的 CPU核心單元組,等等,依次類推。
2、執行緒數是一種邏輯的概念,也就是模擬出的CPU核心數。
3、例如,可以透過一個CPU核心數模擬出2執行緒的CPU,也就是說,這個單核心的CPU被模擬成了一個類似雙核心CPU的功能。我們從任務管理器的效能標籤頁中看到的是兩個CPU。
4、CPU的執行緒數概念僅僅只針對Intel的CPU才有用,因為它是透過Intel超執行緒技術來實現的,最早應用在Pentium4上。如果沒有超執行緒技術,一個CPU核心對應一個執行緒。所以,對於AMD的CPU來說,只有核心數的概念,沒有執行緒數的概念。
5、CPU之所以要增加執行緒數,是源於多工處理的需要。執行緒數越多,越有利於同時執行多個程式,因為執行緒數等同於在某個瞬間CPU能同時並行處理的任務數。
6、要保證這些執行緒,全都不呼叫阻塞的API。如果有阻塞,有等待,比如要做輸出的話,多開幾個執行緒,可能更合適。