日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式微處理器
[導(dǎo)讀]在手機(jī)快沒(méi)電時(shí),管理軟件往往會(huì)提醒我們關(guān)掉某些耗電量高的應(yīng)用??梢?jiàn),除了硬件廠商外,軟件廠商也應(yīng)該重視能耗問(wèn)題。在這篇文章中,研究者分析了一下各種編程語(yǔ)言的能耗對(duì)比。 當(dāng)能耗也成為了一個(gè)重要指標(biāo),我們要怎么選擇編程語(yǔ)言?2017 年,由 6 名葡萄

在手機(jī)快沒(méi)電時(shí),管理軟件往往會(huì)提醒我們關(guān)掉某些耗電量高的應(yīng)用??梢?jiàn),除了硬件廠商外,軟件廠商也應(yīng)該重視能耗問(wèn)題。在這篇文章中,研究者分析了一下各種編程語(yǔ)言的能耗對(duì)比。


當(dāng)能耗也成為了一個(gè)重要指標(biāo),我們要怎么選擇編程語(yǔ)言?2017 年,由 6 名葡萄牙研究者組成的團(tuán)隊(duì)決定對(duì)這一問(wèn)題進(jìn)行調(diào)查并發(fā)表了一篇名為《Energy Efficiency Across Programming Languages》的論文。他們用 27 種語(yǔ)言寫(xiě)出了 10 個(gè)問(wèn)題的解決方案(遵循同樣的算法),然后運(yùn)行這些方案,記錄每種編程語(yǔ)言消耗的電量以及速度和內(nèi)存使用情況,得到的排序結(jié)果如下圖所示:


通過(guò)這項(xiàng)研究,他們得出了一些有意思的結(jié)論,比如運(yùn)行速度快的語(yǔ)言未必能耗小。

在論文中,作者還根據(jù)編程語(yǔ)言的執(zhí)行類型(編譯、虛擬機(jī)或解釋)和編程范式(命令式、函數(shù)式、面向?qū)ο蠛湍_本)對(duì)結(jié)果進(jìn)行了分析。

具體而言,研究者使用了來(lái)自 Computer Language Benchmarks Game(一個(gè)用于比較性能的免費(fèi)軟件項(xiàng)目,其中包含一組標(biāo)準(zhǔn)的算法問(wèn)題和用于運(yùn)行測(cè)試的框架)的 10 個(gè)問(wèn)題,使得研究更有可比性和代表性。

運(yùn)行各種基準(zhǔn)測(cè)試非常重要,因?yàn)樗鼈兊慕Y(jié)果會(huì)由于所執(zhí)行的測(cè)試而有所不同。例如,總體而言,C 語(yǔ)言被認(rèn)為是最快的,也是最節(jié)能的。但是在涉及掃描 DNA 數(shù)據(jù)庫(kù)中特定基因序列的基準(zhǔn)測(cè)試中,Rust 是最節(jié)能的,而 C 語(yǔ)言位居第三。

即使在同一測(cè)試中,「最佳」語(yǔ)言也取決于你的標(biāo)準(zhǔn)。比如在一個(gè) C 排第二、Rust 排第一的測(cè)試中,如果按內(nèi)存使用情況對(duì)結(jié)果進(jìn)行排序,Rust 會(huì)跌掉 9 個(gè)位次。而在一個(gè) Fortran 能效第二高的測(cè)試中,如果結(jié)果按照運(yùn)行時(shí)間排序,它也下降了 6 個(gè)位次。

研究者指出,他們嚴(yán)格遵守 CLBG 項(xiàng)目關(guān)于編譯器版本和最佳優(yōu)化標(biāo)志的指導(dǎo)方針。功耗的測(cè)量使用一個(gè)來(lái)自英特爾的工具——Running Average Power Limit,每個(gè)程序運(yùn)行 10 遍。作者表示,「這是為了減少冷啟動(dòng)和緩存效應(yīng)的影響,并能夠分析測(cè)量的一致性,避免異常值」。

為了增強(qiáng)一致性,所有測(cè)試都在一個(gè)運(yùn)行 Linux Ubuntu Server 16.10(內(nèi)核版本 4.8.0-22-generic)的臺(tái)式機(jī)上運(yùn)行。

01

運(yùn)行速度快的語(yǔ)言更節(jié)能嗎?


這篇論文認(rèn)真地研究了一個(gè)普遍的假設(shè):速度越快的程序消耗的能源就越少。研究者指出,其實(shí),這并不像物理學(xué)定律 E(nergy) = T(ime) x P(ower) 那么簡(jiǎn)單。這是因?yàn)殡娏Σ⒉话凑找欢ǖ乃俾蔬M(jìn)行消耗。在其他研究者的一項(xiàng)研究中,一個(gè) Chapel 程序的運(yùn)行時(shí)間比另一個(gè)用 Pascal 寫(xiě)的等價(jià)程序少 55%,但測(cè)量結(jié)果卻表明,那個(gè) Pascal 程序所用的能量反而要少 10%。

因此,盡管普遍認(rèn)為程序運(yùn)行速度更快時(shí)能耗會(huì)下降,但研究者明確指出「速度更快的語(yǔ)言并不總是更節(jié)能?!?/span>

這可能是一個(gè)很難回答的問(wèn)題,因?yàn)楣氖艿皆S多因素的影響(包括編譯器的質(zhì)量和使用的庫(kù))。但最終,研究人員總結(jié)出,無(wú)論是編譯型語(yǔ)言、解釋型語(yǔ)言還是虛擬機(jī),其實(shí)大部分能量(平均 88% 左右)是由 CPU 消耗的。

在對(duì)實(shí)驗(yàn)結(jié)果分析研究之后,研究者還得出結(jié)論:DRAM 的峰值使用量與能耗之間「幾乎沒(méi)有關(guān)系」。該研究為一個(gè)長(zhǎng)期存在的問(wèn)題提供了答案:「速度更快就更環(huán)保嗎?」是的,的確是這樣,在按照?qǐng)?zhí)行時(shí)間進(jìn)行排序時(shí),前 5 種最節(jié)能的語(yǔ)言依然排在前 5 名,而且在能量和時(shí)間值方面的差距很小。

實(shí)際上,在 10 個(gè)基準(zhǔn)問(wèn)題測(cè)試中,有 9 個(gè)得分最高者(速度和能源效率兩方面)是速度最快和能源效率最高的三種語(yǔ)言之一,這并沒(méi)有讓研究者感到驚訝。眾所周知,就像研究中的數(shù)據(jù)所顯示的一樣,C、C++ 和 Rust 這三種排名最靠前的語(yǔ)言都經(jīng)過(guò)了大量?jī)?yōu)化,在執(zhí)行性能上都比較高效。

但是按照運(yùn)行時(shí)間對(duì)其他 24 種語(yǔ)言進(jìn)行排名時(shí),情況就不一樣了。只有 4 種語(yǔ)言保持相同的能耗和時(shí)間排名(OCaml、Haskel、Racket 和 Python),而其余語(yǔ)言則徹底散開(kāi)。

即使在單項(xiàng)基準(zhǔn)測(cè)試中,也存在速度快但不節(jié)能的語(yǔ)言。

02

編譯型語(yǔ)言的優(yōu)點(diǎn)


編譯型語(yǔ)言似乎是最節(jié)能和運(yùn)行最快的語(yǔ)言,作者甚至可以在論文中用數(shù)字量化這種差異。

平均而言,編譯語(yǔ)言需要花費(fèi) 120J 能量來(lái)運(yùn)行解決方案,而虛擬機(jī)和解釋型語(yǔ)言要分別花費(fèi) 576J 和 2365J。

在比較執(zhí)行時(shí)間時(shí),研究者也采用了相同的精度,得出的結(jié)論是:平均而言,編譯語(yǔ)言花費(fèi) 5103 毫秒,虛擬機(jī)語(yǔ)言花費(fèi) 20623 毫秒,解釋型語(yǔ)言花費(fèi) 87614 毫秒。

兩項(xiàng)排名中的前 4 名均為編譯型語(yǔ)言(有一個(gè)例外,Java 語(yǔ)言)。


5 種最慢的語(yǔ)言都是解釋型語(yǔ)言:Lua、Python、Perl、Ruby 和 Typescript。5 種能耗最多的語(yǔ)言也都是解釋型語(yǔ)言:Perl、Python、Ruby、JRuby 和 Lua。

但同時(shí),在使用正則表達(dá)式操作字符串時(shí),5 種最節(jié)能的語(yǔ)言中有三種(TypeScript、JavaScript 和 PHP)是解釋型語(yǔ)言。盡管在其他情況下,它們往往不是很節(jié)能。

編譯型語(yǔ)言在占用內(nèi)存最少的排名中也占據(jù)了前 5 名。


研究者稱:「平均而言,編譯語(yǔ)言需要 125Mb,虛擬機(jī)語(yǔ)言需要 285Mb,而解釋語(yǔ)言則需要 426Mb。」具體來(lái)說(shuō),有 4 種解釋型語(yǔ)言在這項(xiàng)排名中墊底,這意味著它們消耗了最多的內(nèi)存空間。

「如果按照它們的編程范式進(jìn)行排序,命令式語(yǔ)言需要 116Mb,面向?qū)ο笳Z(yǔ)言需要 249Mb,函數(shù)式編程語(yǔ)言是 251Mb,腳本需要 421Mb?!?/span>

實(shí)際上,當(dāng)比較不同范式時(shí),命令式編程通常排在首位。與面向?qū)ο?、函?shù)式以及腳本范式的基準(zhǔn)程序相比,命令式編程的基準(zhǔn)程序平均使用的能源少得多,運(yùn)行速度也更快。


但是有很多因素需要考慮。研究者稱「很顯然,不同的編程范式,甚至同一范式中的語(yǔ)言對(duì)能耗、時(shí)間、內(nèi)存的影響也完全不同」。但是,其中哪一個(gè)因素最重要取決于你自己的需求情況(例如,后臺(tái)任務(wù)并不總是需要最快的運(yùn)行時(shí)間)。

某些應(yīng)用程序需要同時(shí)考慮兩個(gè)因素,如能耗和執(zhí)行時(shí)間。研究者稱:「在這樣的情況下,C 語(yǔ)言是最佳的解決方案,因?yàn)樗谶@兩個(gè)方面都很有優(yōu)勢(shì)。」如果你想在節(jié)省內(nèi)存的同時(shí)節(jié)省時(shí)間,那么 C 語(yǔ)言、Pascal 和 Go 語(yǔ)言都可以。如果你正在觀察 3 個(gè)變量(時(shí)間、能耗和內(nèi)存使用情況),那么結(jié)論也是一樣的。但是,如果你只是想在使用更少內(nèi)存的同時(shí)節(jié)省能源,那么最好的選擇是 C 語(yǔ)言或 Pascal。


-END-


整理文章為傳播相關(guān)技術(shù),版權(quán)歸原作者所有 |

| 如有侵權(quán),請(qǐng)聯(lián)系刪除 |


【1】超長(zhǎng)干貨為你解析:從串口驅(qū)動(dòng)到Linux驅(qū)動(dòng)模型,嵌入式必會(huì)!

【2】超全!嵌入式必懂的CAN總線一文講通了

【3】干貨:嵌入式系統(tǒng)設(shè)計(jì)開(kāi)發(fā)大全!(萬(wàn)字總結(jié))

【4】嵌入式系統(tǒng)求職回憶錄:廣嵌、邁瑞、華為、智光……

【5】嵌入式行業(yè)真的沒(méi)有前途嗎?



免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉