看到一則震驚的消息(關於cpu的)

真的很好笑~
一隻程式如果丟給單cpu做,只用不到5%的cpu 而且瞬間就做完了,那個腦殘程式設計師會去把他拆給多cpu聯合運算??
不是寫不出來,而是你拆工作,合併結果,也要用到loading的,如果沒有大到一定的程式,我咧吃飽太閒去拆他做啥?
如果拿來算什麼星星、算什麼DNA的,單CPU速度夠快的話是有可能比多CPU快,但是家用電腦,我有什麼東西好算的?所以多核的CPU每一核的速度都不快,這也是適合使用者環境來考量的,我只是要上網打作業看電影而已好不好,多核的CPU也有出伺服器級的呀,他單一核就比你的單核CPU要來的快了,你怎麼不拿那個來比看看會不會比較慢?現在的記者都是怎樣?交新聞當成在學校交作業?有交就好?還是網路剪剪貼貼丟出去就好?
如果以現在四核心來講的話,如果軟體支援的話,當然可以四個核心處理一個程式,增加效能,但是即使不支援,四個核心還是一次把四個程式分開處理,讓電腦比較不會lag,這因該就是多核心的好處
另外軟體跟不上硬體也是早就存在的,見怪不怪啦

chicken wrote:

多核心一定有它的價值,不然不會這麼多大廠都往這個方向走。耗電量就是第一個原因。看過一篇報告是這樣講的,同樣的 CPU 時脈降為原本的 75%,耗電量只剩 50%。因此在不增加耗電量的前題下,把兩個時脈為 75% 的 CORE 併在一起,就能創造出一樣號電量,但是運算能力為原來 150% 的 CPU ...


要知道一件事...
CPU會走向多核心是因為單核心已經出現一些瓶頸,所以INTEL沒辦法才搞起多核心來

感覺寫得也沒錯.
軟體不支援, 多核也沒用.
還是核心少, 時脈高比較有效.
最近剛好在研究multi-core的parallel computing
看完原出處的報導,我覺得...記者下的標題在殺人

對於多核心CPU的未來,沒必要震不震驚的
會發展多核心,是一個必然趨勢
Intel很早就發現,時脈一直拉高
CPU燙得跟火爐一樣,外加高額的功率消耗,根本不是一條路
可以參考 http://www.zdnet.com.tw/white_board/intel/video-1.htm

接著,多核心到底有沒有用?
我覺得應該分成兩個大項來討論,
一是作業系統怎麼支援多工,二是應用軟體的設計
以現在一般的主流作業系統WinXP跟Vista
程式執行的單位是執行續(thread)
作業系統會自動分配CPU核心與時間給每個執行續
因此多核心對現在的XP、Vista來說
核心越多,同時執行許多軟體比較不會有延遲的感覺
但是,同一個軟體的執行效率,並不能保證比單核心CPU來的快

原文的內容,應該是針對單一軟體使用多核心的部份
目前除了影音轉檔、編輯軟體外,一般應用真的很少會用到多核心
原文倒數第二段提到
"問題關鍵在於,多核心處理器的架構是過去只見於超級電腦的
平行運算(parallel computing),對程式設計師而言是一大
挑戰,他們必須將過去由單一處理器負責的程式化整為零,分
散到各個處理器進行運算。"
這是正確的,但絕對不是像接下來那個懷孕的比喻
parallel computing沒有那麼單純
有許多方法跟策略,讓一個問題拆解成能夠平行處理
當然,傷腦筋就是了

我並不認為更多的核心會拖慢軟體
反而是越多的核心,如果使用者用不到,才是一種浪費
假如你買個16核心的CPU,還是上網、文書
那還不如買個適當的CPU才是好的選擇

多核心的parallel computing將來很有發展空間
可以看看MPI, OpenMP或是Intel Threading Building Block
如果要挑戰,GPGPU的領域也可以看看(eg. CUDA)
其實還蠻有趣的
我是資工所的


我想說的是 , 要寫出平行處理的程式

是有很高的門檻

喔~這樣的話
新的CPU是出爽的嗎?
這個記者真的是沒知識耶..
莫非是..丁丁再世..
小弟不懂???
為什麼在多核上運算要設計師花腦力呢??
不是只要注意原則其它交給編譯器就好了!!??
而且多核心的極限逞要是卡在分支運算吧???
如果多核心不好!那麼為什麼sgi跟cary要做出超過1000顆cpu的主機呢???
不了解!?何況運算能力也不只取決於時脈及核心數!!!
一些雙核心cpu如果當初設計時有考量!其實也可以跑單核os的!
而且速度也不錯!
何況運算能力還得看管線深度跟分支機構!還有內部運算元的安排!!

就小弟所知(忘了是那型號!是雙核剛出來主打時的產品)
有些雙核心其實還是單核心只不過有加了些機置讓他可以變成雙核心!
(運算元對分加上有分支機置!)
也就是說嚴格來說!現在的cpu就算是雙核心內部同時運行的也不只兩個運算元!

只是呢???其實管他快不快!
如果只是一般user買個c/p高價格又不貴的就好了!
就像你開車要管他是4汽缸還是8汽缸???
當中的差別不就是馬力跟油耗嗎???
這篇文章所談的是將單一工作分攤給多個核心同時執行,所會造成的困境,而非單一工作由單一核心執行。

當單一工作由單一核心執行時,可單純由處理器技術提高效能,但是當單一工作由多處理器共同處理時則會牽涉到一些共有資料同步化的問題(可參考電腦作業系統或是Concurrent Programming方面的資料),因此多核心系統可能會造成許多潛在性的問題,程式執行可能因此變慢。
想像一下

把一個數學計算的程式-->分拆成10個部份丟給10個CPU去執行 , 但你不知到那個CPU會先把執行結果丟出來

因為同一個CPU裡面會有其他的Process在跑

所以算出來的結果 , 可能錯誤

如何不讓執行中的變數錯誤 , 又可以達到平行處理

不是件容易的事

這個有點抽像........要體會 , 請修"平行處理"的課程看看吧
文章分享
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 16)

今日熱門文章 網友點擊推薦!