timeinfo1.c代码

 #include<stdio.h>
#define N 100
int main()
{
int A[N];
#pragma acc kernels
{
for(int i=; i<N; i++) A[i] = ;
}
printf("A[2]=%d\n",A[]);
return ;
}

编译信息:

编译器给出的信息表明, 编译器识别到了第6行的 OpenACC 导语,并生成了相应的数据传递代码; 第 9 行的 for 循环也被成功并行化。运行代码前,需要将 PGI 编译器特有的环境变量 export PGI_ACC_TIME 赋值为 1, 打开时间统计功能, 该功能默认是关闭的。

PGI$ export PGI_ACC_TIME=

运行编译好的可执行文件

PGI$ ./timeinfo1.exe

(如下解释定有疏忽,待改正)

6: region entered 1 time 意为在第 6 行进入加速区域,该区域被执行 1 次。

8: kernel launched 1 times 表明内核函数被启动了 1 次

grid: [1]  block: [128]表明,内核使用的线程网络(grid)包含 1 个线程块(block),每个线程块里包含 128 个线程。

time(us):total=3max=3min=3avg=3这一行表明内核运行的总时间为 3微秒,最大、最小、平均时间都是 3微秒,这是因为只有一个内核函数。


timeinfo2.c代码

 #include<stdio.h>
#define N 100
int main()
{
int A[N];
for(int i=; i<N; i++) A[i]=;
#pragma acc data copy(A)
{
for(int i=; i<N; i++)
{
#pragma acc kernels
{
for(int i=; i<N; i++) A[i] += ;
}
}
printf("A[1]=%d\n",A[]);
}
printf("A[2]=%d\n",A[]);
return ;
}

编译信息:

(如下解释定有疏忽,待改正)

7: region entered 1 time 含义为在第 7 行的 data 导语处进入加速器区域, 该区域被执行1 次。

11: region entered 100 times 含义为第 11 行的导语区域被执行了 100 次, time(us):total=8,000 含义为导语区域的执行总时间为 8000 微秒

13: kernel launched 100 times 含义为 13 行的循环生成的内核被启动了 100 次,

grid: [1] block: [128]含义为内核使用的线程网格(grid)包含 1 个线程块,每个线程块(block)包含 128 个线程。

time(us): total=8,000 max=1000 min=0 avg=80 含义为,在 100 个内核中, 单个内核花费的时间最长为 8000 微秒,最小为 0 微秒,平均为 80 微秒, 100 个内核执行的总时间为 409 微秒。

最新文章

  1. 用遗传算法GA改进CloudSim自带的资源调度策略
  2. C#使用资源文件的方法
  3. Python学习【第十一篇】模块(1)
  4. POI读写Word docx文件
  5. byte和hexstring,int,string等的转换类
  6. Linux_Struct file()结构体
  7. Optimal Milking
  8. S3C6410嵌入式应用平台构建(六)&mdash;&mdash;linux-3.14.4移植到OK6410-(Yaffs2文件制作)
  9. 通过 jdbc 分析数据库中的表结构和主键外键
  10. Top 10 JavaScript编辑器,你在用哪个?
  11. Luogu P1257 平面上的最接近点对_暴力
  12. Python_Mix*异常处理
  13. 安卓Android基础四天
  14. python 的基础 学习 第三
  15. 双引号与尖括号的区别 and 相对路径与绝对路径
  16. 【IT笔试面试题整理】给定二叉树,给每层生成一个链表
  17. ORACLE递归查询(适用于ID,PARENTID结构数据表)
  18. java并发编程:线程安全管理类--原子操作类--AtomicLong
  19. 密码嗅探工具dsniff
  20. php二维数组去除重复值

热门文章

  1. Pycharm 查看一个类的继承关系图
  2. 输入http://localhost/,apache出现You don&#39;t have permission to access/on this server.的提示,如何解决?
  3. JavaSE---死锁
  4. 垃圾收集GC
  5. Unity 为什么有时候播放音乐(音效)会没有声音
  6. Java基础09-循环结构
  7. [转]JS判断访问设备、客户端操作系统类型
  8. php高级教程
  9. Windows窗体应用开发3--配置标准控件1
  10. Winform窗体“空闲事件”