CPU 是將電能轉化為什麼能進行計算的?
總結下各位的答案,可以這樣理解嗎?(好比春運把一波人從浙江運到北京,如果沒有勢能、
動能等影響,其實是沒有能量消耗的。但是最終的人們的位置發生了變法。也就是最終的信息?)
這個問題仔細想想還是挺有意思的。
樓上虞前輩說『CPU不希望轉化能量』是很正確的,但即使理論上,CPU也做不到不消耗任何能量的。
計算機的工作本質上是對信息進行處理,而信息是可以用熵(entropy)來衡量的。可以想像一下,在一個一片混沌的系統中,你控制了一個bit,把它設定為了0或者1,那麼這個時候這個系統的就不再像原來那樣完全無序了,這是一個熵減的過程。同理,當你用CPU進行計算的時候,把一些無序的信息轉化為有序的信息,這其中真正有效的部分不是轉化為什麼能了,而是——變成熵減了!
那麼我們改變 1 bit 需要的能量是多少呢?根據蘭道爾原理(Landauer"s principle),室溫下,改變 1 bit 最少需要 2.75 zJ (2.75x10^-21)的能量。而以人類現在的技術製造出來的CPU,每個operation 基本都在幾十甚至幾百 pJ(10^-12),差了大概 9個量級!也就是說,現在的CPU消耗的能量,絕大多數都是無用功!
從這個角度來看,現在的CPU確實弱爆了。
但和理論不同的是,現實世界中,信息是要通過『介質』來呈遞的,而在我們現有的技術下,這個『介質』就是電,實現的方式就是用半導體集成電路。我們通過電位的高低來表示這是一個 1 還是一個 0。那麼維持這個電位,改變這個電位,都需要克服半導體的物理屬性; 想把這個電信號傳遞傳遞出去,就不能忽略電子在導體流動的過程中由於電阻產生的消耗;也正是因為有電阻,電流流過會發熱,為了防止過熱對半導體的屬性造成不利影響,又需要引入散熱機制,比如用風扇散熱等等——把這些能量都加起來,自然會遠遠大於改變熵的那點能量了。
其實綜觀整個計算機的發展史,從機械計算機,到電子管計算機,到現在的半導體計算機,再到未來可能的超導計算機、量子計算機,人類一直在試圖減小信息介質的能量消耗,從而造出更高效,更快速的計算機。至於說摩爾定律走到盡頭,本質上也是一回事兒——在現有的半導體技術下對信息介質的性能已經快壓榨到極限了。
所以關於下一代計算機會是怎樣的這個問題,計算機科學家是回答不了的,還要看物理學家們怎麼說。 (甩鍋成功(逃電能消耗在數字電路的電位狀態維持和轉換上。所謂「計算」是人為對受控狀態轉換的解讀,物理世界沒有「計算」這種東西,就像物理世界也從來不關心你撥算盤是什麼意思
大部分轉換成熱能,小部分轉換成電磁波輻射。
http://www.wuli.ac.cn/CN/abstract/abstract57260.shtml
看到沒人答「智能」真是欣慰
所謂計算,無非是把一串變化的高低電勢變成另一串電勢。
數字電路是依靠控制一系列開關達到這個目的。
這些開關是依靠改變電子的注入來達成開或者關。一般來說說不動他就是關,額外加個電勢就是開。所以是用另外一組電勢來控制第一組電勢。第一組電勢是數據,第二組電勢是指令。去除掉信息熵啊,高低頻電阻啊,原子擴散啊,表面氧化啊這些。剩下的無非是指令這組電勢控制了開關里電子的遷移。信息本身並不是能量。cpu只不過把電能用在搬動電子。而電子們來來回回,最終依然不能改變自己的命運,只是徒勞地發熱而已。然而就是這來來回回,改變了信息的面貌。本質來說cpu 運算是一直改變半導體電路的狀態,比如高電平和低電平。而維持狀態本身需要的能量很少,甚至可以忽略,因為不是電壓為零就是電流為零。但是狀態轉換的過程中由於有電壓和電流的交疊區域,因此有損耗,即轉換為了熱能。高頻工作過程中也有部分以電磁波的形式輻射掉。於是出現了發熱和電磁干擾。這些是副作用。通過改變電壓,改變半導體材料,改良溝槽結構,減少轉檯切換頻率和邊沿斜率等,是可以有效減少發熱和輻射的,這也是進步的目標。
CPU的功耗主要來源於CMOS結構的結電容在開關過程中沖放電荷,製程越小 這個結電容就越小,功耗就越低,開關速度也會提高,這就是晶元製造致力於不斷提高製程的主要原因...
不轉換能量,就是利用電能計算,發熱的話,是沒辦法的被迫的損耗,跟計算無關。
高票答案說的很對!把CPU看做一個系統,它的計算過程其實就是一個系統熵減小的過程,把相對無序的代碼轉化為相對有序的結果,至於持續輸入的電能,一部分轉化為內能,一部分轉化為勢能(比如磁碟里的磁場改變、有序的電信號等等)。哪怕電路是超導的,忽略一切電阻損耗,計算過程仍然會產生熱能。這是熱力學第二定律。我們能做的就是盡最大可能提高能量利用效率。
能量消耗屬於副作用 就像你開關門一樣 開關門只是為了進出 而開關門消耗的能量沒什麼用
--------------------------------
評論區有提到信息熵減,題主問的是計算是否需要能量,而改變信息而導致存儲或者釋放的能量是用來記錄信息的,並不是計算本身所需要的能量@wyf的回答比喻的不是很好 ,我改了一下比如你要拜訪小明(計算),走路去他家(為CPU加電)敲了門,於是你消耗了走路的能量和敲門所需的能量(CPU產生的廢熱,電磁波),但是這些能量與你拜訪小明沒有什麼必然的因果關係,只要你有錢,小明也有錢(計算機科學發展到夠高)你可以選擇開車,小明家的門也可以是感應門,你就不用花費走路和敲門的能量(即由於發熱消耗的能量。至於電磁波輻射。。這個還有點遠)(現階段來看超導電路是一條比較好的路)
原來你們都沒有答對……
CPU由邏輯門構成。電源、CPU及外圍電路讓系統運行起來。
電能用於控制邏輯門工作,最終轉化為熱能(等效電阻消耗)和電磁輻射而已。
是的!
僅!此!而!已!
而由電能控制的邏輯門輸出 高電平 和 低電平,被人為的定義為1和0。大量的邏輯門構成人思維中運算的邏輯,加、減、乘、除、取余、取反、異或、同或等等操作。
而計算屬於邏輯體系,而邏輯在人的認知系統中才存在意義,因此這部分並不存在消耗能量一說!
——————————————
說白了,請看CPU和人類的對話——邏輯門(CPU):「我只負責利用電能(包括時鐘)控制輸出高低電平(0/1),而這些電平到底代表什麼,who cares?」
人類:「…… We care!!!」
邏輯門(CPU):「so?」
人類(吐血):「……」你們都說的很對,也說的很好,但我還是來回答一下:
假設宅男你把家裡搞得亂糟糟的,需要用些手段來收拾乾淨整潔——而早有一個前輩已經在你家裡布置好了居家整理系統(當成一個機器人管家也行),當然是需要些電。
從你的視角:混亂的家——整潔的家(熵減)
從整理系統的視角:電能——維持系統運轉
其他不可避免的損耗如系統散熱,線路干擾等都是附帶產品;整個過程實現了熵減,也消耗了能量
-----------------------------------------------------這也就是cup運行的過程:你的視角:亂比特——有意義的比特
cpu視角:電能——維持邏輯電路運轉由於系統運行效率不高,其他不可避免的損耗佔了絕大多數;整個過程實現了熵減,也消耗了能量
-----------------------------------------------------
還不明白?
再舉個栗子,就是你使用珠算的過程(按珠算口訣來,完全不準心算~):你的視角:待解數字——有意義的數字
算盤的視角:機械能——維持系統運轉整個過程實現了熵減,也消耗了能量cup的運算原理就是按照設計改變輸出的狀態,因為輸出只有0或1,所以在物理層面就是控制若干開關的狀態開或關是物理層面的變化,所以cup的耗能除了金屬導體通過電流產生的IR消耗,就是開關狀態改變的能量消耗。導線的消耗是物理層面的消耗,只能通過降低電阻或降低電壓來節省,而開關轉換狀態消耗的能量就是我們在不斷創新,不斷研發的領域,從一開始的鍘刀開關到現在越來越小半導體開關,我們追求的從來都是改變開關狀態的最小能量,也許到原子級別改變狀態需要的能量是現在半導體的100萬分之一,那個時候電子運算領域又將會是另一種不同的景象。
這是晶元內部發生的兩個孤立的過程。所有Device翻轉完成計算是一個過程,有人說這是熵減,行業局限,我並不完全理解熵與能量的關係,但我認為計算過程並沒有對數值的有序或者無序產生影響。計算樣本和樣本的處理過程是完全有序的,計算本身是沒有能量過程的。第二個過程是實現計算的物理實體,對於現代的硅基甚至更高性能的GaAs等工藝,記錄計算樣本和完成計算均需要依賴節點電荷或Arm電流的恆定和變化,這個過程才是現代晶元的能耗發生過程。我個人認為這跟計算本質上是無關的,只是一種sideeffect。也是所有宏觀物理世界必然存在的過程。如果真的可以以一種沒有勢能的介質來存儲和計算,想必也就沒有能量轉換和消耗了。
首先電能沒有轉化為什麼。他的計算就是通過複雜的邏輯電路來進行的。所謂邏輯電路自然還是電路,所以計算就是以電能的形式進行的。
關於這個可以看看embedded的相關知識,它裡面會有一些邏輯電路的模塊。
這裡拿adder舉例:
adder就是在計算機進行加法計算。最簡單的carry adder:可以看到這裡就是一些邏輯門在進行0,1二進位運算。但是由於carry out 在下一位運算中作為carry in,計算機32bits 的運算中用這個玩意來計算delay太嚴重了。
所以就有了carry select adder
我就不具體翻譯了,大概意思就是他直接進行運算然後有兩個結果,一個是直接A+B,一個是A+B+1,然後根據carry in來選擇輸出那個結果。
可以看到這裡有運算有四級,也就是delay只有3*
關於這部分知識其實一點也不難,這些內容都是我從課件截下來的,都是些本科的基礎的東西。
以上熱
上面的都不靠譜。學過電的怒答一發。
我們所有的教材強電、弱電、電磁波分成三種原理去解釋,而本質上其實都可以用電磁波解釋。cpu裡面各種計算過程確實就是電磁波的傳播和響應。不論是改變電壓,傳播電流或電壓,延遲寄存等等,都是電磁波作用的結果。
輸入輸出也是電磁波作用。
那麼結果自然而然了,器件的電磁特性決定了能量轉換到哪裡去了。這時候半導體材料哥上場了。你讓我變0就變0?你讓我變1就變1?讓我變可以,尼瑪的來回變的路費你得掏
推薦閱讀: