编译新闻 2026.10.14 · 北京

科技

Go 引入实验性跨平台 SIMD API:一套代码覆盖多架构向量指令

Go 团队介绍 GOEXPERIMENT=simd 下的可移植 SIMD 包,屏蔽各 CPU 向量长度与掩码差异,目标接近手写汇编性能并可在无硬件支持时仿真。

编译 Newsdesk 2026.09.25 来源 The Go Blog

David Chase 与 Junyang Shao 在 Go 官方博客撰文:Go 1.26/1.27 在实验开关下提供 SIMD 能力。架构相关的 archsimd 之外,1.27 进一步推出平台无关、大小无关的 simd 包,灵感来自 C++ Highway,把固定向量长度从类型系统中拿掉,只暴露各平台交集中的操作,缺口用高效仿真补齐。

启用方式为 GOEXPERIMENT=simd。向量类型如 simd.Float32s,可从切片加载/写回,并支持掩码选择。文章详述各架构在向量长度、掩码与指令集上的差异,以及与 archsimd 互转、GODEBUG 调试验证等机制,并预告 Go 1.28 将扩展操作与 SVE 支持。

出处 · 可点开原文

  1. The Go Blog
编译新闻 · news.coderluny.com