在多核CPU下,同一程序下的多個執行緒可以並行執行嗎

時間 2021-07-21 02:17:56

1樓:無影之子

一個程序的執行緒都是序列(使用者態多執行緒中),不同的程序可以並行(多核處理器中)。在使用者態多執行緒中同一個程序下的多個執行緒不可以並行執行,不管多少核處理器,它的執行緒只能交替順序執行。你可以把一個使用者程序看做是一個人,執行緒是他要處理的事,cpu核心看做是辦事處視窗,一個人再nb也不可能同一刻時間到兩個以上視窗辦理不同的事

2樓:匿名使用者

cpu在某一個時間點上確實只能執行一個執行緒,但是多執行緒不是由於多核或者雙核才叫多執行緒。

是由於,很多個執行緒在並行執行的時候,cpu根據一定的執行緒排程演算法,頻繁的進行執行緒切換,當正在執行的一個執行緒需要進行io操作或者需要訪問記憶體的時候,cpu完全可以放棄該執行緒,轉而排程執行緒就緒佇列上的其他執行緒,被放棄的執行緒則進入阻塞狀態,io操作或者訪問記憶體操作結束之後,該執行緒可以進入執行緒就緒佇列上。

人們通常意義上的多執行緒指的是,由於cpu根據一定的執行緒排程演算法來切換執行緒,所以在一個時間段上,可以看做很多執行緒在併發執行。

其實還是在某一個時間點上只有一個執行緒在執行罷了。

3樓:法拉克的

是的,多cpu正是為了多執行緒執行的。但是要注意執行緒間的同步。

糾正一個概念,是併發執行,不是並行執行。

4樓:匿名使用者

同一個程序下的所有執行緒都只能在cpu同一個核下執行,同一程序下的多個執行緒在同一個核下輪流使用處理器,因為處理速度快,看起來是並行,實際上同一程序下的多執行緒是序列。

多核可以同時執行多個程序。

5樓:匿名使用者

現在的軟體一般支援多執行緒的

6樓:匿名使用者

那要看這個軟體對多執行緒是否支援

在多核的系統中,同一個程序的2個執行緒可以分別同時執行在不同的核(cpu)上嗎?

7樓:匿名使用者

實際上有些作業系統在內部並不分程序和執行緒,排程方式是一致的。比如linux,共享記憶體的就是執行緒,不共享記憶體的就是程序,然後把包裝好的建立函式暴露給posix api。

8樓:匿名使用者

得看執行緒是什麼執行緒,除此之外還要看作業系統的排程策略。核心級執行緒理論上是可以同時在兩個核心上執行的,但是現實情況是執行緒數遠遠大於cpu數量或者核心數,所以就是多個執行緒搶佔系統的cpu了。

9樓:97樂於助人

使用top命令,具體用法是 top -h,加上這個選項,top的每一行就不是顯示一個程序,而是一個執行緒。

使用ps命令,具體用法是 ps -xh,這樣可以檢視所有存在的執行緒,也可以使用grep作進一步的過濾。

使用ps命令,具體用法是 ps -mq pid,這樣可以看到指定的程序產生的執行緒數目。

更進一步,其實一些系統監控工具,在本質上也是讀取的系統產生的檔案罷了。

多核心cpu在同一時刻真的能同時執行多個執行緒嗎?多核心cpu是真正意義上的多個物理cpu嗎?

同一程序的多個執行緒可以被多個cpu核心並行執行嗎

10樓:

可以。程序和執行緒在程序資源的管理上(比如記憶體空間)是不一樣的,但在排程上其實是一樣的。這個還要看程式語言的執行緒模型。某些語言(如python)的執行緒模型不支援並行執行在多個核上

在Win7下怎麼設定才能提高多核CPU的速度求解

提公升多核cpu的速度。提高多核cpu的速度。1 點選開始選單,在搜尋程式和檔案中輸入msconfig,回車即開啟系統配置對話方塊,請在此對話方塊中切換到引導標籤,然後單擊圖中紅圈處的高階選項按鈕,彈出引導高階選項對話方塊。2 在彈出的引導高階選項對話方塊中勾選處理器數,windows 7系統預設情...

G2019 CPU和i5 CPU是同一年生產的嗎

神麼都不知道 奔騰g2020 的主機板,也能安裝 i5 3470 的,這都是同一代的處理器,架構也相同,可以互相相容的。奔騰 g2020 雙核,標準主頻2.9g 快取3m 工藝22nm 功耗55w i5 3470 四核,標準主頻3.2g 快取6m 工藝22nm 功耗77w 另外,您這個提問,好像幾個...

同一物體在同一平面以不同速度勻速運動為什麼摩擦力相同

徐光豬 動摩擦力的計算是f umg u是地面決定的,又是同一物體,f肯定相同,又是都是勻速,所以拉力肯定與摩擦力相等 元嬰期老妖怪 因為都是滑動摩擦力起作用 滑動摩擦力的大小計算公式為f n 式中的 叫動摩擦因數,也叫滑動摩擦係數,它只跟材料 接觸面粗糙程度有關,注意跟接觸面積無關 n為正壓力。不等...