I have an EC2 instance. It's specs are:
g2.2xlarge Instance. Intel(R) Xeon(R) CPU E5-2670 0 @ 2.60GHz NVIDIA GRID GPU (Kepler GK104) with Ubuntu 14.04 - 64 bit.
I have two questions:
1. After installing the CUDA toolkit on this system, I have the following output when using 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.
My question is: Is this a good practice? Will the GPU be used when coding with OpenCL?
2. Also what if I install the AMD APP SDK? Would that be able to use the Nvidia Graphic Card using OpenCL or will it use only the Intel CPU?
I installed the AMD APP SDK on another ec2 instance with the same specs and found out the following from 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)
Does it mean that OpenCL will only be able to use the CPU. And the GPU (nVidia) will never be used? If this is the case, then should I turn back to the nVidia CUDA toolkit to make OpenCL use the GPU or is there some other way/better practise?
Out of the two, which one should I use? The CUDA tool kit? or the AMD APP SDK? My purpose is to run OpenCL cross-platform on all kinds of GPUs.