C++ 获得新平台的官方支持:这对开发者意味着什么
C++ 开发者社区迎来重要消息:C++ 编程语言现已正式支持一个新的计算平台。这一事件为工程师和公司开启了在当代异构环境中创建高性能应用程序的更多可能性。这指的是 C++ 与 RISC-V 平台的全面集成——RISC-V 是一种开放指令集架构 (ISA),它在嵌入式系统、物联网中迅速普及,现在也开始应用于服务器解决方案。
什么是 RISC-V,为什么它很重要
RISC-V 是一种开放、模块化的架构,无需许可。与专有的 ARM 或 x86 不同,RISC-V 允许开发者免版税地根据自身需求定制处理器核心。主要优势:
- 开放性与灵活性: 无需支付许可费,并且能够针对特定项目修改架构。
- 模块化: 支持扩展(向量计算、安全性、机器学习),而无需更改基本指令集。
- 不断增长的生态系统: 目前 RISC-V 已用于微控制器、AI 加速器,并且最近也开始用于服务器处理器(例如 StarFive、SiFive)。
C++ 为支持 RISC-V 做了哪些改变
关键更改已纳入 C++ 标准库以及 GCC/LLVM 编译器工具链。现在开发者可以:
- 为 RISC-V 编译 C++ 代码,并完全支持 C++20/23 标准,包括模块、协程和概念。
- 使用针对 RISC-V 保证的原子操作,这对于新处理器上的多线程应用程序至关重要。
- 获得优化的向量扩展 (RVV),从而无需手动汇编优化即可在 C++ 中高效执行机器学习和信号处理任务。
- 利用新的硬件功能:受保护内存、加密扩展以及实时处理。
开发者的实际收益
C++ 与 RISC-V 的集成开辟了多个方向:
- 嵌入式系统和物联网: C++ 代码可以在能效高的 RISC-V 微控制器上以最小的开销运行。
- 高性能计算 (HPC): 服务器级 RISC-V 芯片已展现出具有竞争力的性能,而 C++ 仍然是 HPC 应用程序的主要语言。
- 安全性: C++ 中对硬件进程隔离 (PMP) 的支持允许创建无需第三方 RTOS 的安全系统。
如何开始在 RISC-V 上使用 C++
进行实验需要:
- 安装支持 RISC-V 的最新版本 GCC (≥13) 或 Clang (≥17)。
- 下载用于 RISC-V 的 Spike 或 QEMU 模拟器——它允许在没有真实硬件的情况下运行 C++ 代码。
- 使用标准编译标志,例如:
g++ -march=rv64gc -std=c++23 program.cpp -o program。 - 使用 RISC-V International 的官方 SDK 进行测试。
C++ 支持 RISC-V 的消息并非