chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

Arm社區(qū) ? 來源:Arm社區(qū) ? 2024-01-12 14:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

克服 Amdahl 定律的影響

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

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

a85c54ac-b112-11ee-8b88-92fbcf53809c.png

循環(huán)迭代計(jì)數(shù)的遞減和返回循環(huán)頂端的條件分支占循環(huán)指令的 50%。許多小型 Cortex-M 處理器沒有分支預(yù)測(cè)器(小型 Cortex-M 處理器的面積效率極高,這意味著許多分支預(yù)測(cè)器比整個(gè) Cortex-M 處理器還要大幾倍)。因此,由于分支損失,運(yùn)行時(shí)開銷實(shí)際上高于 50%。通過在多次迭代中攤銷開銷,循環(huán)展開可以幫助減少開銷,但會(huì)增加代碼大小,并使代碼的矢量化過程更加復(fù)雜。

鑒于許多 DSP 內(nèi)核都有小循環(huán),因此在 Helium 研究項(xiàng)目中解決這些問題至關(guān)重要。許多專用 DSP 處理器支持零開銷循環(huán)。一種實(shí)現(xiàn)方法是使用 REPEAT 指令,告訴處理器將下面的指令重復(fù) N 次:

a8745e44-b112-11ee-8b88-92fbcf53809c.png

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

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

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

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

在處理中斷時(shí),跟蹤記錄所有這些數(shù)據(jù)可能會(huì)造成問題,因此一些 DSP 只需要延遲中斷,直到循環(huán)完成。如果要執(zhí)行大量的迭代,這可能需要相當(dāng)長(zhǎ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ù),而這又會(huì)增加中斷延遲。為了解決這個(gè)問題,Armv8.1-M 采用了一對(duì)循環(huán)指令:

a8a57cb8-b112-11ee-8b88-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è)置一個(gè)循環(huán),在該循環(huán)中至少始終執(zhí)行一次迭代。Loop End (LE) 指令檢查 LR 以確認(rèn)是否還需要一次迭代,如果需要,則分支返回起點(diǎn)。有趣的是,處理器可以緩存 LE 指令提供的信息(即循環(huán)開始和結(jié)束的位置),因此在下一次迭代時(shí),處理器甚至可以在獲取 LE 指令之前分支回到循環(huán)的起點(diǎn)。因此,處理器執(zhí)行的指令序列如下所示:

a8b82142-b112-11ee-8b88-92fbcf53809c.png

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

a8d2dcd0-b112-11ee-8b88-92fbcf53809c.png

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

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

a8edba5a-b112-11ee-8b88-92fbcf53809c.png

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

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

a9040440-b112-11ee-8b88-92fbcf53809c.png

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

如果最后一次迭代要處理的元素個(gè)數(shù)少于矢量長(zhǎng)度,則矢量末尾相應(yīng)數(shù)量的元素將被禁用。因此,在上文復(fù)制 31 個(gè)字節(jié)的例子中,Helium 會(huì)在第一次迭代時(shí)并行復(fù)制 16 個(gè)字節(jié),然后在下一次迭代時(shí)并行復(fù)制 15 個(gè)字節(jié)。這不僅可以避免 Amdahl 定律的影響,實(shí)現(xiàn)該有的性能,還可以完全消除串行尾碼,減少代碼量,簡(jiǎn)化開發(fā)過程。

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

整個(gè) 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)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    20142

    瀏覽量

    246631
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    559

    文章

    8208

    瀏覽量

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

    關(guān)注

    31

    文章

    5587

    瀏覽量

    128984
  • ARM技術(shù)
    +關(guān)注

    關(guān)注

    0

    文章

    22

    瀏覽量

    7642
  • Cortex-M
    +關(guān)注

    關(guān)注

    2

    文章

    234

    瀏覽量

    30940

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

文章出處:【微信號(hào):Arm社區(qū),微信公眾號(hào):Arm社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    克服全車以太網(wǎng)汽車架構(gòu)中的 QoS 挑戰(zhàn)

    這份報(bào)告由雷諾Ampere汽車公司和RTaW公司在2025年10月15日法國(guó)圖盧茲舉辦的IEEEEthernet&IP@AutomotiveTechnologyDay上聯(lián)合發(fā)表,主題為“OvercomingQoSChallengesinaFullAutomotiveEthernetArchitecture(克服全車
    發(fā)表于 10-29 15:47 ?1次下載

    FOSAN 富捷科技揭秘:電阻公式的 “硬核邏輯”—— 從歐姆定律到 TCR 如何守護(hù)設(shè)備穩(wěn)定?

    在電子電路的復(fù)雜網(wǎng)絡(luò)中,電阻是調(diào)控電流的 “核心樞紐”,而描述其特性的公式則是解碼這一元件的 “關(guān)鍵密碼”。從基礎(chǔ)的歐姆定律到溫度系數(shù)計(jì)算,這些公式不僅是理論推導(dǎo)的結(jié)晶,更是工程實(shí)踐中解決問題的核心
    的頭像 發(fā)表于 09-02 18:03 ?1003次閱讀
    FOSAN 富捷科技揭秘:電阻公式的 “硬核邏輯”—— 從歐姆<b class='flag-5'>定律</b>到 TCR 如何守護(hù)設(shè)備穩(wěn)定?

    晶心科技:摩爾定律放緩,RISC-V在高性能計(jì)算的重要性突顯

    運(yùn)算還是快速高頻處理計(jì)算數(shù)據(jù),或是超級(jí)電腦,只要設(shè)計(jì)或計(jì)算系統(tǒng)符合三項(xiàng)之一即可稱之為HPC。 摩爾定律走過數(shù)十年,從1970年代開始,世界領(lǐng)導(dǎo)廠商建立晶圓廠、提供制程工藝,在28nm之前取得非常大的成功。然而28nm之后摩爾定律在接近物理極限之前遇到大量的困
    的頭像 發(fā)表于 07-18 11:13 ?3995次閱讀
    晶心科技:摩爾<b class='flag-5'>定律</b>放緩,RISC-V在高性能計(jì)算的重要性突顯

    如何克服電路板元件引腳焊接的缺陷

    克服電路板元件引腳焊接的缺陷,松盛光電提供一種既易于操作,又不會(huì)使產(chǎn)品產(chǎn)生品質(zhì)問題,且成本較低的自動(dòng)化激光焊接方法。
    的頭像 發(fā)表于 05-14 15:23 ?885次閱讀
    如何<b class='flag-5'>克服</b>電路板元件引腳焊接的缺陷

    電力電子中的“摩爾定律”(1)

    本文是第二屆電力電子科普征文大賽的獲獎(jiǎng)作品,來自上??萍即髮W(xué)劉賾源的投稿。著名的摩爾定律中指出,集成電路每過一定時(shí)間就會(huì)性能翻倍,成本減半。那么電力電子當(dāng)中是否也存在著摩爾定律?1965年,英特爾
    的頭像 發(fā)表于 05-10 08:32 ?644次閱讀
    電力電子中的“摩爾<b class='flag-5'>定律</b>”(1)

    熱導(dǎo)傳感器是什么?了解多少

    書寫著無聲的創(chuàng)新詩(shī)篇。 ? 一、熱導(dǎo)密碼:從傅里葉定律說起 1822年,法國(guó)科學(xué)家傅里葉提出導(dǎo)熱基本定律:?jiǎn)挝粫r(shí)間內(nèi)傳遞的熱量與溫度梯度及材料截面積成正比。這個(gè)看似簡(jiǎn)單的公式,卻為熱導(dǎo)傳感器的誕生埋下了理論基石。熱導(dǎo)
    的頭像 發(fā)表于 03-24 18:22 ?719次閱讀

    西門子EDA工具如何助力行業(yè)克服技術(shù)挑戰(zhàn)

    西門子EDA工具以其先進(jìn)的技術(shù)和解決方案,在全球半導(dǎo)體設(shè)計(jì)領(lǐng)域扮演著舉足輕重的角色。本文將從汽車IC、3D IC和EDA AI三個(gè)方向,深入探討西門子EDA工具如何助力行業(yè)克服技術(shù)挑戰(zhàn),推動(dòng)創(chuàng)新發(fā)展。
    的頭像 發(fā)表于 03-20 11:36 ?1879次閱讀

    瑞沃微先進(jìn)封裝:突破摩爾定律枷鎖,助力半導(dǎo)體新飛躍

    在半導(dǎo)體行業(yè)的發(fā)展歷程中,技術(shù)創(chuàng)新始終是推動(dòng)行業(yè)前進(jìn)的核心動(dòng)力。深圳瑞沃微半導(dǎo)體憑借其先進(jìn)封裝技術(shù),用強(qiáng)大的實(shí)力和創(chuàng)新理念,立志將半導(dǎo)體行業(yè)邁向新的高度。 回溯半導(dǎo)體行業(yè)的發(fā)展軌跡,摩爾定律無疑是一個(gè)重要的里程碑
    的頭像 發(fā)表于 03-17 11:33 ?684次閱讀
    瑞沃微先進(jìn)封裝:突破摩爾<b class='flag-5'>定律</b>枷鎖,助力半導(dǎo)體新飛躍

    混合鍵合中的銅連接:或成摩爾定律救星

    混合鍵合3D芯片技術(shù)將拯救摩爾定律。 為了繼續(xù)縮小電路尺寸,芯片制造商正在爭(zhēng)奪每一納米的空間。但在未來5年里,一項(xiàng)涉及幾百乃至幾千納米的更大尺度的技術(shù)可能同樣重要。 這項(xiàng)技術(shù)被稱為“混合鍵合”,可以
    的頭像 發(fā)表于 02-09 09:21 ?1110次閱讀
    混合鍵合中的銅連接:或成摩爾<b class='flag-5'>定律</b>救星

    電氣原理與電路分析 電氣原理中的歐姆定律

    一、引言 電氣原理是電氣工程和電子工程領(lǐng)域的基礎(chǔ)理論,它涉及電流、電壓、電阻等基本概念以及它們之間的關(guān)系。在這些概念中,歐姆定律無疑是最為核心和基礎(chǔ)的一個(gè)。歐姆定律揭示了電流、電壓和電阻之間的定量
    的頭像 發(fā)表于 02-01 10:29 ?2325次閱讀

    石墨烯互連技術(shù):延續(xù)摩爾定律的新希望

    半導(dǎo)體行業(yè)長(zhǎng)期秉持的摩爾定律(該定律規(guī)定芯片上的晶體管密度大約每?jī)赡陸?yīng)翻一番)越來越難以維持??s小晶體管及其間互連的能力正遭遇一些基本的物理限制。特別是,當(dāng)銅互連按比例縮小時(shí),其電阻率急劇上升,這會(huì)
    的頭像 發(fā)表于 01-09 11:34 ?856次閱讀

    摩爾定律是什么 影響了我們哪些方面

    摩爾定律是由英特爾公司創(chuàng)始人戈登·摩爾提出的,它揭示了集成電路上可容納的晶體管數(shù)量大約每18-24個(gè)月增加一倍的趨勢(shì)。該定律不僅推動(dòng)了計(jì)算機(jī)硬件的快速發(fā)展,也對(duì)多個(gè)領(lǐng)域產(chǎn)生了深遠(yuǎn)影響。
    的頭像 發(fā)表于 01-07 18:31 ?2830次閱讀

    電荷守恒定律與電流的關(guān)系 電荷守恒定律與能量守恒定律的區(qū)別

    電荷守恒定律與電流的關(guān)系 電荷守恒定律與電流之間存在著密切的關(guān)系。電荷守恒定律指出,在任何物理過程中,電荷的總量保持不變。這意味著電荷既不能被創(chuàng)造,也不能被銷毀,只能從一個(gè)物體轉(zhuǎn)移到另一個(gè)物體,或者
    的頭像 發(fā)表于 12-16 14:45 ?1698次閱讀

    電荷守恒定律在化學(xué)反應(yīng)中的作用

    在自然界中,電荷守恒定律是一個(gè)基本的物理原理,它規(guī)定了電荷既不會(huì)被創(chuàng)造,也不會(huì)被消滅,只能從一個(gè)物體轉(zhuǎn)移到另一個(gè)物體,或者從物體的一部分轉(zhuǎn)移到另一部分。這一定律在化學(xué)反應(yīng)中尤為重要,因?yàn)樗WC了
    的頭像 發(fā)表于 12-16 14:43 ?3082次閱讀

    電荷守恒定律的定義 電荷守恒定律與電場(chǎng)的關(guān)系

    電荷守恒定律的定義 電荷守恒定律是一個(gè)基本的物理定律,它指出在一個(gè)封閉系統(tǒng)(或孤立系統(tǒng))中,電荷的總量保持不變。這意味著電荷既不能被創(chuàng)造,也不能被銷毀,它只能從一種形式轉(zhuǎn)移到另一種形式,或者從一個(gè)
    的頭像 發(fā)表于 12-16 14:41 ?2927次閱讀