在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

軟件如何利用內核實現高效運行

要長高 ? 來源:epsnews ? 作者:Ann Steffora Mutschle ? 2023-11-23 14:50 ? 次閱讀

作者:Ann Steffora Mutschler

在編寫軟件時,設計工程師如何確定它將在特定目標平臺上消耗多少功率?雖然這個問題看起來很簡單,但答案并非如此。

Synopsys低功耗解決方案集團技術營銷總監Cary Chin表示,該行業才剛剛開始發展在該領域

獲取一些數據的能力。“當我們能夠做到這一點時,我認為你會發現移動應用程序的編寫方式實際上與你在筆記本電腦上運行的應用程序不同,因為它們將更好地優化功能,并且可能會在緩存數據方面做不同的事情。

不過,要達到這一點并不容易。ARM操作系統架構師Jason Parker表示,高能效軟件需要從一開始就成為設計的一部分。“設計師需要不斷問自己,‘這是解決這個問題最省電的方法嗎?’試圖將電源管理和效率改造到現有設計中是一項艱巨的工作,而且所有的銀彈在很久以前就用完了。多處理器設計為電源管理開辟了額外的技術和限制。

了解表面之下發生的事情是一個開始。線程和進程是表示 CPU 執行和可見內存空間的軟件抽象。線程表示 CPU 的執行狀態,例如程序計數器、寄存器和標志。他解釋說,進程是受限的進程內存空間,供一個或多個線程在其中執行,而MMU則用于提供此內存。一個進程中通常可以有多個線程,并且它們都共享相同的數據。

在單核處理器中,CPU 由操作系統內核調度程序在線程之間共享,執行由線程調度管理,線程優先級和時間切片和切換線程稱為上下文切換。相比之下,多處理器 (MP) 將多個高效 CPU 組合在一起,可以以比單個高性能 CPU 更低的總功耗提供更高的聚合性能,并提供更多的電源管理選項,Parker 指出。

MP系統分為對稱系統和非對稱系統。“非對稱系統可以在不同的內核上運行不同的操作系統,協同工作以提供整個系統解決方案。例如,智能手機具有用于 Android 用戶界面的 ARM CortexA8 應用處理器,以及在 RF 調制解調器中運行實時電話堆棧的不同 Cortex R4 處理器,以及用于圖形、視頻和低功耗音頻的附加內核。這些系統的優點是可以定制每個子系統的處理器和資源,以最小的功耗提供預期的性能。缺點是系統架構通常是固定的,可能無法實現未來的要求,例如新的視頻格式。

同時,對稱系統在相同的內核上運行單個操作系統內核,并有一個連貫的內存系統將它們連接在一起,Parker解釋說。“SMP 操作系統將同時運行多個線程,旨在通過集群內的核心分擔工作負載。結構良好的代碼和算法是可并行化的,能夠利用多核的性能。現有的代碼和串行算法可能無法利用多個內核。SMP 操作系統中的電源管理系統將通過使用 DVFS 擴展內核的性能來控制功耗,并將關閉未使用/未充分利用的內核。

當今復雜的 SoC 包含 SMP 和 AMP 子系統的混合體,其功耗針對各自的任務進行了優化。例如,“多核Cortex A9系統為開放平臺操作系統提供了靈活性,其中未來的應用需求是未知的,而LTE調制解調器的CPU要求在設計時是已知的,”他說。

實現最佳核心利用率

但是,僅僅了解系統的結構是不夠的。為了實現軟件對內核的最佳利用率,應實施某些技術,同時牢記內核利用率是由子系統分區以及系統代碼和算法的進一步并行化驅動的。Parker說:“操作系統調度器可以通過將線程及其數據保留在相同或本地CPU上來最大限度地提高執行效率,而應用程序軟件可以通過使用線程親和性來強制執行。

最大限度地提高內核利用率將推動最大性能。然而,對于每個硅工藝來說,它可能不是最節能的解決方案,特別是那些具有電源管理功能的解決方案,當所需的總軟件負載只是總性能的一小部分時,可以優化線程調度。例如,在一個 CPU 上總負載為 80% 的雙核系統中,要問的關鍵問題是:

1. 內核是否以 100% 的性能運行一個 CPU,而關閉第二個 CPU?

2. 內核是否以 50% 的性能運行兩個 CPU,頻率、電壓和總功耗較低?

Parker說,除了子系統分區之外,還有其他方法可以優化軟件利用內核的方式,但這取決于手頭的任務,包括使用虛擬機管理程序將多個操作系統整合到單個CPU或集群上。此外,虛擬化操作系統的許多實例可以使用虛擬化分布在多個內核上,例如在 Web 服務器的情況下。在天平的另一端,令人尷尬的并行問題可以移交給 GPU,例如在圖像處理中使用 Open CL。

“中間是事情有趣的地方,”他說。“現有系統如何跨多個內核進行擴展?這是一個 30 年來一直存在的性能問題,以及最近的電源成本問題。對于現有代碼和幾個內核(少于 《》 個)來說,使用線程是一種可行的解決方案,但它們很難編程。測量和分析一如既往地是所需的工程技能。如果沒有對系統有很好的了解,就很難充分利用多核硬件。

何時使用多核

Synopsys 的 Chin 表示,如今一切都朝著多核的方向發展,“隨著處理器的頻率不斷提高,這推動了技術的發展,并使電源問題越來越嚴重。試圖通過在某些處理單元中將內核復制到雙核、四核、六核或更多內核來增加吞吐量或提高處理能力的想法一直是大多數處理器制造商所走的道路。在過去的 8 或 10 年里,人們一直在談論這個問題。

“因此,我們看到了很多處理器——英特爾酷睿 i5、酷睿 i7 等四核和六核處理器在今天非常主流,非常有趣,盡管移動電子產品的架構還沒有真正走上這條路。我想說,這更像是異構內核的想法,在這種內核中,您將特定內核用于更具體的任務。在移動應用程序中,對優化處理器功能以滿足手頭特定任務的需求更大,“他指出。

但是,某些應用程序在多核環境中的表現比其他應用程序更好。“在服務器場和移動設備方面,你將看到的性能改進之間的最大區別在于,在服務器場上,虛擬化、數據庫和谷歌搜索等應用程序在算法上是并行化的,可以很容易地進行線程化。當你在云或服務器場環境中時,你也有擁有很多很多用戶的好處,這為整個場提供了另一個層次的并行化和功能,“Chin說。

在這些環境中,并行化并擁有盡可能多的內核是有意義的,因為啟動服務器場的整個想法是提高利用率。“我們的想法是,如果可以的話,讓您的農場以接近 100% 的利用率運行,24/7,無論是在線金融應用程序還是季節性圣誕節訂購。你希望這與世界其他地區的使用相平衡,“他繼續說道。“對于移動應用程序,您只能在操作系統和要運行的應用程序中執行一定數量的線程。在像智能手機這樣的東西上,這個想法不是讓它一直運行。事實上,這個想法恰恰相反。你希望它盡可能少地運行。

審核編輯:黃飛

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19388

    瀏覽量

    230581
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10892

    瀏覽量

    212486
  • 服務器
    +關注

    關注

    12

    文章

    9265

    瀏覽量

    85790
  • 操作系統
    +關注

    關注

    37

    文章

    6862

    瀏覽量

    123534
  • 線程
    +關注

    關注

    0

    文章

    505

    瀏覽量

    19716
收藏 人收藏

    評論

    相關推薦

    FreeRTOS實時內核實用指南

    FreeRTOS實時內核實用指南
    發表于 09-18 08:02

    如何多核實現算法?

    本人菜鳥,C6678學了一個多月,至今想不出LMS算法如何多核實現? 看多核實現的IMAGE PROCESSING的例程,這個處理比較復雜,數據量也大, 個人理解:這個圖像處理的例程是不是基于數據
    發表于 06-21 19:05

    《RT-Thread 內核實現與應用開發實戰—基于STM32》分享

    RT-Thread 內核實現與應用開發實戰—基于STM32 基于STM32的論文+實戰 主要是RT-Thread
    發表于 01-29 15:29

    嵌入式微內核實時操作系統的Wolf測試怎么實現

    介紹嵌入式微內核實時操作系統的體系結構;針對Wolf嵌入式操作系統,設計一套微內核嵌入式操作系統測試實現方案。在Wolf操作系統支持下,已產業化的閱讀不耗電電子書(eBook)驗證了Wolf操作系統的可靠性。
    發表于 09-05 06:03

    RT-Thread 內核實現與應用開發實戰指南

    RT-Thread 內核實現與應用開發實戰指南
    發表于 04-03 11:43

    FreeRTOS內核實現與應用開發實戰指南

    本書是野火嵌入式教學叢書“RTOS 內核實現與應用開發實戰指南的”FreeRTOS 版本,其中機械工業出版社出版的《RT-Thread 內核實現與應用開發實戰指南—基于 STM32》是該書的姐妹篇
    發表于 09-28 08:05

    嵌入式微內核實時操作系統分析與測試

    介紹嵌入式微內核實時操作系統的體系結構;針對Wolf 嵌入式操作系統,設計一套微內核嵌入式操作系統測試實現方案。在Wolf 操作系統支持下, 已產業化的閱讀不耗電電子書(eBook)
    發表于 05-14 15:51 ?15次下載

    嵌入式Linux內核實時性研究及改進

    分析了嵌入式Linux 存在實時性缺陷的原因,從Linux 調度機制入手提出了可行的改進方案,并詳細闡述了代碼實現。經測試,改進后的內核實時性能得到很大提高。在嵌入式技術
    發表于 07-30 10:13 ?8次下載

    英特爾最小型內核實現邊緣智能

    英特爾打造核心技術英特爾最小型內核實現邊緣智能
    發表于 12-28 18:10 ?0次下載

    嵌入式內核實

    嵌入式內核實
    發表于 01-22 13:58 ?0次下載

    如何利用C/C++編寫應用程序加速內核運行

    SDAccel編譯器支持OpenCL C,C和C ++,用于定義FPGA執行的內核功能。 了解如何利用用C / C ++編寫的現有函數作為FPGA上運行的OpenCL應用程序的加速內核
    的頭像 發表于 11-20 06:40 ?2913次閱讀

    FreeRTOS 內核實現與應用開發實戰指南PDF電子書免費下載

    本書是野火嵌入式教學叢書“RTOS 內核實現與應用開發實戰指南的”FreeRTOS 版本,其中機械工業出版社出版的《RT-Thread 內核實現與應用開發實戰指南—基于 STM32》是該書的姐妹篇
    發表于 11-18 08:00 ?1716次下載
    FreeRTOS <b class='flag-5'>內核實現</b>與應用開發實戰指南PDF電子書免費下載

    FreeRTOS內核實現與應用開發實戰指南

    本書是首本系統講解 FreeRTOS 的中文書籍,共分為兩個部分,第一部分為“從 0 到 1教你寫 FreeRTOS 內核”,即重點講解 FreeRTOS 的原理實現,從 0 開始,不斷迭代,教你
    發表于 05-24 16:26 ?245次下載

    Linux內核實現內存管理的基本概念

    本文概述Linux內核實現內存管理的基本概念,在了解基本概念后,逐步展開介紹實現內存管理的相關技術,后面會分多篇進行介紹。
    發表于 06-23 11:56 ?859次閱讀
    Linux<b class='flag-5'>內核實現</b>內存管理的基本概念

    內核實時操作系統的介紹

    內核實時操作系統(Microkernel Real-Time Operating System, μRTOS)是一種專為實時設計的操作系統。它采用微內核架構,以提高系統的可靠性、安全性和可擴展性。以下是關于微內核實時操作系統的
    的頭像 發表于 05-11 17:13 ?537次閱讀
    主站蜘蛛池模板: 天堂国产| 视频免费观看视频| 91在线视频免费| 天天做日日爱| 狠狠干亚洲色图| 速度与激情一| 高清一区二区三区| 欧美黄色高清| 国产九九热| 五月天婷婷在线观看高清| 国产特黄一级片| 欧美黄色片 一级片| 香港经典a毛片免费观看爽爽影院| 亚洲免费视频一区| jiucao在线观看精品| 欧美黄色免费看| 午夜小视频网站| 成人亚洲视频| 狠狠色丁香久久婷婷综合丁香| 国产又黄又免费aaaa视频| 欧美人与牲动交xxxxbbbb| 久久久久免费精品国产| 女人张开腿 让男人桶个爽 免费观看 | 亚洲男人的天堂成人| 久久99国产精品免费观看| 亚洲一区在线视频| 欧美性猛交xxxx免费| 午夜性| 中文字幕一区二区精品区| 天天搞夜夜爽| 亚洲vv| 亚洲国产片| 欧美福利二区| 亚洲永久网站| 天堂资源在线官网| 免费能直接在线观看黄的视频| 男人边吃奶边爱边做视频日韩 | 天堂tv在线观看| 激情午夜婷婷| 国产3p在线播放| 国产成人精品日本亚洲网站|