日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

3天內(nèi)不再提示

鯤鵬GCC編譯器具有代表性的三方面優(yōu)化特性

7riU_gh_3a181fa ? 來源:華為計算 ? 作者:華為計算 ? 2021-09-02 10:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編譯器作為重要的基礎軟件之一,在各個領域都有著非常廣泛的應用。比如在嵌入式領域,如何在有限的空間內(nèi)豐富應用的功能困擾著眾多的工程師,編譯器能夠輔助大幅度地降低應用的體積,是工程師們不可或缺的好幫手。

再或是 HPC(High Performance Computing,高性能計算)領域聚焦于計算密集型的場景,像氣象預報、科學研究等,極致化的應用性能是 HPC 領域不斷探索的課題之一,編譯器作為重要的性能貢獻者,在其中發(fā)揮著至關重要的作用。

鯤鵬 GCC 是搭載在鯤鵬平臺上的高性能編譯器,致力于為用戶提供高效的性能體驗,在編譯算法、指令流水、運算庫等方面進行了深度的優(yōu)化。

了解鯤鵬 GCC 編譯器

鯤鵬 GCC 編譯器是基于開源 GCC 的高性能編譯器,鯤鵬 GCC 與鯤鵬芯片協(xié)同,通過編譯器技術充分發(fā)揮芯片的性能,提升鯤鵬硬件平臺上業(yè)務的性能體驗。除支持開源 GCC 通用功能之外,鯤鵬 GCC 主要對以下三個方面進行了增強。

更豐富的編譯算法:提供豐富的優(yōu)化算法,如內(nèi)存布局優(yōu)化、結構體拆分優(yōu)化、自動矢量化等,大幅提升指令和數(shù)據(jù)的吞吐量。

更靈活的指令流水:適配鯤鵬平臺的指令流水優(yōu)化,發(fā)揮鯤鵬架構極致算力。

更高效的運算庫:深度優(yōu)化數(shù)學庫算法,提供豐富的矢量數(shù)學函數(shù)接口,大幅提升數(shù)學計算的效率。

當前鯤鵬 GCC 編譯器已廣泛應用于多種 HPC 典型場景,如氣象、安防、流體力學等,性能優(yōu)勢已經(jīng)逐步展露。其中,SPECCPU 2006 和 SPECCPU 2017 benchmark 跑分平均優(yōu)于開源 GCC 15% 以上,HPC 典型氣象應用 WRF 優(yōu)于開源 GCC 10% 以上。

GCC 編譯器典型優(yōu)化場景及其優(yōu)化原理介紹

結構體拆分優(yōu)化——大幅提升 Cache 命中率

SPECCPU 2006 benchmark 中有一款 libquantum 子項,它用于模擬量子計算機運行整數(shù)分解的 Shor 算法,該子項的一個瓶頸在于頻繁連續(xù)的內(nèi)存讀寫,簡化后的代碼示例如下圖左邊所示。

dd98c7bc-0b48-11ec-8fb8-12bb97331649.png

內(nèi)存布局優(yōu)化原理示意圖

從循環(huán)中可以看出在結構體 node_t 中,data1 的使用率極高,而 data2 是不使用的。在源代碼中,數(shù)據(jù)是以結構體數(shù)組的形式排布在內(nèi)存中,按照普通編譯器的編譯方式,每次從內(nèi)存中取數(shù)據(jù)時會將連續(xù)幾個結構體數(shù)據(jù)加載到 cache 中,而 cache 包含的數(shù)據(jù)中有一半將不會參與運算,這會造成 cache 空間和帶寬的浪費與性能的損耗。

鯤鵬 GCC 編譯器會自動檢查循環(huán)中適合優(yōu)化的場景,通過將結構體拆分成兩個結構體的方式(如上圖右),將有效的數(shù)據(jù)緊湊排布起來,從而提高 cache 命中率和應用性能。經(jīng)測試,此優(yōu)化可以給 libquantum 子項帶來80%的性能提升。除此之外,鯤鵬 GCC 編譯器還支持結構體全展開、結構體成員重排列等內(nèi)存布局優(yōu)化,讓應用程序的性能如虎添翼。

指令流水優(yōu)化——更加適合鯤鵬的指令調(diào)度模型

通用的指令流水調(diào)度是基于各個指令的消耗和指令間的依賴關系合理地調(diào)度指令執(zhí)行的順序。在不進行指令流水優(yōu)化時,6條指令依次順序執(zhí)行,假設每條指令需要兩個單位的執(zhí)行時間來計算得到結果,由于指令間存在數(shù)據(jù)依賴,在沒有計算得到 V1 值的條件下,無法進行 V0 值的計算,由此導致了一個單位時間的等待,造成性能損失。

在使用指令流水優(yōu)化后,在 V 系列指令執(zhí)行等待的一個單位時間內(nèi)加入了沒有數(shù)據(jù)依賴的K系列指令的執(zhí)行,所有指令的執(zhí)行被合理地調(diào)度了起來,指令流水優(yōu)化提升了指令執(zhí)行的效率和程序運行的性能。

鯤鵬芯片基于 ARM 架構,對指令的消耗和指令間依賴關系的處理進行了優(yōu)化和增強。鯤鵬 GCC 編譯器導入了基于鯤鵬芯片的指令模型,使得指令流水優(yōu)化的結果能夠更加適合鯤鵬芯片的執(zhí)行,提升鯤鵬軟件運行的性能。經(jīng)測試,該優(yōu)化可以給 SPEC CPU 2006benchmark 帶來2%的整體性能提升。

高性能運算庫——極致性能的數(shù)學庫和矢量數(shù)學函數(shù)

HPC 領域會運用到大量的數(shù)學函數(shù)計算,如 pow、sinf、log 等,也經(jīng)常需要對整個數(shù)組內(nèi)的數(shù)據(jù)做數(shù)學函數(shù)運算。如下圖舉例所示,左邊是需要對 a 數(shù)組的所有數(shù)據(jù)進行 sinf 數(shù)學計算。

正常情況下會循環(huán)遍歷 a 數(shù)組依次對每個數(shù)據(jù)進行 sinf 數(shù)學計算,無法獲得進一步的性能提升空間。鯤鵬 GCC 編譯器能夠識別該場景,自動將 sinf 數(shù)學函數(shù)的調(diào)用轉化為矢量化 vec_sinf 的數(shù)學調(diào)用,能夠同時處理四個數(shù)據(jù)的 sinf 數(shù)學計算,并矢量化存取數(shù)據(jù),得到性能的提升。經(jīng)測試,該優(yōu)化可以給 HPC 領域 NEMO 應用帶來6%的性能提升。

ddd81796-0b48-11ec-8fb8-12bb97331649.png

矢量數(shù)學函數(shù)優(yōu)化原理示意圖

本文我們主要介紹了鯤鵬 GCC 編譯器具有代表性的三方面優(yōu)化特性:前中端編譯算法優(yōu)化、后端指令優(yōu)化、運行時庫優(yōu)化。除此之外,還有軟件預取、循環(huán)優(yōu)化、分支預測、矢量化等編譯優(yōu)化特性的開發(fā)應用。

編輯:jq

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

    關注

    463

    文章

    54466

    瀏覽量

    469764
  • GCC
    GCC
    +關注

    關注

    0

    文章

    112

    瀏覽量

    26427
  • 編譯器
    +關注

    關注

    1

    文章

    1673

    瀏覽量

    51968
  • HPC
    HPC
    +關注

    關注

    0

    文章

    350

    瀏覽量

    25083

原文標題:【鯤鵬 DevKit 黑科技揭秘】┃鯤鵬GCC編譯器,釋放鯤鵬澎湃算力

文章出處:【微信號:gh_3a181fa836b6,微信公眾號:華為計算】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    谷景繞線共模電感技術特性與應用解析

    在電子設備向高頻化、小型化發(fā)展的當下,電磁兼容設計成為電路穩(wěn)定運行的關鍵環(huán)節(jié)。作為抑制電磁干擾的重要元件,繞線共模電感憑借其結構特點與濾波性能,在電源系統(tǒng)、通信設備及消費電子等領域發(fā)揮著重要作用。本文將從技術原理、結構優(yōu)勢及實際應用三方面,介紹該元件如何助力提升系統(tǒng)的電磁兼容
    的頭像 發(fā)表于 04-07 16:37 ?185次閱讀

    高速精密加工的性能標桿

    在高端精密制造領域,電主軸作為核心功能部件,其性能直接決定了加工設備的精度、效率與適用場景。內(nèi)裝式相交流異步感應電主軸,憑借緊湊結構、高速特性與寬適配,成為銑削、鉆孔等精密加工場景的理想選擇,以下從技術參數(shù)、性能特點、應用適
    的頭像 發(fā)表于 12-20 14:26 ?3363次閱讀
    高速精密加工的性能標桿

    單片機開發(fā)功能安全中編譯器

    的問題是,防御編碼和外部數(shù)據(jù)訪問等實踐并不屬于編譯器認可的領域。例如,C和C ++都沒有為內(nèi)存損壞留出任何余地,因此,除非在沒有這種損壞的情況下可以訪問旨在防止內(nèi)存損壞的代碼,否則在對代碼進行優(yōu)化
    發(fā)表于 12-01 06:44

    高校宿舍水電計費?智能管理?能效優(yōu)化一體化系統(tǒng)

    個重要方面,一是安全管理工作,二是水電計量和收費工作,是節(jié)能降耗。對高校宿舍水電管理的現(xiàn)狀及針對以上三方面存在問題進行探討,并針對這三方面摸索行之有效的對策,對于高校宿舍水電管理
    的頭像 發(fā)表于 11-13 14:25 ?384次閱讀
    高校宿舍水電計費?智能管理?能效<b class='flag-5'>優(yōu)化</b>一體化系統(tǒng)

    飛凌嵌入式ElfBoard-Vim編輯器之GCC編譯器的安裝

    GCC(GNU Compiler Collection)是由GNU開發(fā)的編程語言編譯器,最初是作為GNU操作系統(tǒng)的編譯器編寫的。GCC是一個編譯器
    發(fā)表于 10-15 08:44

    GCC編譯器,怎么才能實現(xiàn)c文件中未被調(diào)用的函數(shù),不會被編譯呢?

    GCC編譯器,怎么才能實現(xiàn)c文件中未被調(diào)用的函數(shù),不會被編譯?有什么編譯選項可以設置嗎? 移植代碼,有些函數(shù)沒被調(diào)用的函數(shù)想留在代碼里,但不想被編譯
    發(fā)表于 09-28 12:25

    電能質量在線監(jiān)測裝置定位諧波源的準確有多高?

    網(wǎng)、測點密集、同步精準),準確可達到 90% 以上;在復雜場景(如廣域電網(wǎng)、背景諧波波動大、測點稀疏),準確可能降至 70% 以下。以下從 “準確分級、關鍵影響因素、提升路徑” 三方面
    的頭像 發(fā)表于 09-26 15:20 ?774次閱讀

    請問如何在keil μVision 5上進行ARM編譯器的代碼優(yōu)化

    如何在keil μVision 5上進行ARM編譯器的代碼優(yōu)化?
    發(fā)表于 08-20 07:37

    霍爾元件在磁懸浮技術上的應用與解析

    霍爾元件在磁懸浮技術中主要承擔磁場檢測和反饋控制功能,其應用可歸納為以下三方面: 一、位置檢測與反饋控制 .?實時位置監(jiān)測? 線性霍爾元件通過檢測磁場強度變化,將懸浮體的位移量轉化為電壓信號輸出
    發(fā)表于 08-07 10:40

    電子測試行業(yè)中的第三方檢測機構如何解決平臺靈活度低,維護困難等痛點問題?

    在競爭激烈的市場環(huán)境中,第三方檢測機構面臨著諸多挑戰(zhàn),尤其是在來料測試環(huán)節(jié)。某權威第三方檢測機構就曾深陷困境,他們一方面要應對產(chǎn)品不確定性高與系統(tǒng)固化嚴重的矛盾,另一方面還需解決已有系
    的頭像 發(fā)表于 08-06 17:07 ?994次閱讀
    電子測試行業(yè)中的第<b class='flag-5'>三方</b>檢測機構如何解決平臺靈活度低,維護困難等痛點問題?

    天合跟蹤獲得DNV第三方風洞測試審查報告

    三方審核。這不僅是三方合作的里程碑,更是中國光伏跟蹤支架技術邁向國際高標準的重要一步。DNV對此研究成果的專業(yè)以及可靠進行了全面審查。
    的頭像 發(fā)表于 07-08 17:35 ?1126次閱讀

    邊緣設備AI部署:編譯器如何實現(xiàn)輕量化與高性能?

    、ASIC等)上高效執(zhí)行的機器代碼。AI編譯器在AI模型的部署和優(yōu)化中扮演著關鍵角色,能夠顯著提升模型的運行效率和性能。 ? AI編譯器的主要功能 ? AI編譯器的主要功能包括模型
    的頭像 發(fā)表于 07-06 05:49 ?6979次閱讀

    使用 Claroty SRA 優(yōu)化三方 OT 遠程訪問

    三方,如原始設備制造商 (OEM) 技術員和維護承包商,是確保 OT 環(huán)境可用、完整和安全的關鍵。負責服務 OT 資產(chǎn)的第三方經(jīng)常遠
    的頭像 發(fā)表于 06-17 16:11 ?902次閱讀
    使用 Claroty SRA <b class='flag-5'>優(yōu)化</b>第<b class='flag-5'>三方</b> OT 遠程訪問

    三方工業(yè)互聯(lián)網(wǎng)平臺有哪些

    三方工業(yè)互聯(lián)網(wǎng)平臺有哪些
    的頭像 發(fā)表于 06-14 15:48 ?1526次閱讀

    小鵬汽車出席東盟-中國-海合會三方經(jīng)濟論壇

    近日,東盟-中國-海合會三方經(jīng)濟論壇于馬來西亞吉隆坡盛大開幕,中國新能源汽車領軍企業(yè)代表小鵬汽車受邀出席開幕式及系列活動。
    的頭像 發(fā)表于 06-04 15:42 ?893次閱讀
    白朗县| 忻州市| 陕西省| 石河子市| 仙游县| 秦皇岛市| 安福县| 霍州市| 长丰县| 双辽市| 新巴尔虎右旗| 丁青县| 红河县| 东平县| 华安县| 延庆县| 页游| 达拉特旗| 吉木乃县| 昌邑市| 梨树县| 辽阳县| 枝江市| 阳山县| 上思县| 尉氏县| 长岭县| 巴青县| 赤城县| 长泰县| 德保县| 宕昌县| 额敏县| 远安县| 东源县| 张家界市| 杂多县| 邹城市| 武邑县| 囊谦县| 重庆市|