limit / control gpu usage via boinc config files / non_gpu coprocessor

Message boards : GPUs : limit / control gpu usage via boinc config files / non_gpu coprocessor
Message board moderation

To post messages, you must log in.

AuthorMessage
user666

Send message
Joined: 4 Apr 15
Posts: 4
Germany
Message 61554 - Posted: 12 Apr 2015, 14:42:25 UTC

its strange that supposedly one is unable to limit or control gpu usage by opencl for example.

i had an idea and tried to play around with the coproc_info.xml where i halved the gpu specifications hoping it would define a limit for boinc but strangely i had not impact.

my basic idea was telling boinc false ideas about the gfxs specification so it would not torture it so much and thereby effectively reducing gpu load.

i cant imagine there is no way you cant control / limit gpu usage. im sure there is a way with the config files or something!

would be nice if we could figure it out, because id really love to have it run on 50% of my gpu, otherwise i have to disable gpu computing and i find that very sad due to that lack of control.

is it possible to run the gpu as non_gpu co-processor?

if so, it should adjust with cpu settings.

<coproc>
specify a coprocessor. Used in combination with the Anonymous platform mechanism. The element has the form
<coproc>
<type>some_name</type>
<count>1</count>
<device_nums>0 2</device_nums>
[ <peak_flops>1e10</peak_flops> ]
[ <non_gpu/> ]
</coproc>

The name given in <type> must match that in the <coproc> element in app_info.xml. <count> in the number of GPU instances, and <device_nums> is their device numbers. <peak_flops> is the GPU peak FLOPS; it can be omitted if your app_info.xml specifies estimated application FLOPS. If <non_gpu/> is specified, the coprocessor is not treated as a GPU; i.e. "Suspend GPU" does not affect it. This mechanism has two purposes: to provide fine-grained control of the coprocessors recognized by BOINC (NVIDIA, AMD, and Intel GPUs), and to let you use coprocessors not recognized by BOINC.

i tried to get it to work with a cc_config.xml file looking like this:

<cc_config>
<options>
<coproc>
<type>ATI</type>
<count>1</count>
<device_nums>0</device_nums>
<non_gpu/>
</coproc>
</options>
</cc_config>

im not sure if this is correct and working since my gpu load is still 0%. but also i did not use an app_info.xml. can someone clarify? im trying to use gpu as non_gpu co-processor.
ID: 61554 · Report as offensive
Claggy

Send message
Joined: 23 Apr 07
Posts: 1112
United Kingdom
Message 61555 - Posted: 12 Apr 2015, 15:20:12 UTC - in response to Message 61554.  
Last modified: 12 Apr 2015, 15:35:35 UTC

i tried to get it to work with a cc_config.xml file looking like this:

<cc_config>
<options>
<coproc>
<type>ATI</type>
<count>1</count>
<device_nums>0</device_nums>
<non_gpu/>
</coproc>
</options>
</cc_config>

im not sure if this is correct and working since my gpu load is still 0%. but also i did not use an app_info.xml. can someone clarify? im trying to use gpu as non_gpu co-processor.

The specify a coprocessor cc_config.xml is only for specifying a Non-Nvidia/ATI/Intel_GPU coprocessor, Boinc can already detect those co-processors, so it is not needed,
If you have something like a Parallella, or a Raspberyy Pi, then you could use it to specify the Epiphany co-processor on the Parallella, or the Raspberry Pi's VideoCore IV dual-core GPU,
then Boinc could (if there were apps available, and you'd supplied them in app_info's) get work to utilise those co-processors.

About limiting GPU usage, you'd have to ask the project application writers how to configure their applications to make them less efficient, or use TThrottle.

Edit: I see the wiki wording says 'This mechanism has two purposes: to provide fine-grained control of the coprocessors recognized by BOINC (NVIDIA, AMD, and Intel GPUs), and to let you use coprocessors not recognized by BOINC.',
I don't see how it can allow fine-grained control of the coprocessors beyond changing the number of tasks run, or the number of devices.

Claggy
ID: 61555 · Report as offensive
user666

Send message
Joined: 4 Apr 15
Posts: 4
Germany
Message 61718 - Posted: 19 Apr 2015, 19:27:55 UTC

thanks so far. i believe its very bad one is unable to control / limit gpu usage via the boinc client. it should be implemented asap. a lot of people really want and need this option. i see no reason this is not realized by the devs.
ID: 61718 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15506
Netherlands
Message 61719 - Posted: 19 Apr 2015, 20:21:42 UTC - in response to Message 61718.  

i see no reason this is not realized by the devs.

It's technically not yet possible to throttle/limit a GPU based purely on the amount of cores it can use. The GPU is either on (in use) or off (not in use). Simple as that.

Want that changed? Go ask the GPU manufacturers to add support for it.
When that's done, ask the OpenCL/CUDA developers to add software support for it.

Only then will BOINC be able to do something like that.
ID: 61719 · Report as offensive
Profile Flying Frisian

Send message
Joined: 14 May 15
Posts: 1
Netherlands
Message 62163 - Posted: 14 May 2015, 9:21:02 UTC - in response to Message 61554.  

Also waiting for tweakable gpu-usage. Till then, I have my Radeon4850 tuned down to 560MHz and the fan speed up to 52%, making for noisy but satisfying crunching at 97 degrees Celcius...
ID: 62163 · Report as offensive

Message boards : GPUs : limit / control gpu usage via boinc config files / non_gpu coprocessor

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.