How to crunch MW@Home, on JUST the GPU?

VirtualLarry

No Lifer
Aug 25, 2001
56,560
10,175
126
Curious, since disabling CPU on BOINC projects generally prevents GPU WUs from processing too.

Is there any way to tell MW@Home to only crunch GPU WUs (which would require 1 CPU core), and not crunch the CPU WUs?
 

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
yes - its under your Milkyway@Home web preferences. just uncheck the "use CPU" box, and check either the "use AMD (ATI) GPU" box or the "use NVIDIA GPU" box or both, depending on what GPUs you're using for MW@H. this allows me to fetch only GPU work for the project.
 

Rudy Toody

Diamond Member
Sep 30, 2006
4,267
421
126
Curious, since disabling CPU on BOINC projects generally prevents GPU WUs from processing too.

Is there any way to tell MW@Home to only crunch GPU WUs (which would require 1 CPU core), and not crunch the CPU WUs?

yes - its under your Milkyway@Home web preferences. just uncheck the "use CPU" box, and check either the "use AMD (ATI) GPU" box or the "use NVIDIA GPU" box or both, depending on what GPUs you're using for MW@H. this allows me to fetch only GPU work for the project.

That's how I do it!:thumbsup:
 

StitchExperimen

Senior member
Feb 14, 2012
345
5
81
you can also make a file and put it under the hidden file ProgramData/projects/(milkyway or whatever its called)and the file is named
app_config.xml do it in notepad and save it as *.* not .txt

the contents of the file should look like this.

<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>1</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>1</cpu_usage>
</gpu_versions>
</app>
</app_config>

if you had 2 graphics cards it would be

<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>2</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>1</cpu_usage>
</gpu_versions>
</app>
</app_config>

This would be the most likely settings for a Nvidia card.

For AMD cards they load multiple CPU's wu.

<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>8</max_concurrent>
<gpu_versions>
<gpu_usage>.125</gpu_usage>
<cpu_usage>1</cpu_usage> if its a 4/8 core if its a 4 core it would be .5
</gpu_versions>
</app>
</app_config>

for one graphics card

for 2 graphics cards you need a 4/8 core processor and I know this setting can be done on a i7 3770

<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>18</max_concurrent>
<gpu_versions>
<gpu_usage>.111100</gpu_usage>
<cpu_usage>.5</cpu_usage>
</gpu_versions>
</app>
</app_config>

you can run a AMD card and a Nvidia card

say the AMD is in the first position followed by the Nvidia in slot 3 (the program doesn't care about slots just order.

using a 4/8 core
<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>10</max_concurrent>
<gpu_versions>
<gpu_usage>.111100</gpu_usage>
<cpu_usage>.5</cpu_usage>
</gpu_versions>
</app>
</app_config>

this gives 9 wu for the AMD and 1 for the Nvidia

you can switch the cards around for the following numbers.

<app_config>
<app>
<name>milkwayname abbreviation</name>
<max_concurrent>10</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>.5</cpu_usage>
</gpu_versions>
</app>
</app_config>

you can also do 3 cards but heat becomes a issue unless your running lesser cards then you can, but I'd have to change the cpu_usage number to a more precise value than the loose simple settings that are being used.

also you can run a limited number of cpu wu.

<app_config>
<app>
<name>hpf2 a folding program in WCG</name>
<max_concurrent>3</max_concurrent>
</app>
</app_config>
 
Last edited:

Sunny129

Diamond Member
Nov 14, 2000
4,823
6
81
while the app_config.xml file is another way to achieve what the OP wants to achieve, i prefer to utilize as many web settings that are available to me through the project server. the less files you have to employ on your own end (cc_config.xml, app_info.xml, app_config.xml, etc.), the simpler things remain.

in addition, there is no real advantage to running more than 2 Milkyway@Home separation tasks simultaneously on a GPU. you'll note that it only takes a solitary separation task to max out the load on the GPU (AMD/ATI GPUs anyways...i can't speak for nVidia GPUs b/c i've never used them for MW@H). this means that there isn't any spare GPU power to handle a 2nd task any more efficiently than it handled the first task. in other words, 2 tasks will take approx. twice as long as a single task, 3 tasks will take approx. 3 times as long as a single task, and so on and so forth. knowing that, it makes little sense to try and run 3 or more MW@H GPU tasks simultaneously, even though you can force each GPU task to use only a fraction of the GPU's resources via an app_config.xml file.

the reason running 2 simultaneous tasks can sometimes be more efficient than running a solitary task is b/c the last few seconds of a task runs on the CPU, not the GPU. running one at a time means a 2nd task cannot start until the first is fully complete. running 2 tasks simultaneously means that a 2nd task can start running a few seconds before the first task finishes (specifically at the moment the first task stops crunching on the GPU and starts crunching on the CPU). this small overlap may seem negligible, but i did the math once, and it turned out to be several thousand PPD on a shader-unlocked HD 6950 GPU.

so knowing that running more than 2 tasks per GPU is pointless b/c it doesn't improve compute efficiency/run times, you might as well only run 4 tasks simultaneously on a machine w/ 2 GPUs for example, b/c running 8 tasks simultaneously on the same machine isn't going to get the work done any faster. and if we know that the most we can run on a dual GPU machine is only 4 simultaneous tasks before the efficiency improvement curve plateaus, then we can also get away w/ much less CPU than a 4C/8T i7 CPU. when running 4 MW@H tasks simultaneously (on 2 GPUs), my CPU usage hovers between 0% and 5%...sure it occasionally spikes to ~15%, but only for an instant. so my average CPU usage is probably somewhere around 3%-4%. in other words, MW@H AMD/ATI GPU tasks hardly consume CPU resources - a single core of my 6-core CPU can more than handle the 4 MW@H tasks (again, i can't speak for MW@H nVidia GPU tasks).