i had install AMDAPPSDK-3.0 for my laptop with intel i5 3rd generation configuration. i have no GPU other than my intel's processors inbuilt graphics card.
i had installed the SDK in the below way:
./AMD-APP-SDK-v3.0.130.136-GA-linux64.sh
my .bashrc file has:
**export LD_LIBRARY_PATH=/home/roadeo/AMDAPPSDK-3.0/lib/x86_64/
export AMDAPPSDKROOT="/home/roadeo/AMDAPPSDK-3.0"
export OPENCL_VENDOR_PATH="/home/roadeo/AMDAPPSDK-3.0/etc/OpenCL/vendors/"**
When i run clinfo to check whether OPENCL is installed properly or not. But i get this error:
**terminate called after throwing an instance of 'cl::Error'
what(): clGetPlatformIDs
Aborted core dumped.**
after googling i with frustration install fglrx using sudo apt-get. When i run clinfo i get a lot of details about opencl versions, vendor etc.. I don't know whether is it required or not.
What i m doing wrong kindly suggest.
I'm not familiar with AMD drivers on Linux, but it seems to me that installing the SDK only installed a bunch of examples, header files, etc. but did not actually install any OpenCL runtimes. Installing fglrx probably installed the CPU runtime, in which case the only device you'll see listed is your CPU. If you want to write OpenCL code for your GPU, you'll need to look at Beignet: https://freedesktop.org/wiki/Software/Beignet/
Related
I am running old linux software (kubuntu 8.04) on a number of systems and have to keep the main software for a while. It works fine on old systems, but now I have to install it on a new system, with new hardware.
I ran into problems with the network. The old system was Realtek RTL8111CP and now it is RTL81111E. The driver is r8169. I am trying to install an appropriate driver and hope that r8168-8.045.08 will work.
I am trying to compile it. I installed the packages build-essential and linux-header-generics, which I think are required.
When building I get lots of errors. Just as an example:
/home/donken/r8168-8.045.08/src/r8168.h:69: error: ‘struct dev_pm_info’ has no member named ‘runtime_status’
I suppose there is a PATH missing or some packages. Any ideas?
I have been creating a few Ubuntu DSVMs and DLVMs on Azure with GPU and I keep getting intermittent errors. These manifest by nvidia-smi being really slow or getting the following error:
2018/01/11 19:42:33 Error: nvml: Driver/library version mismatch
This will appear if I try to run nvidia-smi or nvidia-docker. A reboot usually fixes it but it can reappear.
Does this sound like an intermittent error? Is there something that I can do to mitigate this?
NVIDIA just released a new version of the GPU driver for the GPUs used in Azure. The Ubuntu DSVM is configured to automatically install updates, so these will be installed for you in the background. The issue, though, is that the driver is compiled into the kernel, so you must reboot to get the new driver. The message Driver/library version mismatch means that the version in the kernel can’t use the installed libraries (because they were upgraded). This is why rebooting usually fixes it.
There is a second issue you might be facing: Azure released a new kernel a few days ago that is incompatible with the 387 version of the GPU driver. You won’t get this driver by default on the DSVM, but you might if you installed other packages. This error is different – something like nvidia-smi could not communicate with the nvidia module. The only way to fix it is to (1) get the very latest kernel with apt update and apt upgrade, then reboot, and (2) install a different driver with apt install nvidia-384.
I am trying to run my OpenCL application at my Intel CPU and Nvidia GPU at the same time for load balancing purposes. But i have the problem that only the Nvidia Plattform is detected.
I use this cl.hpp call:
std::vector<cl::Platform> m_platforms;
cl::Platform::get(&m_platforms);
My system setup:
Linux Arch 3.14.6-1-ARCH
Intel Haswell 4770K
Nvidia 250GTS
installed packages:
nvidia-libgl 337.25-1
opencl-nvidia 337.25-1
nvidia 337.25-1
nvidia-utils 337.25-1
mesa 10.2.1-1
opencl-headers12
intel-opencl-sdk 2014R1-2
opencl-icd 1.2.11.0-4
Both platforms (Intel, Nvidia) have there .icd files in /etc/OpenCL/Vendors. So I don't know what i can try to finally get an Intel CPU OpenCL platform recognized. Maybe you have some ideas?
For now, it would be best to uninstall both of these packages (intel-opencl-sdk and intel-opencl-runtime) and install beignet from the community repository.
sudo pacman -S --needed beignet
The package provides the same functionality and allows you to use the Intel GPU cores also.
I can confirm that it coexists well with other OpenCL platforms such as that provided by NVIDIA, as tested on an Optimus-capable ASUS G750JM. Currently switching via bbswitch and offloading GL-renders via PRIME and primus.
Some pipelines (pyrit) can use OpenCL simultaneously on both platforms, boosting the performance noticeably.
I found an additional package called "intel-opencl-runtime". The intel-opencl-sdk contains the icd file, but it seems not to be enough to be able to run OpenCL apps with the Intel platform. To be able to run OpenCL using the Intel platform it was necessary to also install the above mentioned runtime package.
Yesterday, I compiled the 3.5 kernel in debian wheezy (testing), in a thinkpad edge S430 (i5). I did it following this blog, with all the default options. It seems succesful, but then, I tried to install the proprietary nvidia driver with m-a auto-install nvidia-kernel. The install is not able to proceed until the correct headers are installed. However, I have tried both manually to install linux-headers-3.5.0-18 and the linux-headers-amd64 package, but module assistant is not able to see them, showing the following message:
Bad luck, the kernel headers for the target kernel version could not be found and you did not specify other valid kernel headers to use.
There are other ways to install the driver, but I think that the problem with headers is broader.
Although I have been a Debian user for some years, I am far from being an expert, and I am not clear with the problems that I might face when compiling a 3.5 kernel on a Debian testing, so any help and explanation will be much appreciated.
First run
sudo m-a prepare
Getting source for kernel version: 3.8.5-ck1
Kernel headers available in /usr/src/linux-headers-3.8.5-ck1
Creating symlink..
Then do
sudo m-a a-i nvidia
and it should work.
Note that I did this on 3.8.5-ck1, but I built and installed that kernel in a similar fashion to how I wrote up the 3.5 build that you followed.
I'm accessing a remote machine that has a good nVidia card for CUDA computing, but I can't find a way to know which card it uses and what are the CUDA specs (version, etc.). I used the "lspci" command on the terminal, but there is no sign of a nvidia card. I'm pretty sure it has a nVidia card, and nvcc seems to be installed.
But I really want to figure out the card and CUDA specs. Any ideas?
Thanks!
If you can find where the CUDA SDK directory has been installed then you can just run the deviceQuery example which will tell you all you need to know and more. The executable should be at $(SDK)/C/bin/linux/release/deviceQuery - if it's not there then you may need to build the samples first:
$ cd $(SDK)
$ make
$ ./C/bin/linux/release/deviceQuery
The CUDA SDK directory is typically named NVIDIA_GPU_Computing_SDK (more recent CUDA versions) or just NVIDIA_CUDA_SDK (older CUDA versions).
If you have all of Cuda installed, then just run:
nvidia-smi