I just tried to get the ATI Stream SDK 2.3 running in a Linux environment on hosts with two AMD Opteron 2356 CPUs.
I did follow the instructions (which worked on other machines) and did the ICD registration etc.
Anyhow, it does not work. The error implies some problems with die ICD registration, but all the files are on their expted place in /etc/OpenCL/vendors.
From the HelloCL-example, I get:
Getting Platform Information
Platform::get() failed (-1001)
CLInfo results in:
terminate called after throwing an instance of 'cl::Error'
The system is 64 Bit, but I tried also tried 32 Bit (with the according libraries) which made no difference at all.
One possibility could be that the CPU is not supported. But this seems not very likely as it supports SSE, SSE2, and SSE4a (according to /proc/cpuinfo). Surprisingly there is no support for SSE3 stated. But the SDK runs with SSE2 on an old Pentium-M of mine.
Maybe there are some undocumented dependencies which could be broken?
is there a list of CPUs which are supported by the APP/Stream SDK?
The FAQ states:
The CPU component of OpenCL bundled with the ATI Stream SDK works with any x86 CPU
with SSE3 or later, as well as SSE2.x or later. AMD CPUs have supported SSE3 (and later)
since 2005. Some examples of AMD CPUs that support SSE3 (or later) are the AMD
AthlonTM 64 (starting with the Venice/San Diego steppings), AMD AthlonTM 64 X2, AMD
AthlonTM 64 FX (starting with San Diego stepping), AMD OpteronTM (starting with E4
stepping), AMD SempronTM (starting with Palermo stepping), AMD PhenomTM, AMD TurionTM
64, and AMD TurionTM 64 X2
I tried to file a support request, but the Opteron 2356 is not listed there in any Opteron product line.
So could someone from AMD please give me a statement if the Opteron 2356 is supported by the Stream SDK (/proc/cpuinfo states "3" as its stepping).
Ok, thank you. I could exclude the CPU from the list of possible reasons. On The cluster's headnode with nearly the same hardware, the SDK is running.
Together with the admin, I'm trying to figure out which subtle difference between the CentOS 5 installation on the headnode and the compute nodes causes OpenCL applications not to run on the compute nodes (but on the headnode).
The libraries are all the same and even the kernel version only differs in the fourth place of the version number.
Finally fixed, the reason was of course something totally else.