Page 1 of 2

Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 2:38 am
by technic58
Hello all,

I folded quite a lot close to a decade ago, but haven't done much since. I was hoping to fold with some older spare videocards, but my GPUs seem to not be supported. Both GPU slots are recognized but come up as disabled. See below for system specs:

Intel Core i5-6400 (iGPU currently disabled) (currently happily folding)
MSI B150M Mortar Motherboard
2x4GB Kingston HyperX DDR4-2400
1x XFX HD6750 (Juniper LE) GPU-Z Device ID: 1002 68BF - 1682 3140
1x XFX HD6770 (Juniper XT) GPU-Z Device ID: 1002 68BA - 1682 3153
Corsair CX600 PSU
Windows 10 Pro x64 20H2

I also have a second XFX HD6770 that I don't have hooked up at the moment. These cards are considered legacy by AMD - I am running the latest available non-beta drivers (Catalyst 15.7.1 WHQL).

Note: I was able to get the HD6770 folding just fine by editing the GPUs.txt file as follows:

Original:
0x1002:0x68ba:::Juniper XT [Radeon HD 6000 Series]
New:
0x1002:0x68ba:1:5:Juniper XT [Radeon HD 6000 Series]

I got about 75% through a WU with no errors, but paused it because I wasn't sure if I should be submitting something that was generated in a questionable way. Is this file edit an acceptable way to get my cards folding in the interim prior to the cards being officially supported? I don't know what the "1:5" means; I just saw that in the entries for other cards and added it to see. Please advise. I will continue not folding with these cards until I get an answer. I am willing to help out with testing to get these cards supported. Just let me know.

Thanks!

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 3:43 am
by Joe_H
The Radeon HD 6750 and HD 6770 will not be whitelisted. Neither supports double precision arithmetic (FP64), which is a requirement. A minimum of an HD 6900 series is required.

Editing the local copy of GPUs.txt not acceptable as a means of enabling a GPU.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 3:48 am
by JimboPalmer
Welcome to Folding@Home!

https://www.techpowerup.com/gpu-specs/r ... -6750.c279
https://www.techpowerup.com/gpu-specs/r ... -6770.c280
There are two Prerequisites to folding on a GPU:
The driver/hardware must support OpenCL 1.2 (yours does)
The hardware must support 64 bit Floating Point math, called Double Precision. (yours doesn't)

There is no way to fold successfully on this hardware.

https://en.wikipedia.org/wiki/Round-off_error

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 4:00 am
by technic58
Thanks for the quick replies. So - just to be clear - there is no way to request only older project types for these older GPUs? This is a shame - lots of hardware laying around out there that could be put to good use.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 4:27 am
by JimboPalmer
Well it could consume electricity, it is less clear what could be useful when doing math the researchers can't trust really is.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 5:53 am
by Joe_H
The older GPU projects that only used single precision finished a couple years ago, all of the projects running now use a mix of mostly single precision with a small portion of double precision calculations where needed.

You did not provide a copy of your log file, but I expect that your attempt to enable this HD 6750 and create a GPU folding slot actually resulted in the slot processing a CPU project instead. This is a corner case in the client and server code interaction we have seen before. If the WU show processing was using Core_17 or Core_A8, you were actually processing on your CPU, not the GPU.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 4:08 pm
by technic58
Thanks for the helpful response. Below is a recent log file with the GPU slot running. I don't see any Core_17 or Core_A8.

Code: Select all

*********************** Log Started 2021-02-27T15:59:57Z ***********************
15:59:57:******************************* libFAH ********************************
15:59:57:           Date: Oct 20 2020
15:59:57:           Time: 13:36:55
15:59:57:       Revision: 5ca109d295a6245e2a2f590b3d0085ad5e567aeb
15:59:57:         Branch: master
15:59:57:       Compiler: Visual C++ 2015
15:59:57:        Options: /TP /nologo /EHa /wd4297 /wd4103 /O2 /Zc:throwingNew /MT
15:59:57:       Platform: win32 10
15:59:57:           Bits: 32
15:59:57:           Mode: Release
15:59:57:****************************** FAHClient ******************************
15:59:57:        Version: 7.6.21
15:59:57:         Author: Joseph Coffland <joseph@cauldrondevelopment.com>
15:59:57:      Copyright: 2020 foldingathome.org
15:59:57:       Homepage: https://foldingathome.org/
15:59:57:           Date: Oct 20 2020
15:59:57:           Time: 13:41:04
15:59:57:       Revision: 6efbf0e138e22d3963e6a291f78dcb9c6422a278
15:59:57:         Branch: master
15:59:57:       Compiler: Visual C++ 2015
15:59:57:        Options: /TP /nologo /EHa /wd4297 /wd4103 /O2 /Zc:throwingNew /MT
15:59:57:       Platform: win32 10
15:59:57:           Bits: 32
15:59:57:           Mode: Release
15:59:57:           Args: --open-web-control
15:59:57:         Config: C:\ProgramData\FAHClient\config.xml
15:59:57:******************************** CBang ********************************
15:59:57:           Date: Oct 20 2020
15:59:57:           Time: 11:36:18
15:59:57:       Revision: 7e4ce85225d7eaeb775e87c31740181ca603de60
15:59:57:         Branch: master
15:59:57:       Compiler: Visual C++ 2015
15:59:57:        Options: /TP /nologo /EHa /wd4297 /wd4103 /O2 /Zc:throwingNew /MT
15:59:57:       Platform: win32 10
15:59:57:           Bits: 32
15:59:57:           Mode: Release
15:59:57:******************************* System ********************************
15:59:57:            CPU: Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz
15:59:57:         CPU ID: GenuineIntel Family 6 Model 94 Stepping 3
15:59:57:           CPUs: 4
15:59:57:         Memory: 7.95GiB
15:59:57:    Free Memory: 4.66GiB
15:59:57:        Threads: WINDOWS_THREADS
15:59:57:     OS Version: 6.2
15:59:57:    Has Battery: false
15:59:57:     On Battery: false
15:59:57:     UTC Offset: -5
15:59:57:            PID: 8268
15:59:57:            CWD: C:\ProgramData\FAHClient
15:59:57:  Win32 Service: false
15:59:57:             OS: Windows 10 Enterprise
15:59:57:        OS Arch: AMD64
15:59:57:           GPUs: 2
15:59:57:          GPU 0: Bus:2 Slot:0 Func:0 AMD:5 Juniper XT [Radeon HD 6000 Series]
15:59:57:          GPU 1: Bus:1 Slot:0 Func:0 AMD:1 Juniper LE [Radeon HD 6700/6750]
15:59:57:           CUDA: Not detected: Failed to open dynamic library 'nvcuda.dll': The
15:59:57:                 specified module could not be found.
15:59:57:
15:59:57:OpenCL Device 0: Platform:0 Device:0 Bus:1 Slot:0 Compute:1.2 Driver:1800.11
15:59:57:OpenCL Device 1: Platform:0 Device:1 Bus:2 Slot:0 Compute:1.2 Driver:1800.11
15:59:57:***********************************************************************
15:59:57:<config>
15:59:57:  <!-- Network -->
15:59:57:  <proxy v=':8080'/>
15:59:57:
15:59:57:  <!-- Slot Control -->
15:59:57:  <power v='full'/>
15:59:57:
15:59:57:  <!-- User Information -->
15:59:57:  <team v='34106'/>
15:59:57:  <user v='technic58'/>
15:59:57:
15:59:57:  <!-- Folding Slots -->
15:59:57:  <slot id='0' type='CPU'/>
15:59:57:  <slot id='1' type='GPU'/>
15:59:57:  <slot id='3' type='GPU'/>
15:59:57:</config>
15:59:57:Trying to access database...
15:59:57:Successfully acquired database lock
15:59:57:FS00:Initialized folding slot 00: cpu:2
15:59:57:FS01:Initialized folding slot 01: gpu:2:0 Juniper XT [Radeon HD 6000 Series]
15:59:57:WARNING:FS03:Disabling beta GPU slot 03: gpu:1:0 Juniper LE [Radeon HD 6700/6750].  Beta GPUs can be tested for no points by setting ``gpu-beta=true`` in the configuration.
15:59:57:WU00:FS00:Starting
15:59:57:WARNING:WU00:FS00:Changed SMP threads from 3 to 2 this can cause some work units to fail
15:59:57:WU00:FS00:Running FahCore: "C:\Program Files (x86)\FAHClient/FAHCoreWrapper.exe" C:\ProgramData\FAHClient\cores/cores.foldingathome.org/win/64bit-avx-256/a7-0.0.19/Core_a7.fah/FahCore_a7.exe -dir 00 -suffix 01 -version 706 -lifeline 8268 -checkpoint 15 -np 2
15:59:57:WU00:FS00:Started FahCore on PID 9628
15:59:57:WU00:FS00:Core PID:7284
15:59:57:WU00:FS00:FahCore 0xa7 started
15:59:57:WU01:FS01:Connecting to assign1.foldingathome.org:80
15:59:57:WU00:FS00:0xa7:*********************** Log Started 2021-02-27T15:59:57Z ***********************
15:59:57:WU00:FS00:0xa7:************************** Gromacs Folding@home Core ***************************
15:59:57:WU00:FS00:0xa7:       Type: 0xa7
15:59:57:WU00:FS00:0xa7:       Core: Gromacs
15:59:57:WU00:FS00:0xa7:       Args: -dir 00 -suffix 01 -version 706 -lifeline 9628 -checkpoint 15 -np 2
15:59:57:WU00:FS00:0xa7:************************************ CBang *************************************
15:59:57:WU00:FS00:0xa7:       Date: Nov 27 2019
15:59:57:WU00:FS00:0xa7:       Time: 03:40:09
15:59:57:WU00:FS00:0xa7:   Revision: d25803215b59272441049dfa05a0a9bf7a6e3c48
15:59:57:WU00:FS00:0xa7:     Branch: master
15:59:57:WU00:FS00:0xa7:   Compiler: Visual C++ 2008
15:59:57:WU00:FS00:0xa7:    Options: /TP /nologo /EHa /wd4297 /wd4103 /Ox /MT
15:59:57:WU00:FS00:0xa7:   Platform: win32 10
15:59:57:WU00:FS00:0xa7:       Bits: 64
15:59:57:WU00:FS00:0xa7:       Mode: Release
15:59:57:WU00:FS00:0xa7:************************************ System ************************************
15:59:57:WU00:FS00:0xa7:        CPU: Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz
15:59:57:WU00:FS00:0xa7:     CPU ID: GenuineIntel Family 6 Model 94 Stepping 3
15:59:57:WU00:FS00:0xa7:       CPUs: 4
15:59:57:WU00:FS00:0xa7:     Memory: 7.95GiB
15:59:57:WU00:FS00:0xa7:Free Memory: 4.63GiB
15:59:57:WU00:FS00:0xa7:    Threads: WINDOWS_THREADS
15:59:57:WU00:FS00:0xa7: OS Version: 6.2
15:59:57:WU00:FS00:0xa7:Has Battery: false
15:59:57:WU00:FS00:0xa7: On Battery: false
15:59:57:WU00:FS00:0xa7: UTC Offset: -5
15:59:57:WU00:FS00:0xa7:        PID: 7284
15:59:57:WU00:FS00:0xa7:        CWD: C:\ProgramData\FAHClient\work
15:59:57:WU00:FS00:0xa7:******************************** Build - libFAH ********************************
15:59:57:WU00:FS00:0xa7:    Version: 0.0.19
15:59:57:WU00:FS00:0xa7:     Author: Joseph Coffland <joseph@cauldrondevelopment.com>
15:59:57:WU00:FS00:0xa7:  Copyright: 2019 foldingathome.org
15:59:57:WU00:FS00:0xa7:   Homepage: https://foldingathome.org/
15:59:57:WU00:FS00:0xa7:       Date: Nov 25 2019
15:59:57:WU00:FS00:0xa7:       Time: 17:12:41
15:59:57:WU00:FS00:0xa7:   Revision: d5b5c747532224f986b7cd02c968ed9a20c16d6e
15:59:57:WU00:FS00:0xa7:     Branch: master
15:59:57:WU00:FS00:0xa7:   Compiler: Visual C++ 2008
15:59:57:WU00:FS00:0xa7:    Options: /TP /nologo /EHa /wd4297 /wd4103 /Ox /MT
15:59:57:WU00:FS00:0xa7:   Platform: win32 10
15:59:57:WU00:FS00:0xa7:       Bits: 64
15:59:57:WU00:FS00:0xa7:       Mode: Release
15:59:57:WU00:FS00:0xa7:************************************ Build *************************************
15:59:57:WU00:FS00:0xa7:       SIMD: avx_256
15:59:57:WU00:FS00:0xa7:********************************************************************************
15:59:57:WU00:FS00:0xa7:Project: 17423 (Run 0, Clone 4484, Gen 225)
15:59:57:WU00:FS00:0xa7:Unit: 0x00000000000000000000000000000000
15:59:57:WU00:FS00:0xa7:Digital signatures verified
15:59:57:WU00:FS00:0xa7:Calling: mdrun -s frame225.tpr -o frame225.trr -x frame225.xtc -cpi state.cpt -cpt 15 -nt 2
15:59:57:WU00:FS00:0xa7:Steps: first=28125000 total=125000
15:59:58:WU01:FS01:Assigned to work server 129.32.209.201
15:59:58:WU01:FS01:Requesting new work unit for slot 01: gpu:2:0 Juniper XT [Radeon HD 6000 Series] from 129.32.209.201
15:59:58:WU01:FS01:Connecting to 129.32.209.201:8080
15:59:59:WU01:FS01:Downloading 6.65MiB
16:00:00:10:127.0.0.1:New Web session
16:00:01:WU00:FS00:0xa7:Completed 172 out of 125000 steps (0%)
16:00:01:WU01:FS01:Download complete
16:00:01:WU01:FS01:Received Unit: id:01 state:DOWNLOAD error:NO_ERROR project:16927 run:22 clone:1326 gen:66 core:0xa7 unit:0x0000052e000000420000421f00000016
16:00:02:WU01:FS01:Starting
16:00:02:WU01:FS01:Running FahCore: "C:\Program Files (x86)\FAHClient/FAHCoreWrapper.exe" C:\ProgramData\FAHClient\cores/cores.foldingathome.org/win/64bit-avx-256/a7-0.0.19/Core_a7.fah/FahCore_a7.exe -dir 01 -suffix 01 -version 706 -lifeline 8268 -checkpoint 15 -opencl-platform 0 -opencl-device 1 -gpu-vendor amd -gpu 1 -gpu-usage 100
16:00:02:WU01:FS01:Started FahCore on PID 8876
16:00:02:WU01:FS01:Core PID:2284
16:00:02:WU01:FS01:FahCore 0xa7 started
16:00:02:WU01:FS01:0xa7:*********************** Log Started 2021-02-27T16:00:02Z ***********************
16:00:02:WU01:FS01:0xa7:************************** Gromacs Folding@home Core ***************************
16:00:02:WU01:FS01:0xa7:       Type: 0xa7
16:00:02:WU01:FS01:0xa7:       Core: Gromacs
16:00:02:WU01:FS01:0xa7:       Args: -dir 01 -suffix 01 -version 706 -lifeline 8876 -checkpoint 15
16:00:02:WU01:FS01:0xa7:             -opencl-platform 0 -opencl-device 1 -gpu-vendor amd -gpu 1
16:00:02:WU01:FS01:0xa7:             -gpu-usage 100
16:00:02:WU01:FS01:0xa7:************************************ CBang *************************************
16:00:02:WU01:FS01:0xa7:       Date: Nov 27 2019
16:00:02:WU01:FS01:0xa7:       Time: 03:40:09
16:00:02:WU01:FS01:0xa7:   Revision: d25803215b59272441049dfa05a0a9bf7a6e3c48
16:00:02:WU01:FS01:0xa7:     Branch: master
16:00:02:WU01:FS01:0xa7:   Compiler: Visual C++ 2008
16:00:02:WU01:FS01:0xa7:    Options: /TP /nologo /EHa /wd4297 /wd4103 /Ox /MT
16:00:02:WU01:FS01:0xa7:   Platform: win32 10
16:00:02:WU01:FS01:0xa7:       Bits: 64
16:00:02:WU01:FS01:0xa7:       Mode: Release
16:00:02:WU01:FS01:0xa7:************************************ System ************************************
16:00:02:WU01:FS01:0xa7:        CPU: Intel(R) Core(TM) i5-6400 CPU @ 2.70GHz
16:00:02:WU01:FS01:0xa7:     CPU ID: GenuineIntel Family 6 Model 94 Stepping 3
16:00:02:WU01:FS01:0xa7:       CPUs: 4
16:00:02:WU01:FS01:0xa7:     Memory: 7.95GiB
16:00:02:WU01:FS01:0xa7:Free Memory: 4.40GiB
16:00:02:WU01:FS01:0xa7:    Threads: WINDOWS_THREADS
16:00:02:WU01:FS01:0xa7: OS Version: 6.2
16:00:02:WU01:FS01:0xa7:Has Battery: false
16:00:02:WU01:FS01:0xa7: On Battery: false
16:00:02:WU01:FS01:0xa7: UTC Offset: -5
16:00:02:WU01:FS01:0xa7:        PID: 2284
16:00:02:WU01:FS01:0xa7:        CWD: C:\ProgramData\FAHClient\work
16:00:02:WU01:FS01:0xa7:******************************** Build - libFAH ********************************
16:00:02:WU01:FS01:0xa7:    Version: 0.0.19
16:00:02:WU01:FS01:0xa7:     Author: Joseph Coffland <joseph@cauldrondevelopment.com>
16:00:02:WU01:FS01:0xa7:  Copyright: 2019 foldingathome.org
16:00:02:WU01:FS01:0xa7:   Homepage: https://foldingathome.org/
16:00:02:WU01:FS01:0xa7:       Date: Nov 25 2019
16:00:02:WU01:FS01:0xa7:       Time: 17:12:41
16:00:02:WU01:FS01:0xa7:   Revision: d5b5c747532224f986b7cd02c968ed9a20c16d6e
16:00:02:WU01:FS01:0xa7:     Branch: master
16:00:02:WU01:FS01:0xa7:   Compiler: Visual C++ 2008
16:00:02:WU01:FS01:0xa7:    Options: /TP /nologo /EHa /wd4297 /wd4103 /Ox /MT
16:00:02:WU01:FS01:0xa7:   Platform: win32 10
16:00:02:WU01:FS01:0xa7:       Bits: 64
16:00:02:WU01:FS01:0xa7:       Mode: Release
16:00:02:WU01:FS01:0xa7:************************************ Build *************************************
16:00:02:WU01:FS01:0xa7:       SIMD: avx_256
16:00:02:WU01:FS01:0xa7:********************************************************************************
16:00:02:WU01:FS01:0xa7:Project: 16927 (Run 22, Clone 1326, Gen 66)
16:00:02:WU01:FS01:0xa7:Unit: 0x00000000000000000000000000000000
16:00:02:WU01:FS01:0xa7:Reading tar file core.xml
16:00:02:WU01:FS01:0xa7:Reading tar file frame66.tpr
16:00:02:WU01:FS01:0xa7:Digital signatures verified
16:00:02:WU01:FS01:0xa7:Calling: mdrun -s frame66.tpr -o frame66.trr -cpt 15 -nt 1
16:00:02:WU01:FS01:0xa7:Steps: first=33000000 total=500000
16:00:05:WU01:FS01:0xa7:Completed 1 out of 500000 steps (0%)
16:00:58:Removing old file 'configs/config-20210223-235429.xml'
16:00:58:Saving configuration to config.xml
16:00:58:<config>
16:00:58:  <!-- Network -->
16:00:58:  <proxy v=':8080'/>
16:00:58:
16:00:58:  <!-- Slot Control -->
16:00:58:  <power v='full'/>
16:00:58:
16:00:58:  <!-- User Information -->
16:00:58:  <team v='34106'/>
16:00:58:  <user v='technic58'/>
16:00:58:
16:00:58:  <!-- Folding Slots -->
16:00:58:  <slot id='0' type='CPU'/>
16:00:58:  <slot id='1' type='GPU'>
16:00:58:    <pci-bus v='2'/>
16:00:58:    <pci-slot v='0'/>
16:00:58:  </slot>
16:00:58:  <slot id='3' type='GPU'>
16:00:58:    <pci-bus v='1'/>
16:00:58:    <pci-slot v='0'/>
16:00:58:  </slot>
16:00:58:</config>
16:03:02:WU00:FS00:0xa7:Completed 1250 out of 125000 steps (1%)
16:06:34:WU00:FS00:0xa7:Completed 2500 out of 125000 steps (2%)
Thanks!

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 4:24 pm
by Joe_H
Oh, that is a typo on my part, should check my posts more carefully when I post late in the evening.

I meant Core_A7 or Core_A8. Using the Task Manager they will show up as processes running FAHCore_A7 or _A8. In the log what you see is it identified as "0xa7":

Code: Select all

16:00:02:WU01:FS01:FahCore 0xa7 started
16:00:02:WU01:FS01:0xa7:*********************** Log Started 2021-02-27T16:00:02Z ***********************
16:00:02:WU01:FS01:0xa7:************************** Gromacs Folding@home Core ***************************
16:00:02:WU01:FS01:0xa7:       Type: 0xa7
16:00:02:WU01:FS01:0xa7:       Core: Gromacs
16:00:02:WU01:FS01:0xa7:       Args: -dir 01 -suffix 01 -version 706 -lifeline 8876 -checkpoint 15
16:00:02:WU01:FS01:0xa7:             -opencl-platform 0 -opencl-device 1 -gpu-vendor amd -gpu 1
16:00:02:WU01:FS01:0xa7:             -gpu-usage 100
16:00:02:WU01:FS01:0xa7:************************************ CBang *************************************
16:00:02:WU01:FS01:0xa7:       Date: Nov 27 2019
So at the moment you have a CPU slot running a Core_A7 project and a "GPU" slot that was assigned another A7 project. I would recommend setting the GPU slot to Finish, and delete the GPU slot once it has finished. Also delete your modified GPUs.txt file, an unmodified version will be downloaded and read the next time you restart FAHClient or reboot your PC. That will keep the client from recreating slots for the HD 6700 cards.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 5:13 pm
by technic58
Will do! Helpful information all around, thanks again. This can be closed.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sat Feb 27, 2021 5:34 pm
by Joe_H
Just as an addendum, any GPU processing at this point would be done by Core_22, FAHCore_22 would be listed as the process name. There is an older GPU folding core, Core_21, that still had some projects running last year when COVID came along. I don't know if all of those projects completed, so it possibly could reappear on an active project.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sun Feb 28, 2021 3:58 am
by bruce
The standard x86 hardware does do double precision math so I suspect that the results you computed on your CPU were scientifically valid using FAHCore_A7 / A8 if they had been acceped. though they would have probably run significantly faster if you had a HD 6900 series GPU.

I'm pretty sure I never saw an announcement that a job that's supposed to use FAHCore_22 on a GPU would revert to a job that uses FAHCore_A7 if an unsupported GPU happened to be invoked. I do know that hacking GPUs.txt is validated against the server's version of the file but what happens after the incompatibility is recognized has ever been clearly defined. I would have guessed that the WU would have been dumped.

A couple of years ago, there was an announcement that all FAHCores that used single precision math were deprecated in place of jobs that required double precision (also called "Mixed Precision").

I do understand that OpenCL 1.1 could manage double precision math using emulation but we don't have the infrastructure to distinguish GPUs that support hardware double precision and the slower version if the FAHCore that uses emulation so I doubt that there will ever be support for the Juniper (TeraScale 2 "Evergreen"-family) hardware. Without FAH's infrastructure EVERYBODY would be forced to use emulation, thereby slowing down the majority that do have the right hardware.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sun Feb 28, 2021 6:14 am
by Joe_H
bruce wrote:I'm pretty sure I never saw an announcement that a job that's supposed to use FAHCore_22 on a GPU would revert to a job that uses FAHCore_A7 if an unsupported GPU happened to be invoked.
Just to clarify, the "GPU" folding slot configured using the modified entry for the HD 6750 card did not download a WU from a GPU project, but one from a CPU project and used the correct CPU folding core for the project, Core_A7. The job never was supposed to use Core_22.

Re: Whitelist Request for AMD HD6750/6770

Posted: Sun Feb 28, 2021 7:00 am
by bruce
Joe_H wrote:Just to clarify, the "GPU" folding slot configured using the modified entry for the HD 6750 card did not download a WU from a GPU project, but one from a CPU project and used the correct CPU folding core for the project, Core_A7. The job never was supposed to use Core_22.
So if the slot had been configured for -<slot type="CPU" id=...> instead of type="GPU" there would have been no reason for the hacking :?:

Re: Whitelist Request for AMD HD6750/6770

Posted: Sun Feb 28, 2021 8:25 am
by Joe_H
bruce wrote:
Joe_H wrote:Just to clarify, the "GPU" folding slot configured using the modified entry for the HD 6750 card did not download a WU from a GPU project, but one from a CPU project and used the correct CPU folding core for the project, Core_A7. The job never was supposed to use Core_22.
So if the slot had been configured for -<slot type="CPU" id=...> instead of type="GPU" there would have been no reason for the hacking :?:
True, but what happened instead was that a GPU slot was created that was for listed as being for the GPU with the altered entry. Everything on the client side looks like a GPU slot. However when the client connected to the AS and then was assigned a WU, everything was treated as if it was a CPU slot. A normal CPU slot was also configured by the client, and it got its own assignment of a WU.

Code: Select all

 15:59:57:             OS: Windows 10 Enterprise
15:59:57:        OS Arch: AMD64
15:59:57:           GPUs: 2
15:59:57:          GPU 0: Bus:2 Slot:0 Func:0 AMD:5 Juniper XT [Radeon HD 6000 Series]
15:59:57:          GPU 1: Bus:1 Slot:0 Func:0 AMD:1 Juniper LE [Radeon HD 6700/6750]
15:59:57:           CUDA: Not detected: Failed to open dynamic library 'nvcuda.dll': The
15:59:57:                 specified module could not be found.
15:59:57:
15:59:57:OpenCL Device 0: Platform:0 Device:0 Bus:1 Slot:0 Compute:1.2 Driver:1800.11
15:59:57:OpenCL Device 1: Platform:0 Device:1 Bus:2 Slot:0 Compute:1.2 Driver:1800.11
15:59:57:***********************************************************************
15:59:57:<config>
15:59:57:  <!-- Network -->
15:59:57:  <proxy v=':8080'/>
15:59:57:
15:59:57:  <!-- Slot Control -->
15:59:57:  <power v='full'/>
15:59:57:
15:59:57:  <!-- User Information -->
15:59:57:  <team v='34106'/>
15:59:57:  <user v='technic58'/>
15:59:57:
15:59:57:  <!-- Folding Slots -->
15:59:57:  <slot id='0' type='CPU'/>
15:59:57:  <slot id='1' type='GPU'/>
15:59:57:  <slot id='3' type='GPU'/>
15:59:57:</config>
GPU WU requested, and CPU WU assigned instead:

Code: Select all

15:59:57:FS01:Initialized folding slot 01: gpu:2:0 Juniper XT [Radeon HD 6000 Series]
...
15:59:57:WU01:FS01:Connecting to assign1.foldingathome.org:80
...
15:59:58:WU01:FS01:Assigned to work server 129.32.209.201
15:59:58:WU01:FS01:Requesting new work unit for slot 01: gpu:2:0 Juniper XT [Radeon HD 6000 Series] from 129.32.209.201
15:59:58:WU01:FS01:Connecting to 129.32.209.201:8080
15:59:59:WU01:FS01:Downloading 6.65MiB
16:00:01:WU01:FS01:Download complete
16:00:01:WU01:FS01:Received Unit: id:01 state:DOWNLOAD error:NO_ERROR project:16927 run:22 clone:1326 gen:66 core:0xa7 unit:0x0000052e000000420000421f00000016
16:00:02:WU01:FS01:Starting
16:00:02:WU01:FS01:Running FahCore: "C:\Program Files (x86)\FAHClient/FAHCoreWrapper.exe" C:\ProgramData\FAHClient\cores/cores.foldingathome.org/win/64bit-avx-256/a7-0.0.19/Core_a7.fah/FahCore_a7.exe -dir 01 -suffix 01 -version 706 -lifeline 8268 -checkpoint 15 -opencl-platform 0 -opencl-device 1 -gpu-vendor amd -gpu 1 -gpu-usage 100
16:00:02:WU01:FS01:Started FahCore on PID 8876
16:00:02:WU01:FS01:Core PID:2284
16:00:02:WU01:FS01:FahCore 0xa7 started

This has been seen before, there may have been a problem report created on GitHub describing this. Without access to the code, as best as I can tell the client takes the altered GPUs.txt entry and creates a GPU slot as it would normally do for any usable GPU listed in the file. On the AS side, when it gets a request for a WU to be run in that slot the invalid GPU is detected, and the AS then defaults to assigning a WU from a CPU project instead. Everything from that point forward appears to show the CPU WU being processed normally.

The only odd thing I notice on the client side is that the parameters passed to the FAHCorewrapper are for a GPU slot, and the WU is processed using a single CPU thread. The defaults for the CPU folding core appear to be robust enough for it to function even with improper parameters being passed by the core wrapper process.

Re: Whitelist Request for AMD HD6750/6770

Posted: Mon Mar 01, 2021 3:31 am
by bruce
So the fake GPU slot doesn't block an assignment (as I think it once did) but instead it functionally creates a CPU slot without a setting for <cpus v="N"/> for some N ... and you're saying that it (always?) becomes N=1.

If that's accurate, it's not good for the timeout problem that leads to slow performance for many trajectories. I doubt there are a lot of cases of hacking of GPUs.txt so it's probably not a major problem of performance degradation.