文档信息
前言
1. OpenMP API 简介
2. 编译并运行 OpenMP 程序
3. 实现定义的行为
3.1 任务调度点
3.2 内存模型
3.3 内部控制变量
3.4 线程的动态调整
3.5 循环指令
3.6 构造
3.6.1 SECTIONS
3.6.2 SINGLE
3.6.3 ATOMIC
3.7 例程
3.7.1 omp_set_num_threads()
3.7.2 omp_set_schedule()
3.7.3 omp_set_max_active_levels()
3.7.4 omp_get_max_active_levels()
3.8 环境变量
3.9 Fortran 问题
3.9.1 THREADPRIVATE 指令
3.9.2 SHARED 子句
3.9.3 运行时库定义
4. 嵌套并行操作
5. 任务处理
6. 自动确定变量的作用域
7. 作用域检查
8. 性能注意事项
A. 子句在指令中的放置
索引
非绑定 (untied) 任务区域中的任务调度点与绑定 (tied) 任务区域中的任务调度点出现在相同的点。因此,在非绑定 (untied) 任务区域内,OpenMP 规范会定义以下任务调度:
遇到的任务构造
遇到的任务等待 (taskwait) 构造
遇到的任务让出 (taskyield) 构造
遇到的屏障指令
隐式屏障区域
非绑定 (untied) 任务区域末尾