AMD与NVIDIA。他们如何区分OpenCL的支持?

时间:2016-12-12 10:14:15

标签: amazon-ec2 opencl nvidia amd

我有一个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显卡或仅使用英特尔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跨平台。

1 个答案:

答案 0 :(得分:1)

您可以安装多个OpenCL平台(NVIDIA CUDA,AMD APP,Intel)。 GPU的实际OpenCL实现是显示驱动程序的一部分。 AMD APP还附带了一个用于CPU(AMD或Intel)的OpenCL驱动程序。

Apple还拥有自己的OpenCL平台,他们应该支持机器中安装的CPU和GPU。

因此,如果您想在服务器上使用NVIDIA GPU,您可能应该使用NVIDIA CUDA平台,尽管有些人声称也应该可以使用AMD APP。理论上,只要安装了NVIDIA OpenCL运行时驱动程序,任何平台都应该可以正常工作。