瀏覽單個文章
Impression
Regular Member
 

加入日期: Mar 2002
您的住址: 臺北
文章: 57
Talking

引用:
作者latw
這樣說吧.
雙核心到底有什麼好啊?
除了跑常跑支援SMP軟體,需要系統穩定度以外(這點實在 ).
除非效能相差不多,有多核又擁有差不多的價格,不然對一般使用者來說,我認為"效益"不好(價格/效能提升)
畢竟dual core所佔晶圓的體積差不多是單core的兩倍,成本就有差了..
多一個core所帶來的效益對一般狀況來說,提升的太少太少了.
如果因為時代驅使,大家都不做signal core的時候那也只好乖乖接受吧.
(夠淺顯易懂了吧 )


基本上多核的好處要有可配合的compiler才能發揮出較顯著的功用..
在單核時代的CPU設計上有的super Scalar, out-of-order execution, instruction level parallism都是想辦法把CPU的pipeline塞滿,讓它能夠全速跑。而compiler設計上也是盡量配合這些CPU有的功能。現在有雙核心,compiler的發展就要考慮到thread level parallism,簡單說就是一個單執行緒的程式,compiler可以分析程式結構而把不互相依賴的區塊分出來,每個核心可以拿任何一個區塊來跑,當然資料相關性及其它的overhead還是有,但是藉著compiler的改良,可以讓雙核心達到接近兩倍效能。

舉個理想的例子來說... 程式A經由最佳化的compiler編譯過可分為兩個不互相依賴的區塊A1,A2,雙核心可以同時執行這兩個區塊,再假設A1,A2花同樣時間完成,程式A在雙核心上的效能可達到在單核心上的兩倍。

當然這是理想狀況下,但是這說明了多核心在好的compiler幫助下可以達到顯著的效能提升,即使你跑的是單執行緒的程式。隨著compiler的發展,多核心的好處會慢慢顯現出來的。
舊 2006-06-01, 12:51 PM #76
回應時引用此文章
Impression離線中