人家多 雙核心是為了多工可是我常常觀察我的CPU發現我如果只開一個程式 EX:網頁兩顆核心都會一起跑耶不是說 一個核心只會處理一件事情嗎? 或是 兩顆核心不會同時做同一件事情?這個雙核心以上的CPU 定義 搞混我了....懇請大大講解 3QQQ
建議你先看過 這串 討論,樓主剛好這幾也問了多核心的問題~看完之後大致上可以了解多核心的差別與運作方式~至於為什麼會有一個程式同時使用兩顆核心運算,這就是討論串中提到的多執行緒~實際上,即使程式是單執行緒,系統也是有可能會用多核心同時去運作,把工作量分配到一個以上的核心~但是在這種模式下時,一個以上的核心不會滿載,以雙核心來說,兩個核心的使用率加起來最多大概是一顆核心滿載~也就是說,當程式負載 100% 時,兩顆核心可能分別負載 49% 跟 51% ,其他沒用到的部分還可以讓其他程式使用~換個角度來說,如果程式是多執行緒,那當程式負載 100% 時,兩顆核心的使用率就可能都是 100% ~多工是作業系統的能力,多執行緒還需要加上軟體設計支援~另外,兩個核心一起跑不代表都用在上網,電腦中還是有很多背景程式在執行的,上網不光是上網的程式運作就好,還要其他相關程式一起運作~
真正的多核心應該不是只指電腦,當核心越多幫你做越多事,我們本身同時變成就要處理更多事情,例如放一邊跑3D渲染,另一邊用PS修圖,以前也不用這麼忙,感覺現在電腦速度越快效率越好,要做的事情就更多,但相對薪水一點也沒有多,所以是很糟糕的結果,但這只是比喻啦,其實我家裡用巴頓2500,公司用Q系列,用在工作上感覺速度實在沒有差多少,但我相信遊戲應該才是現在電腦進化的指標。我用巴頓2500接案子至今已幫我賺了百萬以上,但有很多人可是為了一台玩遊戲的電腦,一直汰換,投資了好幾十萬。核心的價值就在此了,不能善用電腦的,給你百棵CPU叢集的超級電腦也沒用。下次我升級的動力仍然是「買電腦來賺更多錢」,那些愛追求運算效能、電腦硬體高手能有幾個是這樣想的?
Charles. wrote:你只開一個程式,兩個...(恕刪) 對電腦而言只開一個程式是不可能的,OS本身就好多個process使用者程式也是,另外OS工作會有排程與分配,所以不太可能會集中在同一個CPU甚至有的程式可以指定CPU數量和工作分配EX:SQL server
你可以想像瀏覽器是一個生產線, 要生產產品-打印-裝箱-運送, 最後才能把東西送到客人眼前. 而CPU就是工人, 多核就是有多個工人同時在這生產線上做事. 有些事是必須等前一步驟做完, 有些則不必. 比如說打印的工人不須要等產品生產完, 可以先打印罐子, 等生產完後再把東西裝到罐子裡. 開瀏覽器也是一樣. 一個瀏覽器會有許多的執行緒(thread)在做事, 每個thread就是一道工, 等著工人去執行. 所以只要作業系統支源多核, 就可以安排這些工人(CPU)同時進行不同的事(thread). 這其中牽涉到排程(scheduling)與資源管理等複雜問題. 所以多核要能發揮, 一定要有相對的做業系統相陪.