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

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

如何克服阿姆達(dá)爾(Amdahl)定律的影響?

瑞薩MCU小百科 ? 來源:Arm 社區(qū) ? 2024-03-13 13:52 ? 次閱讀

RA8系列是瑞薩電子推出的全新超高性能產(chǎn)品業(yè)界首款基于Arm Cortex-M85處理器MCU,能夠提供卓越的6.39 CoreMark/MHz,可滿足工業(yè)自動化、家電、智能家居消費(fèi)電子、樓宇/家庭自動化、醫(yī)療等廣泛應(yīng)用的各類圖形顯示和語音/視覺多模態(tài)AI要求。

所有RA8系列MCU均利用Arm Cortex-M85處理器和Arm的Helium技術(shù)所帶來的高性能,結(jié)合矢量/SIMD指令集擴(kuò)展,能夠在數(shù)字信號處理器(DSP)和機(jī)器學(xué)習(xí)(ML)的實(shí)施方面獲得相比Cortex-M7內(nèi)核高4倍的性能提升。

當(dāng)人工智能 (AI) 下沉到各式各樣的應(yīng)用當(dāng)中,作為市場上最大量的物聯(lián)網(wǎng)設(shè)備也將被賦予智能性。ArmHelium 技術(shù)正是為基于Arm Cortex-M 處理器的設(shè)備帶來關(guān)鍵機(jī)器學(xué)習(xí)與數(shù)字信號處理的性能提升。

Arm Helium 技術(shù)誕生的由來

在前幾篇文章中,我們介紹了采用 Arm Helium 技術(shù)(也稱為 MVE)的 Armv8.1-M 架構(gòu)如何處理矢量指令。但問題是,每當(dāng)代碼被矢量化時(shí),Amdahl 定律的影響很快便會顯現(xiàn),讓人措手不及。如果您不了解 Amdahl 定律,可以簡單理解為,Amdahl 定律表明算法中無法并行化的部分很快就會成為性能瓶頸。例如,如果有 50% 的工作負(fù)載可以并行化,那么即使這部分工作負(fù)載可以無限并行,最多也只能將速度提高二倍。不知您作何感受,如果我能將某件事情無限并行化,但速度卻只能提升二倍,這種微不足道的提升一定會讓我感到非常惱火!在設(shè)計(jì) Helium 時(shí),我們必須考慮矢量指令及其相關(guān)聯(lián)的一切內(nèi)容,這樣才能最大限度地提高性能。

串行代碼在循環(huán)處理中很常見,串行代碼造成的開銷可能相當(dāng)大,特別是對于小循環(huán)。下面的內(nèi)存復(fù)制代碼就是一個很好的例子:

e7142350-e0f6-11ee-a297-92fbcf53809c.png

循環(huán)迭代計(jì)數(shù)的遞減和返回循環(huán)頂端的條件分支占循環(huán)指令的 50%。許多小型 Cortex-M 處理器沒有分支預(yù)測器(小型 Cortex-M 處理器的面積效率極高,這意味著許多分支預(yù)測器比整個 Cortex-M 處理器還要大幾倍)。因此,由于分支損失,運(yùn)行時(shí)開銷實(shí)際上高于 50%。通過在多次迭代中攤銷開銷,循環(huán)展開可以幫助減少開銷,但會增加代碼大小,并使代碼的矢量化過程更加復(fù)雜。鑒于許多 DSP 內(nèi)核都有小循環(huán),因此在 Helium 研究項(xiàng)目中解決這些問題至關(guān)重要。許多專用 DSP 處理器支持零開銷循環(huán)。一種實(shí)現(xiàn)方法是使用 REPEAT 指令,告訴處理器將下面的指令重復(fù) N 次:

e722480e-e0f6-11ee-a297-92fbcf53809c.png

處理器必須記錄多項(xiàng)數(shù)據(jù):

循環(huán)開始的地址

需要分支回到循環(huán)開始前所剩余的指令數(shù)

剩余的循環(huán)迭代次數(shù)

在處理中斷時(shí),跟蹤記錄所有這些數(shù)據(jù)可能會造成問題,因此一些 DSP 只需要延遲中斷,直到循環(huán)完成。如果要執(zhí)行大量的迭代,這可能需要相當(dāng)長的時(shí)間,而且完全不符合 Cortex-M 處理器應(yīng)該實(shí)現(xiàn)的快速和確定性中斷延遲的需求。這種方法也不適用于處理精確故障,如權(quán)限違規(guī)導(dǎo)致的內(nèi)存管理故障異常 (MemManage)。另一種方法是增加額外的寄存器來處理循環(huán)狀態(tài)。但這些新寄存器必須在異常進(jìn)入和返回時(shí)保存和恢復(fù),而這又會增加中斷延遲。為了解決這個問題,Armv8.1-M 采用了一對循環(huán)指令:

e751b756-e0f6-11ee-a297-92fbcf53809c.png

該循環(huán)首先執(zhí)行 While Loop Start (WLS) 指令,該指令將循環(huán)迭代計(jì)數(shù)復(fù)制到 LR,循環(huán)迭代計(jì)數(shù)為零時(shí),分支到循環(huán)結(jié)束。還有一條 Do Loop Start (DLS) 指令,可用于設(shè)置一個循環(huán),在該循環(huán)中至少始終執(zhí)行一次迭代。Loop End (LE) 指令檢查 LR 以確認(rèn)是否還需要一次迭代,如果需要,則分支返回起點(diǎn)。有趣的是,處理器可以緩存 LE 指令提供的信息(即循環(huán)開始和結(jié)束的位置),因此在下一次迭代時(shí),處理器甚至可以在獲取 LE 指令之前分支回到循環(huán)的起點(diǎn)。因此,處理器執(zhí)行的指令序列如下所示:

e75c72d6-e0f6-11ee-a297-92fbcf53809c.png

在循環(huán)末尾添加循環(huán)指令有一個很好的副作用,如果緩存的循環(huán)信息刷新,該指令將重新執(zhí)行。然后,重新執(zhí)行 LE 指令將重新填充緩存。如下圖所示,由于無需保存循環(huán)開始和結(jié)束地址,因此現(xiàn)有的快速中斷處理功能得以保留。

e7668550-e0f6-11ee-a297-92fbcf53809c.png

除了第一次迭代和從中斷恢復(fù)時(shí)的一些設(shè)置外,所有時(shí)間實(shí)際上都花在了內(nèi)存復(fù)制而不是循環(huán)處理上。此外,由于處理器事先知道指令的順序,因此總能用正確的指令填充流水線。這樣就消除了流水線清空和由此導(dǎo)致的分支損失。因此,我們可以將這一循環(huán)矢量化,不必再擔(dān)心 Amdahl 定律的影響,我們(暫時(shí))克服了這些困難。

在對代碼進(jìn)行矢量化時(shí),一個循環(huán)通常以不同類型的指令開始和結(jié)束,例如矢量加載 (VLDR) 和矢量乘加 (VMLA)。執(zhí)行這樣的循環(huán)時(shí),會產(chǎn)生一長串不間斷的交替 VLDR/VMLA 操作(如下圖所示)。這種不間斷的鏈條使處理器能夠從指令重疊中獲得最大益處,因?yàn)樗踔量梢詮囊粋€循環(huán)迭代結(jié)束重疊到下一個迭代開始,從而進(jìn)一步提高性能。關(guān)于指令重疊的更多信息,可參閱:《Arm Helium 技術(shù)誕生的由來:為何不直接采用 Neon?》

e7818ada-e0f6-11ee-a297-92fbcf53809c.png

當(dāng)需要處理的數(shù)據(jù)量不是矢量長度的倍數(shù)時(shí),矢量化代碼就會出現(xiàn)問題。典型的解決方案是先處理全矢量,然后用一個串行/非矢量化尾部清理循環(huán)來處理剩余的元素。不知不覺中,Amdahl 定律又出現(xiàn)了,真是令人不勝其煩!Helium 中的矢量可容納 16 個 8 位數(shù)值,因此在我們對 31 字節(jié)的 memcpy 函數(shù)進(jìn)行矢量化時(shí),僅有不到一半的拷貝將由尾部循環(huán)連續(xù)執(zhí)行,而不是由矢量指令并行執(zhí)行。

為了解決這個問題,我們增加了循環(huán)指令的尾部預(yù)測變體(如 WLSTP、LETP)。對于這些尾部預(yù)測循環(huán),LR 保存的是要處理的矢量元素的個數(shù),而不是要執(zhí)行的循環(huán)迭代的次數(shù)。循環(huán)開始指令 (WLSTP) 有一個大小字段(下面 memcpy 函數(shù)示例中的“.8”),用于指定要處理的元素的寬度。

e79197e0-e0f6-11ee-a297-92fbcf53809c.png

如果您曾見過其他優(yōu)化的 memcpy 例程,可能會對這個例子的簡單程度感到驚訝,但對于 Helium 來說,這已經(jīng)是最好的完全矢量化解決方案所需要的一切了。具體工作原理如下:處理器使用大小字段和剩余元素的數(shù)量來計(jì)算剩余迭代次數(shù)。如果最后一次迭代要處理的元素個數(shù)少于矢量長度,則矢量末尾相應(yīng)數(shù)量的元素將被禁用。

因此,在上文復(fù)制 31 個字節(jié)的例子中,Helium 會在第一次迭代時(shí)并行復(fù)制 16 個字節(jié),然后在下一次迭代時(shí)并行復(fù)制 15 個字節(jié)。這不僅可以避免 Amdahl 定律的影響,實(shí)現(xiàn)該有的性能,還可以完全消除串行尾碼,減少代碼量,簡化開發(fā)過程。

由于面臨高性能目標(biāo)和嚴(yán)格的面積/中斷延遲限制,我們在設(shè)計(jì) Helium 時(shí)就像在設(shè)計(jì)一個多維拼圖,且其中一半的形狀是已經(jīng)固定的。架構(gòu)中看似毫不相干的部分可以相互作用,產(chǎn)生意想不到的效果或助力解決一些有趣的難題。

整個 Helium 研究團(tuán)隊(duì)和我都無比期待看到 Helium 技術(shù)能夠?yàn)槿碌膽?yīng)用帶來有力的支持。目前 Cortex-M 已有三款產(chǎn)品支持 Helium 技術(shù)——Cortex-M52、Cortex-M55 和 Cortex-M85,我迫不及待看到 Helium 技術(shù)持續(xù)賦能我們生態(tài)伙伴的 AI 創(chuàng)新應(yīng)用。


審核編輯:劉清

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

    關(guān)注

    68

    文章

    19657

    瀏覽量

    232455
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5396

    瀏覽量

    122455
  • 人工智能
    +關(guān)注

    關(guān)注

    1802

    文章

    48324

    瀏覽量

    244025
  • 機(jī)器學(xué)習(xí)

    關(guān)注

    66

    文章

    8473

    瀏覽量

    133740
  • Cortex-M85
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    617

原文標(biāo)題:Helium技術(shù)講堂 | 克服Amdahl定律的影響

文章出處:【微信號:瑞薩MCU小百科,微信公眾號:瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵試用體驗(yàn)】開箱收件

    `恒溫電烙鐵收到了,CL-018GE恒溫電烙鐵是達(dá)科技針對環(huán)保無鉛焊接工藝,結(jié)合手工焊接烙鐵的特性,綜合考慮,潛心為電子焊接量身打造的一款高性能,高品質(zhì),價(jià)廉物美的新一代恒溫烙鐵,具有很好
    發(fā)表于 02-24 14:49

    達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵免費(fèi)試用】開箱與鳴謝

    ` 本帖最后由 可樂丸子 于 2021-2-25 15:44 編輯 感謝電子發(fā)燒友和深圳達(dá)科技提供這次便攜式速熱節(jié)能恒溫電烙鐵的試用活動,這次有幸獲得這款做工精致的便攜式節(jié)能速熱恒溫電烙鐵
    發(fā)表于 02-25 14:17

    達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵免費(fèi)試用】焊接1.25mm排針

    `今天測試使用達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵焊接1.25mm排針到香蕉派開發(fā)板和CP2112模塊CP2112模塊如下,配兩排排針設(shè)置溫度旋鈕到340度,十五秒左右達(dá)到融錫溫度后即可開始焊接焊接
    發(fā)表于 02-26 19:00

    達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵試用體驗(yàn)】1、開箱測評

    ` 通過后沒幾天就收到這個電烙鐵了,有點(diǎn)小激動,之前我在華秋上也買了電烙鐵稍后可以進(jìn)行一番對比,現(xiàn)在先來看看這個好東東:接下來看看里面都有什么東西 一份達(dá)節(jié)能恒溫電烙鐵保修卡烙鐵芯更換方法與步驟
    發(fā)表于 02-28 15:09

    達(dá)科技便攜式節(jié)能速熱恒溫電烙鐵試用體驗(yàn)】達(dá)節(jié)能烙鐵試用體驗(yàn)及總結(jié)

    SMT貼片元件,再到QFN封裝的元件,均都采用烙鐵焊接過,常用的烙鐵特點(diǎn)是體積笨重,且升穩(wěn)比較緩慢,大約30秒以上,出差攜帶也十分方便。在論壇看到達(dá)速熱恒溫便攜烙鐵,看其外觀及性能介紹,已經(jīng)感受到
    發(fā)表于 03-10 18:36

    達(dá)高功率便攜式節(jié)能速熱恒溫電烙鐵 試用】非常不錯的電洛鐵

    很幸運(yùn)能夠試用達(dá)高功率便攜式節(jié)能速熱恒溫電烙鐵,感謝達(dá),感謝電子發(fā)燒友。產(chǎn)品很有檔次。焊
    發(fā)表于 08-25 09:46

    達(dá)高功率便攜式節(jié)能速熱恒溫電烙鐵試用 體驗(yàn)】

    達(dá)高功率便攜式節(jié)能速熱恒溫電烙鐵免費(fèi)試用 體驗(yàn)非常感謝電子發(fā)燒友和深圳達(dá)科技提供試用機(jī)會
    發(fā)表于 08-27 08:07

    達(dá)H-30T恒溫電烙鐵試用體驗(yàn)】+使用體驗(yàn)

    大家好,很榮幸得到達(dá)H-30T恒溫電烙鐵 的測試使用名額,感謝達(dá)科技提供的樣品,以及發(fā)燒
    發(fā)表于 11-12 18:57

    達(dá)H-30T恒溫電烙鐵試用體驗(yàn)】一支很用心的烙鐵,達(dá)H-30T恒溫電烙鐵

    首先感謝 達(dá) & 發(fā)燒友 給與的測試機(jī)會! 一、開箱 拿到STO快遞后,一個簡單的長方體盒子,里面就是
    發(fā)表于 11-13 23:00

    達(dá)H-30T恒溫電烙鐵試用體驗(yàn)】達(dá)H-30T恒溫電烙鐵試用體驗(yàn)

    作為一名DIY愛好者,我非常喜歡嘗試各種新產(chǎn)品。最近,我有幸試用了達(dá)H-30T高溫休眠版恒溫電烙鐵,并分享一下我的使用體驗(yàn)。 首先,我要贊揚(yáng)
    發(fā)表于 11-15 08:53

    達(dá)H-30T恒溫電烙鐵試用體驗(yàn)】主要性能指標(biāo)實(shí)測結(jié)果分享

    本帖最后由 jf_37047872 于 2023-12-2 12:56 編輯 上一篇針對達(dá)H-30T恒溫電烙鐵的外觀進(jìn)行了解讀,如果希望查看的可以點(diǎn)擊以下鏈接: 【
    發(fā)表于 11-30 23:05

    斯奈定律,什么是斯奈定律

    斯奈定律,什么是斯
    發(fā)表于 05-04 19:45 ?9993次閱讀
    斯奈<b class='flag-5'>爾</b><b class='flag-5'>定律</b>,什么是斯奈<b class='flag-5'>爾</b><b class='flag-5'>定律</b>

    達(dá)的紅外射頻遙控盒子(二)

    達(dá)的紅外射頻遙控盒子(二)
    發(fā)表于 12-08 10:06 ?3次下載
    <b class='flag-5'>阿</b><b class='flag-5'>達(dá)</b>的紅外射頻遙控盒子(二)

    斯維表盤開源構(gòu)建

    電子發(fā)燒友網(wǎng)站提供《斯維表盤開源構(gòu)建.zip》資料免費(fèi)下載
    發(fā)表于 07-10 09:43 ?0次下載
    <b class='flag-5'>阿</b><b class='flag-5'>姆</b>斯維<b class='flag-5'>爾</b>表盤開源構(gòu)建

    如何克服Amdahl定律的影響呢?

    在前幾篇文章中,我們介紹了采用 Arm Helium 技術(shù)(也稱為 MVE)的 Armv8.1-M 架構(gòu)如何處理矢量指令。
    的頭像 發(fā)表于 01-12 14:30 ?1010次閱讀
    如何<b class='flag-5'>克服</b><b class='flag-5'>Amdahl</b><b class='flag-5'>定律</b>的影響呢?
    主站蜘蛛池模板: 天天躁日日躁狠狠躁一级毛片 | 国产成人啪午夜精品网站男同 | 四虎永久免费在线观看 | 中文字幕婷婷 | 天堂资源地址在线 | 欧美疯狂爱爱xxxxbbbb | 特级片毛片 | 一级黄色大全 | 高清一区二区三区视频 | 视频福利网 | 久久草在线精品 | av手机在线播放 | 天堂最新版资源www在线 | 狠狠狠狼鲁欧美综合网免费 | 天天操天天舔天天干 | 久久好色 | 天天综合射 | 色视频www在线播放国产人成 | 天天精品| 国产亚洲精品成人一区看片 | 免费久久精品国产片香蕉 | 婷婷在线影院 | 久青草国产手机在线视频 | 国产精品网址你懂的 | 神马三级我不卡 | 天天视频一区二区三区 | 中国人69xxx大全 | 国产欧美日韩综合精品一区二区 | 欧美色视频日本片免费高清 | 亚洲天堂电影在线观看 | 国模欢欢炮交啪啪150 | 性欧美护士18xxxxhd视频 | 色中色在线视频 | 女人张开腿给人桶免费视频 | 在线精品视频成人网 | 黄色免费三级 | 国产毛片久久久久久国产毛片 | 人人干在线 | 五月伊人婷婷 | 男女做视频网站免费观看 | 综合网伊人 |