本文主要探究OpenCL的GPU和多核CPU的异构计算问题,主要简要阐述了什么是OpenCL异构计算,讲述CPU和GPU各自的特点,并且把他们结合起来做异构计算的前景。然后具体讲述在高性能实验室Linux工作站上如何搭建多GPU和多核CPU异构OpenCL环境。最后用实验验证了所安装的OpenCL异构计算环境能够正常工作,说明什么是OpenCL的多GPU与多核CPU异构环境的platform,device等。
用两篇文章介绍以上内容,转载请注明原作者及地址!
3 测试OpenCL程序
3.1 获取PlatForm信息
本实验主要是用来显示platform的个数,各个platform的名称,id号。
-
实验目的:
-
1ArchLinux和RedHatLinux两台工作站上的platform个数
-
2各个platform(AMD,NVIDIA,INTEL等)的id号,是固定的,还是是随机的,个人认为是固定,每个品牌一个ID.
-
程序的主要3步骤,详情见附件三的源代码!
/*第1步,取得platform数量(AMD,NVIDIA,Intel等)*/
/*第2步,获得各个platform的ID号,假设有多个platform(经常的情况是只有一个)*/
/*第3步,输出各个platform的ID号,名称,假设有多个platform*/
-
编译运行测试
编译:
make
测试:
make test
输出显示:
-
高性能实验室workstation-0Arch Linux 64位操作系统:
-
1.Arch Linux 64位操作系统
-
2.64位AMD处理器,32G内存,500G硬盘,双显卡
-
3.显卡1:华硕HD6870,AMD的GPU芯片:ATIRadeon HD 6870
-
4.显卡2:华硕HD6870,AMD的GPU芯片:ATIRadeon HD 6870
NVIDIA GPU:
num of platform: 1
ID: 19412080 //(每次运行的id号都不一样)
PLATFORM: NVIDIA Corpration
-
高性能实验室workstation-1Redhat EL 6.1 64