多核出現的必然性

2021-06-15 22:08:24 字數 660 閱讀 3959

作者 杜江凌

上回講了摩爾定律的正宗說法,是積體電路上的電晶體數目會以大約每兩年翻一番的速度增長。這越來越多的電晶體究竟對廣大使用者有什麼意義?

我們都知道現在的電腦比多年以前的功能強大多了,差不多二十多來年電腦的效能一直是跟主頻掛鉤的,主頻越高,效能越高。原因是晶元上的電晶體一代比一代多,就能做得更精細,執行指令的節拍(也就是主頻)更快。但電路越複雜,消耗的電能就越多,所以散熱問題就很突出了,終於成為制約效能提公升的瓶頸。記得前兩年看到網上乙個搞笑,在電腦的主機板上煎雞蛋,我可笑不起來。

我們從另乙個角度來看這個問題:晶元上有大量的電晶體,能組成乙個巨大的複雜電路,也可以組成很多個小的比較簡單的電路。但前者與後者相比,能耗就相差很大了,與之相關的發熱也相應有很大差距。多核的道路就是這樣出現在我們面前:在乙個晶元上建造多個cpu核心,而不是建造單個巨大的cpu。這樣就可以在較小的能耗下,讓多個cpu共同工作,提高整體效能。摩爾定律告訴我們晶元上的電晶體會以指數增長,我們就能在乙個晶元上建造越來越多的功能強大的cpu核心,從而繼續提高電腦的效能。今年二月我們在美國發布的「萬億級」80核的研究用晶元,只有指甲蓋大小,功耗只有62瓦。在十年前,同樣效能的計算機是用大約1萬個奔騰pro晶元組成的超級計算機(2023年,asci red),需要電力500千瓦。

走上了多核道路,電腦就會繼續大幅度提高效能,成為我們的好幫手。只是再不會與煎鍋為伍了。

缺陷的必然性

軟體測試中,由於錯誤的關聯性,並不是所有的軟體缺陷都能夠得以修復。某些軟體缺陷雖然能夠得以修復但在修復 的過程中我們會難免引入新的軟體缺陷。很多軟體缺陷之間是相互矛盾的,乙個矛盾的消失必然會引發另外乙個矛盾 的產生。比如我們在解決通用性的缺陷後往往會帶來執行效率上的缺陷。更何況在缺陷的修復過程中,我...

這是只在多核上才會出現的問題嗎

魔獸資料庫上線測試期間,有人反應,有時會出錯。可是不管我如果測試,都不能讓錯誤重現,實在是鬱悶透了。終於在一次修改後,我想讓所有頁面的快取都加上,於是用傲遊一下子,把開多個頁面的時候,發現出錯了.可是在本地測試時,還是不出錯.後來多測試了幾次,才發現,只在多核的機器上會出錯 我只測試了幾次,不是太確...

LeetCode 1 檢查括號出現的合法性

題目 檢查字串中 的合法性,即是否成對出現 eg,如出現 為合法,出現 為不合法 如下 class a object def isvalid self,s stack paren map for c in s if c not in paren map 如果不是右括號,即是左括號 elif not ...