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寄存器控制选择使用那种格式。可以为一条指令的不同输入选择不同的格式,从而有效地处理不同格式的数据集。我们坚信,行业共创的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。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5440

    浏览量

    125001
  • 神经网络
    +关注

    关注

    42

    文章

    4814

    浏览量

    104099
  • 人工智能
    +关注

    关注

    1809

    文章

    49164

    浏览量

    250744
  • 机器学习
    +关注

    关注

    66

    文章

    8510

    浏览量

    134901
  • ARM架构
    +关注

    关注

    15

    文章

    184

    浏览量

    38415
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    同一水平的 RISC-V 架构的 MCU,和 ARM 架构的 MCU 相比,运行速度如何?

    ARM 架构与 RISC-V 架构的 MCU 在同一性能水平下的运行速度对比,需从架构设计原点、指令集特性及实际测试数据展开剖析。以
    的头像 发表于 07-02 10:29 ?726次阅读
    同一水平的 RISC-V <b class='flag-5'>架构</b>的 MCU,和 <b class='flag-5'>ARM</b> <b class='flag-5'>架构</b>的 MCU 相比,运行速度如何?

    Arm 公司面向 PC 市场的 ?Arm Niva? 深度解读

    :异构集成与 AI 优化 Arm Niva 基于 ? Armv9.2 架构 ? 设计,整合了 Cortex-X 超大核、Cortex-A 高效核及
    的头像 发表于 05-29 09:56 ?762次阅读

    Arm 公司面向移动端市场的 ?Arm Lumex? 深度解读

    子系统(CSS)? ? 在移动端的落地形态,Lumex 旨在通过高度集成化的软硬件方案,解决移动设备在 AI 性能、能效比与开发效率上的挑战。以下从技术架构、性能突破、应用场景、生态系统及战略价值展开分析: 一、技术架构:异构计算与能效优化 Lumex 基于 ?
    的头像 发表于 05-29 09:54 ?1768次阅读

    Arm 公司面向汽车市场的 ?Arm Zena? 深度解读

    汽车市场的落地形态,Zena 旨在解决汽车智能化转型的算力需求、开发效率与功能安全挑战。以下从技术架构、性能优势、应用场景、生态系统及战略意义展开分析: 一、技术架构:异构集成与功能安全强化
    的头像 发表于 05-29 09:51 ?1434次阅读

    ARM最强超大核Cortex-X925与小米玄戒O1的深度解析

    ARM Cortex-X925:架构革新与性能巅峰的全新标杆 作为ARM迄今最强大的CPU核心,Cortex-X925基于Armv9.2-A架构
    的头像 发表于 05-23 15:29 ?1643次阅读

    Arm助力开发者加速迁移至Arm架构云平台 Arm云迁移资源分享

    随着基于 Arm 架构的云实例日益扩展,越来越多的用户正从传统平台迁移至 Arm 平台上。
    的头像 发表于 04-09 18:23 ?702次阅读

    Arm 推出 Armv9 边缘 AI 计算平台,以超高能效与先进 AI 能力赋能物联网革新

    9 架构的超高能效 CPU——Arm Cortex-A320 以及对 Transformer 网络具有原生支持的 Ethos-U85 AI 加速器为核心的边缘AI 计算平台,可支持运行超 10 亿参数
    的头像 发表于 03-06 11:43 ?1369次阅读
    <b class='flag-5'>Arm</b> 推出 <b class='flag-5'>Armv</b>9 边缘 AI 计算平台,以超高能效与先进 AI 能力赋能物联网革新

    Arm Cortex-A320 CPU助力嵌入式设备实现高能效AI计算

    Arm Cortex-A320 是目前最小型的 Armv9-A 架构 CPU。得益于该处理器的推出,开发者现在能有更多选择决定如何处理物联网边缘人工智能 (AI) 工作负载。然而,面对
    的头像 发表于 02-27 17:17 ?815次阅读
    <b class='flag-5'>Arm</b> Cortex-<b class='flag-5'>A</b>320 CPU助力嵌入式设备实现高能效AI计算

    详解Arm Cortex-A320 CPU的特性

    Arm Cortex-A320 CPU 的推出具有重要的里程碑意义。作为首个基于 Armv9 架构的超高能效 CPU,这一突破性的处理器为功耗有限的设备引入了此前仅在尖端移动计算解决方
    的头像 发表于 02-27 17:13 ?1108次阅读

    Arm发布基于Armv9架构的Cortex-A320处理器

    边缘 AI 需要更卓越的计算性能、更强大的安全性,以及更出色的软件灵活性。随着软件愈发复杂化,Armv9 架构应运而生,以提供先进的机器学习 (ML) 和 AI 功能,并具备增强的安全特性。该
    的头像 发表于 02-27 17:10 ?854次阅读

    一文详解Arm架构Armv9.6-A的最新功能

    Arm CPU 是当今人工智能 (AI) 赋能软件的关键,它可解释、处理和执行指令。Arm 指令集架构 (ISA) 作为硬件和软件的接口,指示处理器做什么和怎么做。Arm ISA 持续
    的头像 发表于 12-17 10:22 ?3618次阅读
    一文详解<b class='flag-5'>Arm</b><b class='flag-5'>架构</b><b class='flag-5'>Armv9.6-A</b><b class='flag-5'>中</b>的最新功能

    ARM技术是什么?国内有哪些ARM厂家呢?一起来了解一下!

    (AArch64)。这使得ARM处理器能够兼容更多的软件和应用,提高系统的灵活性和兼容性。 二、ARM技术发展历程 ARM架构经历了多个版本的迭代,不断提升性能和功能。以下是几个主要版
    发表于 11-18 16:35

    Arm Cortex-X925为用户实际需求提供强劲性能

    作为 Arm 目前性能最强大的 CPU 设计之一,基于 Armv9.2 架构Arm Cortex-X925 在 Geekbench 6.2 基准测试
    的头像 发表于 10-27 11:09 ?1167次阅读

    Armv9 CPUSVE2的实际用例

    随着每一代新产品的推出,Arm CPU 都会实现代际性能提升,并引入架构改进,以满足不断演进的计算工作负载的需求。本文将重点介绍三个用例,以展示 Armv9 CPU 的
    的头像 发表于 10-21 09:54 ?1139次阅读
    <b class='flag-5'>Armv</b>9 CPU<b class='flag-5'>中</b>SVE2的实际用例

    如何学习ARM

    ARM 处理器架构: 学习 ARM 处理器的架构是学习的核心。ARM 架构有不同的版本,如
    发表于 10-11 10:42