我有一个EC2实例。它的规格是:
g2.2xlarge Instance.
Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz
NVIDIA GRID GPU (Kepler GK104) with
Ubuntu 14.04 - 64 bit.
我有两个问题:
1。在此系统上安装CUDA工具包后,使用clinfo
时,我将有以下输出
clinfo: /usr/local/cuda-8.0/targets/x86_64-linux/lib/libOpenCL.so.1: no version information available (required by clinfo)
Platform Version: OpenCL 1.2 CUDA 8.0.46
Platform Name: NVIDIA CUDA
Platform Vendor: NVIDIA Corporation
Number of devices: 1
Device Type: CL_DEVICE_TYPE_GPU
Name: GRID K520
Vendor: NVIDIA Corporation
Device OpenCL C version: OpenCL C 1.2
Driver version: 367.57
Profile: FULL_PROFILE
Version: OpenCL 1.2 CUDA
//with other info too which I can paste if required.
我的问题是:这是一个好习惯吗?使用OpenCL编码时使用GPU吗?
2。,如果我安装AMD App SDK怎么办?可以使用OpenCL使用NVIDIA图形卡,还是仅使用Intel CPU?
我在另一个具有相同规格的EC2实例上安装了AMD App SDK,并从clinfo
中找到了以下内容:
Platform Version: OpenCL 1.2 AMD-APP (1214.3)
Platform Name: AMD Accelerated Parallel Processing
Platform Vendor: Advanced Micro Devices, Inc.
Number of devices: 1
Device Type: CL_DEVICE_TYPE_CPU
Name: Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz
Vendor: GenuineIntel
Device OpenCL C version: OpenCL C 1.2
Driver version: 1214.3 (sse2,avx)
Profile: FULL_PROFILE
Version: OpenCL 1.2 AMD-APP (1214.3)
这是否意味着OpenCL只能使用CPU。GPU(NVIDIA)永远不会使用?如果是这种情况,那么我应该回到NVIDIA CUDA工具包以使Opencl使用GPU或其他方法/更好的练习?
在两个中,我应该使用哪一个?CUDA工具套件?还是AMD App SDK?我的目的是在各种GPU上运行OpenCL跨平台。
您可以安装多个OpenCL平台(Nvidia Cuda,AMD App,Intel)。GPU的实际OPENCL实现是显示驱动程序的一部分。AMD应用程序还带有CPU(AMD或Intel)的OpenCL驱动程序。
Apple还具有自己的OpenCL平台,他们应该支持机器中安装的CPU和GPU。
因此,如果您想在服务器上使用NVIDIA GPU,则可能应该使用NVIDIA CUDA平台,尽管有些人声称应该也可以使用AMD应用程序。从理论上讲,只要您安装了nvidia opencl运行时驱动程序,任何平台都应工作。