syntech wrote:可以有餘力把其他工作交給其他cpu執行,整個系統比較不會有忙不過來的情況. 正解 某位小朋友以為只支援單核就是只有一個核心在跑殊不得整體運作都在OS 以為開啟單核心的軟體 就只有單核心在運作
adamenzo wrote:正解 某位小朋友以為只支援單核就是只有一個核心在跑殊不得整體運作都在OS 以為開啟單核心的軟體 就只有單核心在運作XD 我以為大師懂很多原來連別人的問題都看不懂大師可以教我CS 1.6如何透過OS支援雙核嗎
男叫精大 wrote:大師可以教我CS 1.6如何透過OS支援雙核嗎 請你看清楚我在講啥好嗎?單核軟體在OS上跑 絕不會只有一線程在運作!這樣還不懂 我也沒辦法了PS還有請看清楚樓主在問啥麼!!別腦袋一直轉不過來
軟體有沒有支援多核心的差別,是在於他能不能"同時"灑很多執行緒給CPU跑支援單一核心的程式,在跑的時候當然會有很多執行緒需要執行但是必須"一個等一個" 下一個的開始要等上一個算完他當然可以用到多核,但是一次只用到多核的其中一核這樣講大家有了解一點嗎?
范小胖 wrote:軟體有沒有支援多核心...(恕刪) 只單純支援單一核心的程式為何還需要包含多個執行緒@@直接一個執行緒做到底就好了吧?創造執行緒這個動作本身就很花時間了= =由作業系統在執行緒之間切換也是耗費時間甚多的
irisshinra wrote:只單純支援單一核心的程式為何還需要包含多個執行緒 原則上不會說這個程式只支援單一核心,而會說這是一個"單執行緒程式 (single thread process)"所以也就不存在只支援單一核心的程式是多個執行緒的情況.隔壁歪樓那篇不算.
ank wrote:程式執行應該說是執行緒而不該說是單核多核程式如果執行時只會RUN單執行緒就只會用到一個執行緒單執行緒就是RUN單執行緒多核多執行緒系統只是會把它分配到某個執行緒去RUN而不會變成多執行緒RUN 任何一個程式指令都是在單核心內的單一執行緒中完成“支援”多核是指兩個或多個程式指令之間不用循序等待,只要Cpu有空閒就可以獲得所需資料、執行運算並輸出結果有鑒於很多程式指令本身就是循環運算,所以Intel在實作雙核心上就設計進去。不論程式本身有沒有對多核心最佳化,都會自動把特定指令集拆解分配給雙核心執行。如影像壓縮、多媒體運算,就常會用到這些特定指令集,也就很容易使用到雙核心。但如果是資料讀寫、統計運算等,一定要有前一個運算結果才能執行下一個程式碼的,就會發現不論有多少核心,單一程式執行時就只會使用到一個Cpu最簡單的區分方式就是看Cpu負載,一般執行程式會看到兩個核心都有負載,但不會一直維持在100%使用量(因為不是所有程式碼都能雙核化)如果是完全無法雙核化的程式就會把某個核心使用量維持在100%,另一個核心則維持在低使用率不過Intel對多核心還有保護設計,隔幾萬個執行緒後會讓核心內的程式交換,避免單一核心過度使用燒壞了。就會看到多核心輪流滿載...CS算是多媒體遊戲...說絕對沒有用到雙核運算這件事,個人是不太相信....只是我也沒在雙核心電腦上裝過CS就是了