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

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

3天內不再提示

介紹Armv9.5-A中Arm架構的最新特性

冬至子 ? 來源:Martin Weidmann ? 作者:Martin Weidmann ? 2023-10-11 09:44 ? 次閱讀

隨著人工智能AI)的崛起和安全威脅加劇,計算的需求持續加強。因此,世界上各種設備核心的基礎計算架構的持續演進顯得尤為重要。這就是為什么我們的工程團隊向Arm架構中添加新的功能和技術,然后軟件團隊確保軟件盡可能無縫地利用這些未來的功能和技術。

Arm架構是怎樣開發的

Arm每年發布對Arm指令集架構(ISA)的更新,這些更新是與Arm生態系統的多樣化合作伙伴共同創建的。該過程涉及芯片合作伙伴、操作系統供應商和OEMs、Arm的內部工程團隊和標準制定機構。

經過嚴格規劃的ISA可以確保軟件在新舊硬件上繼續工作很多年。Arm與Linaro以及其他眾多合作伙伴緊密合作,以便最廣泛使用的軟件上游社區(例如Linux內核和發行版)可以利用Arm ISA,以幫助提供全球最廣泛的開發者生態系統。

每年九月,我們發布一篇博客,討論當年A-Profile架構的關鍵更新。然后我們通過開發者網頁發布完整的指令集和系統寄存器文檔。

完整的Arm架構參考手冊(Arm ARM)也每年更新一次。預計將在2024年初發布包含2023擴展的更新。在2023年和2024年,“Learn the Architecture”頁面也將更新。

Architecture 2023 image 1.png

發布博客和文檔只是部署新架構的第一步。下一步我們將和生態系統伙伴合作,確保一旦硬件可用,開源軟件就能立即利用這一功能。

2023年,Arm引入新功能,以支持我們持續關注的人工智能(AI)、機器學習(ML)和安全性。讓安全的AI無處不在是Arm架構的關鍵優先任務,神經網絡(NNs)的訓練對AI的持續發展和進步至關重要。這就是為什么2023年的架構擴展包括FP8的新8位浮點格式的支持,此格式已在NNs中迅速被采納。在安全性方面,我們正在添加Checked Pointer Arithmetic,該功能基于Arm Memory Tagging Extension (MTE),允許開發人員快速檢測內存安全性違規,從而在應用開發過程中節省成本和時間。

之前對A-Profile架構的更新的詳細信息可以在這里找到:2014、2015、2016、2017、2018、2019、2020、2021和2022。

讓我們看看今年增加了哪些新功能。

Floating Point 8 (FP8)

2022年,Arm、Intel 和 Nvidia 宣布了他們在FP8上的合作,這是一個交換格式,允許軟件生態系統輕松地共享NN模型,并支持AI計算能力的持續進步。作為2023年擴展的一部分,SME2、SVE2 和 Advanced SIMD (Neon) 增加了對FP8的支持。

FP8支持兩種數據格式:E5M2 和 E4M3。這兩種格式在精度和范圍之間提供了不同的權衡。
image.png

由FPMR寄存器控制選擇使用那種格式??梢詾橐粭l指令的不同輸入選擇不同的格式,從而有效地處理不同格式的數據集。我們堅信,行業共創的FP8帶來的好處,使開發者能夠集中精力在真正重要的創新和差異化上。我們很興奮地看到FP8如何推動未來的AI發展.

實時遷移

實時遷移是將虛擬機(VM)從一個主機移動到另一個主機的過程,同時保留其可用性和狀態。高效的實時遷移支持是大規模數據中心管理的重要工具。

image.png

為了實現實時遷移,hypervisor需要在VM仍在舊主機上運行時將頁面復制到新主機。這通常需要一個迭代過程,因為VM可能會“弄臟”已經被復制的頁面。解決這個問題有不同的方法,但它們都必須面對三個挑戰:

記錄(Recording):創建VM寫入(弄臟)的頁面的記錄。
調查(Surveying):處理記錄,以確定哪些頁面需要重新復制。
清理(Cleaning):在每次迭代上重置記錄機制。

2023年的擴展引入了新特性,幫助優化這三個過程。

FEAT_HDBSS增加了記錄被弄臟的stage 2頁面或塊日志的能力。這種機制減少了記錄成本,因為內存管理單元(MMU)可以有效地創建日志,而不中斷VM的執行。該日志還減少了調查成本,因為生成的數據是hypervisor可以高效使用的格式。

image.png

為了解決清理成本,FEAT_HACDBS為清理 stage 2頁表中的臟狀態增加了一個加速器。該引擎使用臟頁面的日志來定位需要更新的stage 2頁表描述符。

這些特性一起為實時遷移帶來顯著的性能和效率提升。

Checked Pointer Arithmetic 檢驗過的指針運算

AArch64支持的特性可以重新利用保存地址的寄存器的高位。例如,Armv8.0-A中引入的Tagged Pointers和Armv8.5-A中引入的MTE。

軟件經常需要操作指針,例如給基址加上一個偏移量。這通常使用常規的算術操作來完成,如加或減。地址計算上的溢出可能導致非地址位被損壞。例如,如果正在使用MTE,地址操作可能導致存儲在指針中的MTE Tag被更改。損壞的MTE Tag可能導致處理器無法檢測到內存安全違規,如下所示:

image.png

2023年的擴展引入了專門用于操作指針的新指令。這些指令包含多個指針特定的檢查,包括檢查bits[63:56]是否被修改,并防止溢出。尋址模式的加載和存儲指令也可以被配置為保留bits[63:56]。

取之前的MTE例子,新的特性允許處理器檢測指針的前8位是否已經被修改。這意味著,如果MTE標簽被損壞,它將被報告回到軟件中。

其他功能

2023年擴展部分引入的其他增強功能包括:

  • 支持使用PC(程序計數器)和SP(當前選擇的堆棧指針)的組合作為生成或檢查指針認證代碼時的modifier 。
  • 支持具備Realm Management Extension (RME) 的設計,在Granule Protection Tables中支持non secure only,并具有禁用某些Physical Address Spaces (PAS)的能力。
  • EL3配置寫入陷阱。
  • 斷點支持地址范圍和mismatch觸發,而無需鏈接。
  • 支持從EL3有效地將SErrors委托給EL2或EL1。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 寄存器
    +關注

    關注

    30

    文章

    5141

    瀏覽量

    118055
  • 神經網絡
    +關注

    關注

    42

    文章

    4590

    瀏覽量

    99202
  • 人工智能
    +關注

    關注

    1780

    文章

    44560

    瀏覽量

    231300
  • 機器學習
    +關注

    關注

    66

    文章

    8173

    瀏覽量

    130887
  • ARM架構
    +關注

    關注

    14

    文章

    168

    瀏覽量

    36021
收藏 人收藏

    評論

    相關推薦

    Arm架構學習—開啟Armv9時代

    在上一篇文章“從A76到A78——在變化中學習Arm架構”中,我們了解了Arm處理器微架構的基本組成,介紹
    的頭像 發表于 11-27 16:46 ?702次閱讀
    <b class='flag-5'>Arm</b>微<b class='flag-5'>架構</b>學習—開啟<b class='flag-5'>Armv</b>9時代

    ARM Cortex?-A75核心技術參考手冊

    Cortex-A75內核是一款高性能、低功耗的ARM產品,它實現了ARMv8-A架構,支持ARMv8.2擴展(包括RAS擴展)和
    發表于 08-29 08:19

    Arm Cortex?-A77核心軟件優化指南

    Cortex-A77內核是一款高性能、低功耗的ARM產品,它實現了ARMv8-A架構,支持ARMv8.2-A擴展,包括RAS擴展、
    發表于 08-29 07:51

    Arm v8.5-AArmv9 CPU更新

    作為ARM v8.5-A架構更新的一部分,ARM添加了一些功能,旨在解決Google ProjectZero團隊和其他地方披露的安全問題。 完整的
    發表于 08-25 07:26

    ARM Cortex-A77軟件優化指南

    Cortex-A77內核是一款高性能、低功耗的ARM產品,它實現了ARMv8-A架構,支持ARMv8.2-A擴展,包括RAS擴展、
    發表于 08-24 07:30

    ARM Cortex-A715核心軟件優化指南

    Cortex-A715內核是一款性能均衡、低功耗和受限區域的產品,采用ARMv9.0-A架構。 ARMv9.0-A架構
    發表于 08-24 06:20

    ARM Cortex-A系列ARMv8-A程序員指南

    。 有關ARMv7-A架構的一般介紹,請參閱ARM?Cortex?-A系列程序員指南。 本指南還可以幫助您熟悉本卷
    發表于 08-22 07:22

    ARM體系結構參考手冊ARMv7-AARMv7-R版本

    本手冊介紹ARM?架構v7、ARMv7的A和R配置文件。 其中包括以下內容的描述: ·處理器指令集: -原始
    發表于 08-12 07:46

    ARM領域管理擴展(RME)系統架構介紹

    本章介紹Realm Management Extension(RME)系統架構。RME架構是在[1]中指定,并且被定義為Armv9體系結構的A
    發表于 08-09 07:52

    Armv9-A體系結構參考手冊

    本增補件是Armv9-A體系結構的Arm?體系結構參考手冊增補件輪廓本書介紹Armv9-A體系結構擴展,因此必須與Arm?體系結構參考手冊
    發表于 08-08 07:07

    深入介紹Arm架構的R-Profile

    本指南向您介紹Arm架構的R-Profile。您將了解Arm架構、R-Profile的演變以及所有R-Profile版本
    發表于 08-02 17:51

    如何在Cortex-M處理器實現的Armv8-M異常模型

    本指南介紹在Cortex-M處理器實現的Armv8-M異常模型。本指南還提供了示例,以幫助解釋其介紹的概念。 Arm
    發表于 08-02 13:14

    Armv8-R架構的虛擬化概念和可能性

    本指南介紹Armv8-R架構的虛擬化概念和可能性。我們用四個例子來解釋這些概念,其中大部分是基于汽車行業的應用程序。這些示例可以幫助您理解和熟悉虛擬化概念 使用
    發表于 08-02 09:27

    Armv8-AArmv9-A的內存屬性和屬性介紹

    1. 本指南介紹Armv8-AArmv9-A的內存屬性和屬性。它首先解釋內存的屬性來自何處,如何分配到內存區域,然后介紹現有的不同屬性,并解釋內存順序的基本
    發表于 08-02 09:03

    ARM Cortex-A5浮點單元技術參考手冊

    Cortex-A5 FPU是ARMv7浮點架構的VFPv4-D16實現。它提供了低成本的高性能浮點計算。 FPU支持ARM?體系結構參考手冊、ARM
    發表于 08-02 08:05
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>