BOINC manager says each s@h task is running on 0.08 CPUs

Questions and Answers : Unix/Linux : BOINC manager says each s@h task is running on 0.08 CPUs
Message board moderation

To post messages, you must log in.

AuthorMessage
PRHumphrey

Send message
Joined: 11 Sep 03
Posts: 8
Credit: 1,299,944
RAC: 0
United Kingdom
Message 1900690 - Posted: 12 Nov 2017, 11:54:08 UTC

This is a 6-core, 12-thread i7-5820K with an AMD WX 5100 GPU running Gentoo stable, updated daily.
It looks as though s@h's calculation of its allowed number of CPUs is wrong: it thinks it has 1/12 of one CPU instead of 1/12 of 12. This is while I'm running seven other BOINC projects as well, with equal resource shares.
This is not just cosmetic; the 0.08 CPUs are added to the total I've allowed, resulting in one more task actually running than should.
I would have submitted a bug report if I'd been able to find a way to do so, but reporting here is the best I could do - I hope the right people are watching. :-)
Rgds
Peter.
ID: 1900690 · Report as offensive
rob smith Crowdfunding Project Donor*Special Project $75 donorSpecial Project $250 donor
Volunteer moderator
Volunteer tester

Send message
Joined: 7 Mar 03
Posts: 22158
Credit: 416,307,556
RAC: 380
United Kingdom
Message 1900703 - Posted: 12 Nov 2017, 13:10:58 UTC

This behaviour is a "feature" of BOINC not of S@H.
The figures given for CPU/GPU taks are "very crude estimates" of how much CPU effort is required to support a given GPU task - they are almost always well off the mark!
Given that you are using "stock" applications I would expect you to be seeing 12 tasks running on your CPU (1 per core/thread) plus one on the GPU, making a total of 13. The GPU task will be "bouncing" between cpu threads as it's CPU demand varies during the run, and at any instant my be 1 core, or none, or anywhere in between. If you want better control you can reduce the number of CPU tasks being run by one - in the BOINC manager, advanced view, options, computing prefs set "use at most % CPUs" to 92% - depending on the exact rounding taking place you may have to reduce this to 91%. You will see when this has worked as the number of CPU tasks running will drop to 11, and the GPU task will continue. It is possible that having done this you will find that all tasks run a little faster as there is less contention over core/thread access.
Bob Smith
Member of Seti PIPPS (Pluto is a Planet Protest Society)
Somewhere in the (un)known Universe?
ID: 1900703 · Report as offensive
PRHumphrey

Send message
Joined: 11 Sep 03
Posts: 8
Credit: 1,299,944
RAC: 0
United Kingdom
Message 1900866 - Posted: 13 Nov 2017, 10:26:52 UTC - in response to Message 1900703.  
Last modified: 13 Nov 2017, 10:27:36 UTC

Thank you for your explanation; it explains much, but not all.

$ grep -w GPU ~/boinc/stdoutdae.txt | cut -d [ -f 2 | cut -d ] -f 1 | sort | uniq
---
Asteroids@home
Einstein@Home
LHC@home
Milkyway@Home
pogs
SETI@home
Universe@Home
World Community Grid

As you see, all seven of my other projects also use the GPU, and none of them display the behaviour I reported. With S@H suspended, the manager shows just what I'd expect: 12 tasks running. It's hard to show you what I mean, as the manager window doesn't accept a mouse pointer.
Is it possible that, although the seven projects are requesting tasks for the GPU, none are delivered? A brief look at stdoutdae.txt gives some credence to that idea, which would also explain a system temperature problem I'm seeing.
Rgds
Peter.
ID: 1900866 · Report as offensive
rob smith Crowdfunding Project Donor*Special Project $75 donorSpecial Project $250 donor
Volunteer moderator
Volunteer tester

Send message
Joined: 7 Mar 03
Posts: 22158
Credit: 416,307,556
RAC: 380
United Kingdom
Message 1900966 - Posted: 13 Nov 2017, 21:59:32 UTC

You need to look at BOINC manager, advanced view to see what tasks are running concurrently.
To see what projects are requesting work you then need to look in the BOINC event log (BOINC manager, advanced view, tools event log). This will give a lot of information, in time order (newest at the bottom), you can grab a snapshot of it, drop it into a text file then search through it for work request/work returned pairs (since you are trying to run multiple projects there will be other stuff happening between the request and response, so a bit of juggling will be needed).
Bob Smith
Member of Seti PIPPS (Pluto is a Planet Protest Society)
Somewhere in the (un)known Universe?
ID: 1900966 · Report as offensive
PRHumphrey

Send message
Joined: 11 Sep 03
Posts: 8
Credit: 1,299,944
RAC: 0
United Kingdom
Message 1901030 - Posted: 14 Nov 2017, 9:37:10 UTC - in response to Message 1900966.  

Thank you Bob, but I'm already working directly with stdoutdae.txt in my BOINC directory, as might be inferred from my last message. It looks as though the manager's log view is just a presentation of that file. (Linux doesn't confine users to graphical interfaces to files.)
I've almost confirmed to my own satisfaction that S@H is indeed the only one of my projects that is receiving work for the GPU.
I'm going to have a go at profiling S@H's use of the GPU using CodeXL [1]. If I find anything interesting I'll come back here with it.
Meanwhile it looks as though I've wasted a lot of money on a GPU that I can't use; whenever S@H runs, it causes a huge GPU temperature spike and resulting intolerable noise from the cooling system.
Thanks again for your help.

1. https://gpuopen.com/compute-product/codexl/
Rgds
Peter.
ID: 1901030 · Report as offensive

Questions and Answers : Unix/Linux : BOINC manager says each s@h task is running on 0.08 CPUs


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.