0四、計算機功耗,提高性能

  CPU性能公式:程序的 CPU 執行時間 = 指令數×CPI×Clock Cycle Time性能

下降能耗優化

從以上公式看出,能夠從指令數、CPI以及CPU主頻這三個方面入手來提高計算機性能。然而當CPU的主頻達到極限時,功耗會增長,致使性能不會達到預期的目的,一方面,咱們要在 CPU 裏,一樣的面積裏面,多放一些晶體管,也就是增長密度;另外一方面,咱們要讓晶體管「打開」和「關閉」.」得更快一點,也就是提高主頻。而這二者,都會增長功耗,帶來耗電和散熱的問題。所以這兩方面都是有限的。此時又會下降電壓來下降能耗;加密

並行優化,阿姆達爾定律設計

提高主頻達到了瓶頸以後,又經過並行處理來提升CPU的吞吐率,現代的CPU都發展到多核,2核、4核,乃至8核的CPU。這就是將一個程序任務交給多個CPU核進行並行處理來提升性能。阿姆達爾定律說的就是,對於一個程序進行優化以後,處理器並行運算以後效率提高的狀況。能夠用公式表示:接口

          優化後的執行時間 = 受優化影響的執行時間 / 加速倍數 + 不受影響的執行時間事件

不受影響的執行時間就是不能被並行處理的任務所執行的時間。ast

總結延伸效率

不管是提高主頻,仍是增長更多的CPU核心數量,經過並行來提高性能,都會遇到瓶頸。簡單的堆硬件已經不能知足需求了。硬件

在摩爾定律和並行計算以外,還有這幾個原則性的性能提高方法:程序

  一、加速大概了事件

    加速大機率事件(common case fast)遠比優化小几率事件更可以提升性能 ,大機率事件一般比小几率事件簡單,從而易於提升。

    大機率事件規則意味着設計者須要知道什麼事件是常常發生的,這隻有經過仔細的實驗與評估纔可以得出。

  二、經過流水線提升性能

    把CPU指令執行的過程進行拆分,細化運行。反之,過長的流水線也會帶來新的功耗和效率的負面影響。

  三、經過預測提升性能

    經過預先猜想一下下一步該幹什麼,提早進行運算,也是讓程序跑的更快一點的方法。

補充資料

《計算機組成與設計:軟 / 硬件接口》(第 5 版)的 1.7 和 1.10 節,也簡單介紹了功耗牆和阿姆達爾定律

《深刻理解計算機系統》(第 3 版)的 1.9 節也不錯

相關文章
相關標籤/搜索