看板 Programming 關於我們 聯絡資訊
※ 引述《ggg12345 (ggg)》之銘言: : ※ 引述《JohnLinq (林約翰)》之銘言: : : 剛剛聽說,The Intel Atom processors are in-order machines. : : 它回頭採用順序執行的架構,沒有了亂序執行,所以.......... : : 那我就會很自然地想說,「可是大家已經亂序執行很久了耶」, : : 這大概表示OS/Compiler都是內定亂序執行吧, ^^^^^^^^我又弄錯了 Orz → WPC001:OS/Compile出來的code都是in order... 123.195.11.21 11/14 → WPC001:out of order那個是硬體層級 123.195.11.21 11/14 → WPC001:頂多是complier再去做最佳化而已 123.195.11.21 11/14 : : 那你搞一顆順序執行的CPU是怎樣? : 看了一下這個網頁 : http://www.tomshardware.com/reviews/intel-atom-cpu,1947-5.html : 的介紹. 不得不佩服商業公司的宣傳與用字. : in-order 指的就是要配合 instruction fetch & execution pipeline. 我來說說我個人的一點粗淺理解,請多多包涵。 亂序執行是為了克服指令的「相關」與「移轉」, 失去亂序執行而回歸到in-order,則在遇到具有相關性的指令的時候, 整條流水線當中,後面的指令就必須等待前面的指令完成,才能夠接著被執行, 如此一來,就失去了流水線並行的本意。 INTEL的新Compiler針對這一點做了最佳化, 簡言之,A指令需要等待1次,B指令也需要等待1次,原本共需要等待2次, 但是該Compiler會讓A指令與B指令並行,這樣總共只需要等待1次。 就是「要等大家一起等」的意思。 請參考以下INTEL的gif檔: http://cache-www.intel.com/cd/00/00/38/79/387971_387971.gif
: 以利 threading 的快速切換. : : 找了一下,結果發現,Intel出新的Compiler了.......... : : http://macles.blogspot.com/2008/09/intel-cc-compiler-gcc-and-intel-atom.html : : http://www.intel.com/cd/software/products/asmo-na/eng/386925.htm : : -> Lack of in-order scheduling results in : : -> slower execution and increased power : : -> 上面這句話有點好笑 XD ^^^^ : 這應該是這個架構下必須遵守的原則, 否則就是快不起來 ! 因為Atom主打"低功耗", 但是,如果沒有使用INTEL的新Compiler, 則results in increased power,所以.......... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.221.140.178
WPC001:CPU架構完全不同,最佳化的方向差很多是正常 123.195.21.10 11/17 23:52
WPC001:當年P7核心(P4), 執行舊程式效率極低... 123.195.21.10 11/17 23:53
WPC001:軟硬體本來就要配合... 才會有最佳效率 123.195.21.10 11/17 23:54
WPC001:ATOM跟目前的core系列天差地別... XD 123.195.21.10 11/17 23:54
ggg12345:Hardware based OoO(Out of Order)可視為 140.115.4.12 11/18 09:30
ggg12345:是將program ordere 改為更塞滿管線的 in 140.115.4.12 11/18 09:32
ggg12345:order.Atom CPU捨硬取軟,由compiler協助 140.115.4.12 11/18 09:34