Logo
Section 1 / 8

OpenMP

了解 OpenMP 这一共享内存多处理器并行编程接口

导入

OpenMP

了解 OpenMP 这一共享内存多处理器并行编程接口

OpenMP(开放多处理)是一种应用程序编程接口(API),支持在 C、C++ 和 Fortran 中进行跨平台共享内存多处理器编程。它由一组编译器指令、库函数和环境变量组成,用于影响程序的运行时行为。

OpenMP 采用一种可移植、可扩展的模型,为程序员提供了简单而灵活的接口,可用于开发从普通台式机到超级计算机等各种平台的并行应用程序。

采用混合并行编程模型的应用程序可以在计算机集群上同时使用 OpenMP 和 消息传递接口(MPI) 运行:其中 OpenMP 负责节点内部(多核)的并行处理,而 MPI 则负责节点之间的并行通信。

历史

OpenMP 由非营利性技术联盟 OpenMP 架构评审委员会(OpenMP ARB)负责管理,由多家主要计算机软硬件厂商共同制定。其首个 API 规范于 1997 年 10 月发布。最新版本规范(4.5)于 2015 年发布,新增或改进了对加速器、原子操作、错误处理、线程亲和性、任务扩展、用户自定义归约、SIMD 支持等功能的支持。

获取 OpenMP

所有最新的 OpenMP 版本均已集成到较新的 GNU 编译器(版本 4.9 及以上)中,无需单独安装!

SLURM - 工作负载管理器

OpenMP 基础