Page 1 of 2

clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 4:15 pm
by tripplehelix
I've been trying to get V8.1.18 to work on a Raspberry Pi 4 running Raspberry Pi OS Bookworm. It's a remote server running headless, but all it does it error with:

```
pi@folding ~> fah-client -v
16:14:08:I1:*********************** Folding@home Client ***********************
16:14:08:I1: Version: 8.1.18
16:14:08:I1: Author: Joseph Coffland <joseph@cauldrondevelopment.com>
16:14:08:I1: Org: foldingathome.org
16:14:08:I1: Copyright: 2023 foldingathome.org
16:14:08:I1: Homepage: https://foldingathome.org/
16:14:08:I1: License: https://www.gnu.org/licenses/gpl-3.0.txt
16:14:08:I1: Date: Apr 18 2023
16:14:08:I1: Time: 12:09:13
16:14:08:I1: Revision: 80a3d5eb8f60f7833de2954087682958b511895c
16:14:08:I1: Branch: master
16:14:08:I1: Compiler: GNU 10.2.1 20210110
16:14:08:I1: Options: -faligned-new -std=c++14 -fsigned-char -ffunction-sections
16:14:08:I1: -fdata-sections -O3 -funroll-loops -fno-pie
16:14:08:I1: Platform: linux 5.10.0-15-arm64
16:14:08:I1: Bits: 64
16:14:08:I1: Mode: Release
16:14:08:I1: Args: -v
16:14:08:I1:****************************** CBang ******************************
16:14:08:I1: Version: 1.7.2
16:14:08:I1: Author: Joseph Coffland <joseph@cauldrondevelopment.com>
16:14:08:I1: Org: Cauldron Development LLC
16:14:08:I1: Copyright: Cauldron Development LLC, 2003-2023
16:14:08:I1: Homepage: https://cauldrondevelopment.com/
16:14:08:I1: License: GPL 2+
16:14:08:I1: Date: Apr 14 2023
16:14:08:I1: Time: 16:50:35
16:14:08:I1: Revision: ac8bbdd5bb93c01679a881f5962fed800bf29e58
16:14:08:I1: Branch: master
16:14:08:I1: Compiler: GNU 10.2.1 20210110
16:14:08:I1: Options: -faligned-new -std=c++14 -fsigned-char -ffunction-sections
16:14:08:I1: -fdata-sections -O3 -funroll-loops -fno-pie -fPIC
16:14:08:I1: Platform: linux 5.10.0-15-arm64
16:14:08:I1: Bits: 64
16:14:08:I1: Mode: Release
16:14:08:I1:***************************** System ******************************
16:14:08:I1: CPU: Cortex-A
16:14:08:I1: CPU ID: ARM Family 8 Model 72 Stepping 3
16:14:08:I1: CPUs: 4
16:14:08:I1: Memory: 1.80GiB
16:14:08:I1:Free Memory: 1.38GiB
16:14:08:I1: Threads: POSIX_THREADS
16:14:08:I1: OS Version: 6.1
16:14:08:I1:Has Battery: false
16:14:08:I1: On Battery: false
16:14:08:I1: UTC Offset: 0
16:14:08:I1: PID: 5626
16:14:08:I1: CWD: /home/pi
16:14:08:I1: Exec: /usr/bin/fah-client
16:14:08:I1:*******************************************************************
16:14:08:I2:<config>
16:14:08:I2: <!-- Client -->
16:14:08:I2: <allowed-origins v='https://app.foldingathome.org'/>
16:14:08:I2: <fold-anon v='false'/>
16:14:08:I2: <on-idle v='false'/>
16:14:08:I2: <open-web-control v='false'/>
16:14:08:I2:
16:14:08:I2: <!-- Debugging -->
16:14:08:I2: <assignment-servers v='assign1.foldingathome.org assign2.foldingathome.org assign3.foldingathome.org assign4.foldingathome.org assign5.foldingathome.org assign6.foldingathome.org'/>
16:14:08:I2: <capture-directory v='capture'/>
16:14:08:I2: <capture-sockets v='false'/>
16:14:08:I2: <debug-libevent v='false'/>
16:14:08:I2: <debug-sockets v='false'/>
16:14:08:I2: <exception-locations v='true'/>
16:14:08:I2: <stack-traces v='false'/>
16:14:08:I2:
16:14:08:I2: <!-- HTTP Server -->
16:14:08:I2: <allow v='0/0'/>
16:14:08:I2: <http-addresses v='127.0.0.1:7396'/>
16:14:08:I2:
16:14:08:I2: <!-- Logging -->
16:14:08:I2: <log v='log.txt'/>
16:14:08:I2: <log-color v='true'/>
16:14:08:I2: <log-crlf v='false'/>
16:14:08:I2: <log-date v='false'/>
16:14:08:I2: <log-date-periodically v='0'/>
16:14:08:I2: <log-domain v='false'/>
16:14:08:I2: <log-header v='true'/>
16:14:08:I2: <log-level v='true'/>
16:14:08:I2: <log-no-info-header v='true'/>
16:14:08:I2: <log-rotate v='true'/>
16:14:08:I2: <log-rotate-compression v='0'/>
16:14:08:I2: <log-rotate-dir v='logs'/>
16:14:08:I2: <log-rotate-max v='90'/>
16:14:08:I2: <log-rotate-period v='86400'/>
16:14:08:I2: <log-short-level v='true'/>
16:14:08:I2: <log-simple-domains v='true'/>
16:14:08:I2: <log-thread-id v='false'/>
16:14:08:I2: <log-thread-prefix v='true'/>
16:14:08:I2: <log-time v='true'/>
16:14:08:I2: <log-to-screen v='true'/>
16:14:08:I2: <log-truncate v='false'/>
16:14:08:I2: <verbosity v='3'/>
16:14:08:I2:
16:14:08:I2: <!-- Project Settings -->
16:14:08:I2: <cause v='any'/>
16:14:08:I2: <project-key v='0'/>
16:14:08:I2:
16:14:08:I2: <!-- User Information -->
16:14:08:I2: <passkey v='*****'/>
16:14:08:I2: <team v='0'/>
16:14:08:I2: <user v='Anonymous'/>
16:14:08:I2:</config>
16:14:08:I1:Opening Database
16:14:08:I1:Listening for HTTP on 127.0.0.1:7396
16:14:08:I3:id = +gqNuDm0xon5t4dpZunMRR+WiWnrm1wxGQQT2eWb0GA=
16:14:08:I3:Loaded 0 wus.
16:14:08:E :Exception: clGetPlatformIDs() returned -1001
16:14:08:E :Exception: Failed to open dynamic library 'libcuda.so': libcuda.so: cannot open shared object file: No such file or directory
```

It also included an error stating that OpenCL didn't exist, however I've since installed that. It seems to be trying to use an Nvidia GPU instead of the Pi's CPU cores… Asking for any help, I can't access the web interface at https://app.foldingathome.org/ to change settings, as it just perpetually says 'connecting…'.

I've tried changing a number of things in config.xml, but due to most search results being for V7.x they don't work.

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 4:51 pm
by bikeaddict
Some others who were folding on Pi 4 said it was too slow to finish work units before the timeout.

https://www.reddit.com/r/Folding/commen ... is_remote/

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 5:05 pm
by tripplehelix
bikeaddict wrote: Sun Dec 10, 2023 4:51 pm Some others who were folding on Pi 4 said it was too slow to finish work units before the timeout.

https://www.reddit.com/r/Folding/commen ... is_remote/
Been running on V7.x for ages now and it was doing great.

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 8:37 pm
by calxalot
The exceptions for OpenCL and cuda are normal here and can be ignored.

The debug build log could be more helpful.
Do not use verbosity over 3.
Do not modify allow in config.xml.

Since the CWD is /home/pi, I don’t think you are using the default service install.
You should avoid running the client manually.

Even with a Pi 4, you will tend to not make deadlines.

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 8:39 pm
by calxalot
The service should start with

sudo systemctl start fah-client

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 9:25 pm
by tripplehelix
calxalot wrote: Sun Dec 10, 2023 8:37 pm The exceptions for OpenCL and cuda are normal here and can be ignored.

The debug build log could be more helpful.
Do not use verbosity over 3.
Do not modify allow in config.xml.

Since the CWD is /home/pi, I don’t think you are using the default service install.
You should avoid running the client manually.

Even with a Pi 4, you will tend to not make deadlines.
Thanks, I was running it as user with verbose for information to post here. It is otherwise run via systemctl. The issue still stands, I can't connect using the website. I'll remove the custom allow remote stuff in the config.xml.

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 9:29 pm
by calxalot
What web browser are you using?

You might need to allow insecure content for the app site.

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 9:32 pm
by tripplehelix
calxalot wrote: Sun Dec 10, 2023 8:37 pm Even with a Pi 4, you will tend to not make deadlines.
I don't understand why this keeps coming up? This is a project I've enjoyed being a part of for many years, something is better than nothing. My Pi 4 has been running version 7 for a long while now. It's in an open rack with fans and sufficient cooling above and below the board. It has previously met all deadlines.

I would like to run folding@home beta on it. I can't connect to https://app.foldingathome.org/ how fix?

Furthermore, I use Firefox nightly, I've made the change noted in another thread to allow it to work. However, it also doesn't work in chromium. What ports need to be open?

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 9:33 pm
by tripplehelix
Adblock... It was adblock...

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 10:00 pm
by bikeaddict
tripplehelix wrote: Sun Dec 10, 2023 9:32 pm I don't understand why this keeps coming up? This is a project I've enjoyed being a part of for many years, something is better than nothing.
Something could be worse than nothing in some situations. If a researcher is waiting for results to come back before a new set of WUs can be generated and sent out, a few slow F@H clients that are taking the full seven days to finish could cause the next wave to be delayed. If that delay happens across multiple projects over a period of months or years, it could end up delaying the final results of the research and delay life-saving treatments from being created, tested and approved for use.

Hopefully the slowest hardware is only being sent small WUs with a 1-day timeout. But slow clients are still slowing down the research in some cases.

The Quick Return Bonus was added many years ago to encourage and emphasize quick processing:

https://foldingathome.org/support/faq/points/?lng=en
"The prompt completion of Work Units (WUs) is very important for the science we’re doing. In order to study the proteins we’re interested in, we need be able get the results back quickly. A faster turnaround also means that we can launch projects that are larger and more difficult than ever before."

Re: clGetPlatformIDs() returned -1001

Posted: Sun Dec 10, 2023 10:30 pm
by calxalot
I’m curious what model Pi is this, is it overclocked, what heat sinks does it have?

Re: clGetPlatformIDs() returned -1001

Posted: Mon Dec 11, 2023 3:17 pm
by tripplehelix
calxalot wrote: Sun Dec 10, 2023 10:30 pm I’m curious what model Pi is this, is it overclocked, what heat sinks does it have?
Pi 4 Model B Rev 1.5, not overclocked, It's on one of those acrylic racks you can get on Amazon. It sits with three other pi's with a Pimoroni fan on the top and one on another pi below, with a flat generic heat sync slotted under the fan. Most of the time it runs around ~75*C on full pelt, its fan runs pretty much constantly. I've found the fans last about a year running non-stop then need replacing. Some last longer than others.

If only the 5 was cheaper I'd be using it, but hey ho I have other uses for the 5 before it becomes a folding device.

Takes about 4 days per 9k points. No idea if that's a good scale to use.

Re: clGetPlatformIDs() returned -1001

Posted: Tue Dec 12, 2023 1:13 am
by calxalot
Thanks for the info.

Re: clGetPlatformIDs() returned -1001

Posted: Tue Dec 12, 2023 1:38 am
by bikeaddict
The last WU run by user tripplehelix shown on

https://apps.foldingathome.org/cpu

is Project:12435 (Run 7, Clone 151, Gen 56)

https://apps.foldingathome.org/wu?p=124 ... c=151&g=56

It was finished in 4.496 days, which is well past the the 3-day timeout of project 12435 on https://apps.foldingathome.org/psummary

The docs say WUs that expire are assigned to another client, yet the site doesn't show it was run by another user for some reason. Do timed out WUs still get sent out again?

https://foldingathome.org/support/faq/r ... me/?lng=en
"You will still receive credit for all WUs completed and uploaded prior to the Timeout (formerly preferred deadline). However, after the Timeout, your contribution is not as useful scientifically because another copy of that work unit had to be sent out to another contributor. Even if you eventually complete the work unit, that other contributor still had to process duplicate work to assure the science moves forward."

"If you have trouble completing work units before the Timeout (formerly Preferred Deadline), it is recommended to either run the FAH client more hours each day, or to run the client on a faster computer."

Re: clGetPlatformIDs() returned -1001

Posted: Tue Dec 12, 2023 3:35 am
by BobWilliams757
Interesting find bikeaddict.

I don't have the answer to your question, but it looks like the Gen following the one you looked up processed and the project continued forward, so possibly the first valid return that is made moves things along. It's very interesting that it didn't reassign to another user, but that could have a host of reasons.


But really if the systems runs as designed the Timeout and Expiration should take into account those not running at full power, on lesser cards for the species designations, system crashes, power outages, etc. The researchers know that not everyone runs 24/7 on the fastest hardware that particular assignment will go to. I would assume those that are more important would be assigned accordingly, and given shorter time periods for both the Timeout and Expiration.