簡而言之,Bulldozer的1Core算是精簡過的Core,它仍然是1Core1Thread,不同於I7 1Core2Thread
好處是,沒有1Core2Thread搶奪資源(共用運算單元)的問題,每個Core都有自己的運算單元
看圖說故事
除了整數 浮點運算單元 L1 Cache之外,其他部分都是共用的(Fetch Decode L2,以往一個Core都是各自獨立一組),而浮點部分是128bit+128bit,平時一個core使用1個128bit,執行AVX指令時再合體成一個256bit
因為精簡了不少東西,所以1Module才可以做的比正常2Core還小(共享部分等於少掉一組電晶體)
假設1core 100%面積,2core就是200%
而Bulldozer共用部分假設省掉50%面積(真正節省多少我不清楚)
那1Module大概就只剩下150%(1core等於原來的75%)
但是它一樣可以實現2Core/2Thread
它的設計目的就是提升效率,用更少的電晶體實現更大的吞吐量
換個角度來說,就是盡量能在管線中填滿指令,不要浪費的空間
Hyper-Threadiing也是相同的目的,但是做法不同
有說錯別打我
