It seems that a lot of GPU problems revolve around specific versions of drivers. Though AMD has their own support structure, you can often learn from information reported by others who fold.
I have the folding@home client installed on my computer and have been folding on the CPU slot without problems. I wanted to fold on the GPU and added a GPU slot from FAHControl. Since adding and starting the GPU slot, I keep on getting bad work units. What happens is the WU downloads, folding starts and core shuts down immediately, and then the WU is returned.
I am using a HIS 5750 GPU with the open source driver
Log containing system details
I looked up the results for the three WUs you reported.
Project: 13500 (Run 1, Clone 894, Gen 1) -- reassigned once (so far) producing a second error by someone with an ATI GPU.
Project:9177 run:23 clone:7 gen:0 -- not yet completed by a re-assignee.
Project:13110 run:39 clone:0 gen:240 -- reassigned and successfully completed by someone with a nV GPU.
Core_21 works best if the GPU has at least a minimal ability to do double precision floating point. Juniper is reported to have that capability. I can't think of another reason why there should be a difference between the one successful completion by a nV GPU and a failure by an AMD GPU.
Somebody from Development will need to ascertain what kind of problem you've encountered and whether it is related to the differences between ATI and nV GPUs.
I'm not sure if the open source driver driver contains all the necessary code. Which driver revision is it? Have you tried downloading the latest version for that GPU from the AMD website? That often solves problems like that.
The old closed-source Catalyst drivers are no longer supported on new Linux kernels, and will not run in Ubuntu 16.04 or later.
The new hybrid open/closed-source AMDGPU drivers don't work with any of the current AMD APUs (which all have 2nd-gen GCN graphics; the AMDGPU driver has only "experimental" support for 2nd-gen GCN, but I haven't been able to get the driver to even load).
So, the only option here is to use the open-source radeon driver.
Hardware configuration: Intel i7-4770K @ 4.5 GHz, 16 GB DDR3-2133 Corsair Vengence (black/red), EVGA GTX 760 @ 1200 MHz, on an Asus Maximus VI Hero MB (black/red), in a blacked out Antec P280 Tower, with a Xigmatek Night Hawk (black) HSF, Seasonic 760w Platinum (black case, sleeves, wires), 4 SilenX 120mm Case fans with silicon fan gaskets and silicon mounts (all black), a 512GB Samsung SSD (black), and a 2TB Black Western Digital HD (silver/black).
$ ./FAHBench-cmd --device-id=0 --platform=CPU --precision=single --workunit=dhfr --nan-check=0 --run-length=60
FAHBench Simulation
-------------------
Plugin directory: "/home/april/foldingathome/FAHBench-2.2.5-Linux/lib/plugins"
Work unit: dhfr
WU Name: Dihydrofolate reductase
WU Description: A common system for benchmarking molecular dynamics
System XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/system.xml
Integrator XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/integrator.xml
State XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/state.xml
Step chunk: 40
Device ID 0; Platform CPU
Run length: 60s
Loading plugins from plugin directory
Number of registered plugins: 3
Deserializing input files: system
Deserializing input files: state
Deserializing input files: integrator
Creating context (may take several minutes)
Checking accuracy against reference code
Creating reference context (may take several minutes)
Comparing forces and energy
Starting Benchmark
Benchmarking finished
Final score: 2.5321
Scaled score: 2.5321 (23558 atoms)
$ ./FAHBench-cmd --device-id=0 --platform-id=0 --platform=OpenCL --precision=single --workunit=dhfr --nan-check=0 --run-length=60
FAHBench Simulation
-------------------
Plugin directory: "/home/april/foldingathome/FAHBench-2.2.5-Linux/lib/plugins"
Work unit: dhfr
WU Name: Dihydrofolate reductase
WU Description: A common system for benchmarking molecular dynamics
System XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/system.xml
Integrator XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/integrator.xml
State XML: /home/april/foldingathome/FAHBench-2.2.5-Linux/share/fahbench/workunits/dhfr/state.xml
Step chunk: 40
Device ID 0; Platform OpenCL; Platform ID 0
Run length: 60s
Loading plugins from plugin directory
Number of registered plugins: 3
Deserializing input files: system
Deserializing input files: state
Deserializing input files: integrator
Creating context (may take several minutes)
Something went wrong:
Error compiling kernel: input.cl:124:50: warning: implicit declaration of function 'native_rsqrt' is invalid in C99
input.cl:124:67: warning: implicit declaration of function 'native_recip' is invalid in C99
unsupported call to function native_rsqrt in determineNativeAccuracy
Any help interpreting the error message at the end? Does FAH require OpenCL >1.1?
Here's output from clinfo in case it might provide some clues:
Number of platforms 1
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 MESA 11.2.0
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name Clover
Number of devices 1
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 MESA 11.2.0
Driver Version 11.2.0
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Max compute units 6
Max clock frequency 720MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 64
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 0 / 0 (n/a)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (n/a)
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Address bits 32, Little-Endian
Global memory size 1073741824 (1024MiB)
Error Correction support No
Max memory allocation 268435456 (256MiB)
Unified memory for Host and Device Yes
Minimum alignment for any data type 128 bytes
Alignment of base address 1024 bits (128 bytes)
Global Memory cache type None
Image support No
Local memory type Local
Local memory size 32768 (32KiB)
Max constant buffer size 268435456 (256MiB)
Max number of constant args 16
Max size of kernel argument 1024
Queue properties
Out-of-order execution No
Profiling Yes
Profiling timer resolution 0ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Device Available Yes
Compiler Available Yes
Device Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_fp64
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Clover
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [MESA]
clCreateContext(NULL, ...) [default] Success [MESA]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1)
Platform Name Clover
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1)
Platform Name Clover
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.8
ICD loader Profile OpenCL 1.2
NOTE: your OpenCL library declares to support OpenCL 1.2,
but it seems to support up to OpenCL 2.1 too.
I am having the same issue on Ubuntu 16.04 using the radeon driver for a 7950 and 270(x?) GPU, Hawaii and Tahiti. They say, ready, switch to running, then back to ready, and failed after a few attempts. Looking at output from FAHclient this seems to be the issue:
jwinterm wrote:That was after setting Core21, I had previously tried with it set to -1 but I think it was still using 21.
I don't understand.
You cannot select which FahCore_xx is going to be used. Each project download will select the FAHCore software will be used (-17/-18/-21 for the GPU, _a4/-a7 for the CPU)
The number of CPU cores can be allocated up to the number present on your hardware --- and the -1 setting means the software should pick a desirable value (although FAHClient V7.4.4 doesn't do a very good job if you have 8 CPUs and one GPU.)
The ERROR:Bad platformId size. indicates a problem with your GPU drivers. You didn't include the top 100 lines of your log, but if you're running Windows 10, Microsoft has probably removed driver components that are essential to FAH. Reinstall the driver from AMD.com (or NVidia.com).
bruce wrote:
...
You didn't include the top 100 lines of your log, but if you're running Windows 10, Microsoft has probably removed driver components that are essential to FAH. Reinstall the driver from AMD.com (or NVidia.com).
I said in my post Ubuntu 16.04 using the open source radeon driver. My GPUs (or at least one of them) isn't supported by the new AMD GPU PRO driver for Ubuntu, so I'm stuck with Radeon; they're actually Curacao and Tahiti chipsets, not Hawaii as I said in original post. Is there any way to use or plans to support the Radeon open source driver for Ubuntu?
Integrated GPUs (which are built into the CPU's chipset) do not perform well, even if you do manage to configure the right drivers (and that can be a challenge). Discrete GPUs (on an add-in board) generally have many more shaders and complete FAH results much faster. While the iGPU is fine to power a display, I don't think anybody would consider it for gaming or for folding.
In the past, I've configured a couple of AMD iGPUs, and while they may be able to complete FAH assignments, they rarely do so within the required deadlines so I end up removing the GPU slot and putting all the CPU resources toward CPU folding.
FAH really has two choices: They can officially drop support for low-performance GPUs or they can develop a family of projects that makes use of them and give them longer deadlines and commensurately lower points. I've been talking to them about adopting either of those approaches and it's not clear what they might do.
I think that's the main reason that they've never supported Intel's iGPUs ... adequate to power a screen, but not powerful enough for serious folding.
Hardware configuration: Intel i7-4770K @ 4.5 GHz, 16 GB DDR3-2133 Corsair Vengence (black/red), EVGA GTX 760 @ 1200 MHz, on an Asus Maximus VI Hero MB (black/red), in a blacked out Antec P280 Tower, with a Xigmatek Night Hawk (black) HSF, Seasonic 760w Platinum (black case, sleeves, wires), 4 SilenX 120mm Case fans with silicon fan gaskets and silicon mounts (all black), a 512GB Samsung SSD (black), and a 2TB Black Western Digital HD (silver/black).
Fah doesn't support any drivers. The drivers either work for Fah or they do not work for Fah. Donors have recently confirmed the open source radeon driver doesn't work for Fah. Only the OEM Radeon driver works for folding.
Feel free to contact the providers of the open source drivers to request they support Fah.
Number of platforms 1
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 MESA 11.2.0
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name Clover
Number of devices 1
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
Device Vendor AMD
Device Vendor ID 0x1002
Device Version OpenCL 1.1 MESA 11.2.0
Driver Version 11.2.0
Device OpenCL C Version OpenCL C 1.1
Device Type GPU
Device Profile FULL_PROFILE
Max compute units 6
Max clock frequency 720MHz
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 64
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 0 / 0 (n/a)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (n/a)
Single-precision Floating-point support (core)
Denormals No
Infinity and NANs Yes
Round to nearest Yes
Round to zero No
Round to infinity No
IEEE754-2008 fused multiply-add No
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Address bits 32, Little-Endian
Global memory size 1073741824 (1024MiB)
Error Correction support No
Max memory allocation 268435456 (256MiB)
Unified memory for Host and Device Yes
Minimum alignment for any data type 128 bytes
Alignment of base address 1024 bits (128 bytes)
Global Memory cache type None
Image support No
Local memory type Local
Local memory size 32768 (32KiB)
Max constant buffer size 268435456 (256MiB)
Max number of constant args 16
Max size of kernel argument 1024
Queue properties
Out-of-order execution No
Profiling Yes
Profiling timer resolution 0ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Device Available Yes
Compiler Available Yes
Device Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_fp64
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Clover
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [MESA]
clCreateContext(NULL, ...) [default] Success [MESA]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1)
Platform Name Clover
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1)
Platform Name Clover
Device Name AMD KAVERI (DRM 2.43.0, LLVM 3.8.0)
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.8
ICD loader Profile OpenCL 1.2
NOTE: your OpenCL library declares to support OpenCL 1.2,
but it seems to support up to OpenCL 2.1 too.
I don't know where your OpenCL drivers come from, but it's not a supported OpenCL Platform : get your GPU drivers from your GPU vendor (AMD).
Folding@Home beta tester since 2002. Folding Forum moderator since July 2008.
Hardware configuration: Intel i7-4770K @ 4.5 GHz, 16 GB DDR3-2133 Corsair Vengence (black/red), EVGA GTX 760 @ 1200 MHz, on an Asus Maximus VI Hero MB (black/red), in a blacked out Antec P280 Tower, with a Xigmatek Night Hawk (black) HSF, Seasonic 760w Platinum (black case, sleeves, wires), 4 SilenX 120mm Case fans with silicon fan gaskets and silicon mounts (all black), a 512GB Samsung SSD (black), and a 2TB Black Western Digital HD (silver/black).
Just a note that FAH is not the only application where the AMDGPU-PRO driver isn't working for OpenCL. Also an interesting article in general in regards to performance.