ARM的首个64位架构核心Cortex-A57曾一度瞄准服务器市场,但因为各方面的原因无功而返,ARM也随后将重心转回到移动领域,最新核心Cortex-A73就决口不提服务器应用。
不过现在,ARM又宣布了ARMv8-A可伸缩矢量扩展(Scalable Vector Extensions/SVE),专为高性能计算、数据中心而生。
SVE将作为ARMv8-A指令集的可选扩展,支持最低128-bit、最高2048-bit。如果选择集成在硬件内,它也极具灵活性,与代码的位宽无关,调度器会自动组织计算,补足硬件,比如说128-bit SVE核心可以执行2048-bit代码,2048-bit核心也可以运行绑定后的128-bit代码。
ARM希望能通过软件转向硬件的方式,解决矢量计算难题,而且和64/128-bit矢量上的NEON是不同的。
ARM很快就会向GCC、LLVM编译器提交补丁,支持VSE自动矢量转换。
性能方面,ARM实验室结果显示,特定数据集搭配SVE能获得明显的加速,而且未来代码路径也能利用SVE的优势。
富士通已经率先签下了ARMv8-A SVE的授权,将在2020年的Post-K RIKEN超级计算机中包含这种新的核心。