OpenMP程序进度估计与SIMD处理架构分析
一、OpenMP程序进度估计
- 评估设置
- 硬件平台 :采用四插槽系统,配备四个英特尔至强E5 - 4650处理器,每个CPU有8个核心(或16个硬件线程),时钟频率为2.7 GHz。
- 软件环境 :基于CentOS 7.4操作系统,运行内核版本为3.10.0 - 693.2.2.el7。所有二进制文件使用GCC 6.3.0编译器,并开启 -O2优化选项。线程亲和性采用先填充插槽的策略。每个实验执行十次,报告平均值。
- 评估方法 :评估了五种不同的进度估计方法,分别是:
- CPU执行指令计数器。
- CPU执行浮点指令计数器。
- 运行时系统收集的任务吞吐量统计。
- 手动进度估计。
- 本文提出的自动编译器生成的进度估计。
- 基准测试
- 为了评估本文提出的方法,选择了一组代表现实世界应用内核的基准测试应用程序。大多数基准测试来自NASA的并行基准测试套件,其余来自巴塞罗那OpenMP任务套件。具体基准测试信息如下表所示:
| 基准测试 | 来源 | 参数/类别 |
| ---- | ---- | ---- |
- 为了评估本文提出的方法,选择了一组代表现实世界应用内核的基准测试应用程序。大多数基准测试来自NASA的并行基准测试套件,其余来自巴塞罗那OpenMP任务套件。具体基准测试信息如下表所示: