計算機組成原理--淺談計算機性能

計算機組成原理|淺談計算機性能

本篇文章屬於計算機組成原理的開篇之做,主講影響計算機性能的因素與提高的計算機性能的路徑。
關鍵詞: 性能,CPU,響應時間,主頻,功耗,電壓,並行...緩存

前言

目前全部的文章思想格式都是:知識+情感。
知識:對於全部的知識點的描述。力求不含任何的自我感情色彩。
情感:用我本身的方式,解讀知識點。力求通俗易懂,完美透析知識。

正文

計算機性能的衡量標準

衡量計算機性能的標準有兩個,分別是響應時間(Response time)吞吐率(Throughput)
1.響應時間,也稱爲執行時間(Execution time)。表示的是,計算機執行一段程序的總時間。
2.吞吐率,也稱爲帶寬(Bandwidth)。表示的是,計算機執行一段程序每一次執行的量。
注意:存在一個響應時間與吞吐率的關係,即響應時間=吞吐率x執行次數。性能優化

響應時間

首先,得知能夠提升響應時間進而提升計算機性能。然而,在計算機中,影響響應時間的主要因素是CPU的性能。性能

通常性能測試

性能,能夠當作是響應時間的倒數,即
** 性能 = 1/響應時間**
此時,只要保證響應時間越短,性能的數值就越好。學習

問題:響應時間怎麼來,是現實生活中的時間嗎?
回答: 固然不是!
第一種狀況,CPU不可能作到只運行一個程序,首先是否是須要支持操做系統在運行,才能夠進而運行測試程序。在真實的環境中,CPU會在不一樣的進程中切換,運行程序,單位是GHz,人是感受不到的。
第二種狀況,CPU會處於滿載運行與降頻運行兩種模式,對應的運行結果固然是不同的!而且,你須要想一下,硬件的當前狀態無時無刻都在變化,無法保證一致。測試

瞭解內容:在實際生活中,評價一個計算機性能的第三方機構叫SPEC(Standard Performance Evaluation Corporation),主要是提供的 CPU 基準測試程序,經過數十個不一樣的計算程序,對於 CPU 的性能給出一個最終評分。優化

CPU性能測試

在瞭解了通常的性能測試以後,針對CPU,咱們能夠獲得新的性能測試方法,引入CPU時鐘週期,即
性能 = 1/(CPU時鐘週期數 x CPU時鐘週期)lua

在上式中,CPU的時鐘週期,就是咱們CPU 的主頻(Frequency/Clock Rate)。個人主機是2.81GHz,表示1秒的時間內,能夠執行的簡單指令的數量是 2.8G 條。操作系統

因此,能夠引入指令,獲得新的性能公式:
性能 = 1/(指令數x每條指令的平均週期數 x CPU時鐘週期)設計

即,能夠優化性能就有了三個方面:
1.指令數,經過編譯器將指定數減小,屬於指令設計層面。
2.每條指定數的平均週期數,也叫做PCI(Cycles Per Instruction),經過提升CPU技術實現減小平均週期數,屬於CPU設計層面。
3.CPU時鐘週期,經過提高CPU的主頻,得到更小的CPU時鐘週期,屬於電路硬件層面。code

瞭解內容:這裏會涉及晶振的概念,玩過單片機的都知道有個晶振的東西,CPU內部有個相似的東西。
在打遊戲,或者圖像渲染的時候,會有一個超頻的概念,就是將計算機的實際主頻調快,這是能夠認爲調整的,只不過會出現散熱問題而已。

CPU主頻優化

經過上面,瞭解到能夠經過提升CPU的主頻,進而得到更高的性能。

先了解一下CPU的構成。CPU,通常都被叫做超大規模集成電路(Very-Large-Scale Integration,VLSI)。其內部,包含億級別的晶體管,讓晶體管裏面的「開關」不斷地去「打開」和「關閉」,來組合完成各類運算和功能。

一個 CPU 的功率,能夠用這樣一個公式來表示:
功耗 ~= 1/2 ×負載電容×電壓的平方×開關頻率×晶體管數量

從上式,能夠看出電壓與功耗是平方的關係,晶體管數量與功耗成線性關係。運用咱們聰明的1+1=2的大腦,確定是保證功耗不大的狀況下,優先下降電壓,其次增長晶體管的數量。

注意: CPU功率可不能搞的很大,筆記本可不是插電源的,須要攜帶,一個小時電就用完了,這是不理想的,固然一個月不充電也是幻想狀態~
CPU的電壓可不能隨便小,理論上是隻要保證有電壓就能夠,但實際是電壓過小了,晶體管的打開與關閉就不工做....
CPU內部的晶體管的數量,也不能無限多,受限於CPU的體積,CPU工做會散熱的,太多了不適合散熱,會使得CPU罷工~

瞭解內容:相同的體積增長晶體管的數量,那就必須將晶體管作小,這就是提高製程
在本身組裝臺式機的時候,CPU仍是固然是盒裝好,可是散片其實也還行,畢竟目前CPU的工藝,可不是假貨能模仿的,給錢都作不出來....

吞吐率

當看了響應時間的優化以後,再看吞吐率優化,直接是簡單的很,一句話歸納吞吐率核心思想:人多力量大

藉助於並行的思想,實現多核CPU工做,實現性能優化,畢竟響應時間的優化已經步履艱難了。

並行基於一個經驗定律,即阿姆達爾定律(Amdahl’s Law)。
優化後的執行時間 = 受優化影響的執行時間 / 加速倍數 + 不受影響的執行時間

基於上式,想要提高性能,就是得到更小的 優化後的執行時間,只能從增長加速倍數出發。

注意: 受優化影響的執行時間表示的是能夠並行執行的時間,加速倍數正是並行的CPU核心數。

雖然可使用並行思想,提高計算機性能,可是並行依然受限制與於 不受影響的執行時間,這一段時間依然是串行的執行。而且會有一個極限值,不管提升多少加速倍數,時間變化不大。

總結

本文,講述計算機性能的提高,提出了基於響應時間的性能優化,基於吞吐率的性能優化。
基於響應時間的優化,能夠提高CPU的主頻,下降CPU的電壓,提升晶體管的數量,可是受限制於CPU的散熱與功耗。
基於吞吐率的優化,能夠進行並行,可是依然受限制於不能並行的部分。
還能夠基於大機率事件選擇GPU運算,代替CPU;使用CPU的流水線技術;使用預測提升性能。

瞭解內容:計算機顯卡內部就是GPU。

CPU的預測,會對CPU內部1、二級緩存變量調用產生影響。

結束語

最近在深刻挖掘計算機的底層知識,不只僅是學習知識,對於計算機這個世界也有了新的認識,狀態很好!感受本身收穫不少!
但願本身能夠一直挖下去~

相關文章
相關標籤/搜索