💡
原文中文,约600字,阅读约需2分钟。
📝
内容提要
本文介绍了OpenMP并行编程接口及其性能相关环境变量,其中OMP_NUM_THREADS是最常用的环境变量,建议将其设置为不超过物理CPU数。
🎯
关键要点
- OpenMP是面向共享内存多线程并行接口,由计算机硬件和软件厂商共同制定。
- OpenMP程序具有良好的可移植性,可以在多个操作系统和硬件平台上运行。
- OpenMP程序的性能与环境变量密切相关,本文介绍了几个与性能相关的环境变量。
- OMP_NUM_THREADS是最常用的环境变量,设置parallel区域的初始线程数,默认值为可用逻辑CPU数量。
- 建议将OMP_NUM_THREADS的值设置为不超过物理CPU数,以获得最大性能。
- parallel区域的执行线程数还与omp_set_num_threads、num_threads值、OMP_DYNAMIC和omp_set_dynamic等因素有关。
- 使用示例中,默认使用4个线程,且可以设置不同层次的线程数。
➡️