app_config.xml

Message boards : Graphics cards (GPUs) : app_config.xml
Message board moderation

To post messages, you must log in.

1 · 2 · 3 · 4 · Next

AuthorMessage
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29081 - Posted: 8 Mar 2013, 19:47:09 UTC
Last modified: 8 Mar 2013, 19:51:16 UTC

Hello: You can use <app_config.xml> two tasks to run on a GPU, if so, what is the name of the project or projects to set app_config GPUGRID correctly in "<name>??????? </ name> " in BOINC 7.0.54
ID: 29081 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29082 - Posted: 8 Mar 2013, 20:04:57 UTC

Hello: Solved, by trial and error.

Is: "acemdshort" for short tasks and suppose to be the equivalent long.
ID: 29082 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29083 - Posted: 8 Mar 2013, 20:41:54 UTC
Last modified: 8 Mar 2013, 20:42:34 UTC

Hello: So far works perfectly running two GPU tasks (tasks GTX590x4) plus 1 CPU per task.

We'll see if the performance is worth a whole ...?.
ID: 29083 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ExtraTerrestrial Apes
Volunteer moderator
Volunteer tester
Avatar

Send message
Joined: 17 Aug 08
Posts: 2705
Credit: 1,311,122,549
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29086 - Posted: 8 Mar 2013, 21:38:20 UTC - in response to Message 29083.  

We'll see if the performance is worth a whole ...?.

Probably not.. it hasn't been up to now. And make sure not to miss the early-return-credit-bonus (24h) due to running 2 WUs/GPU.

MrS
Scanning for our furry friends since Jan 2002
ID: 29086 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29098 - Posted: 9 Mar 2013, 17:24:09 UTC
Last modified: 9 Mar 2013, 17:42:08 UTC

Hello: In the first tasks undertaken by configuring TWO tasks per GPU the result is not very encouraging.

The gain in execution time is an average of 5%, that's something but not enough for me.
Obviously only applies to short tasks to keep the bonus.

In other projects like WCG gain is 30% on average, I guess in GPUGRID GPU load is already highly optimized and there is no room.
ID: 29098 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile skgiven
Volunteer moderator
Volunteer tester
Avatar

Send message
Joined: 23 Apr 09
Posts: 3968
Credit: 1,995,359,260
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29102 - Posted: 9 Mar 2013, 22:05:33 UTC - in response to Message 29098.  

Thanks for reporting on your trial Carlesa25; it confirms the status quo.
In the past, I've tested this to exhaustion and at GPUGRID there is little or no gain unless GPU utilization drops below 80%. Even then there's only a moderate increase unless utilization drops to around 60%.
A subsequent concern is the number of different task types run at GPUGRID; typically there are two or three, but sometimes more, so any gain would only apply when you get two similarly low GPU utilizing tasks.

While it's been demonstrated that you can mix apps from different projects and achieve better overall Boinc credits, it's very high maintenance and not something for the novice (not saying you are).

As the project is largely Beta testing, it's really a bad time to be testing app_* and or overclocking.
FAQ's

HOW TO:
- Opt out of Beta Tests
- Ask for Help
ID: 29102 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29182 - Posted: 16 Mar 2013, 20:39:55 UTC - in response to Message 29102.  
Last modified: 16 Mar 2013, 20:41:31 UTC

Hello: I still have some testing to confirm results, for which the interested reader this is the configuration file app_config.xml replaced in the project directory GPUGRID.

<app_config>
<app>
<name>acemd2</ name>
<max_concurrent>4</ max_concurrent>
<gpu_versions>
<gpu_usage>.5</ gpu_usage>
<cpu_usage>1</ cpu_usage>
</gpu_versions>
</app>
</app_config>

Note that in order to work with the two types of short tasks become the name "acemd2" instead of "acemdshort" discussed above.

With this configuration we perform two tasks per GPU and CPU by assigning a task, in this case it is a GTX590 performing 4 tasks using two GPUs and 4 CPUs. Greetings.
ID: 29182 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29210 - Posted: 21 Mar 2013, 18:44:44 UTC - in response to Message 29182.  
Last modified: 21 Mar 2013, 19:13:22 UTC

I'll chime in with my information.
I have 2 nVidia GPUs (GTX 660 Ti, and GTX 460).

When I watch some of the GPUGrid tasks run, I notice that some of them use a CPU all of the time, some tasks only use a CPU part of the time, and some don't really use much CPU. Also, the GPUGrid processes appear to have been tweaked such that the base priority is "Below Normal", which is above "Low" (which CPU tasks use).

With that in mind, since I have 2 video cards and care very much about my other CPU projects, I have decided to use the following app_config.xml. Essentially, I've set it up with 0.499 for cpu_usage, so that even when both video cards are crunching GPUGrid tasks, my CPUs are still kept busy. The GPUGrid projects still get all the CPU they'd need/want (because their base priority is special), and when I happen to get GPUGrid tasks that don't use much CPU, my CPU tasks pick up the slack (Since 0.499 + 0.499 < 1.000, meaning that a CPU core is NOT reserved for GPUGrid)... and the result is always 100% CPU utilization.

I hope you understand that logic. It works well for me.

<app_config>
   <app>
      <name>acemdbeta</name>
      <max_concurrent>50</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.499</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemdlong</name>
      <max_concurrent>50</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.499</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemd2</name>
      <max_concurrent>50</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.499</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemdshort</name>
      <max_concurrent>50</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.499</cpu_usage>
      </gpu_versions>
    </app>
</app_config>


PS: To figure out application names for a given project, you could look at the client_state.xml file. You might also be able to look at the scheduler request xml file for that information.
ID: 29210 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29212 - Posted: 22 Mar 2013, 12:07:22 UTC - in response to Message 29210.  

Hello: "<max_concurrent>50</max_concurrent>" this means that can perform 50 tasks simultaneously ... but assigns only one GPU, I do not understand this configuration.
ID: 29212 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29214 - Posted: 22 Mar 2013, 12:59:05 UTC - in response to Message 29212.  
Last modified: 22 Mar 2013, 13:06:21 UTC

I believe <max_concurrent> means "run up to this many tasks at once, of this application, across your entire computer"

Since I only have 2 GPUs, and I'm only running 1 task per GPU, I could theoretically set it as low as 2 and it wouldn't have any effect.

I just put it to 50 to ensure it never limits me, and to satisfy the spec found at http://boinc.berkeley.edu/trac/wiki/ClientAppConfig. Though I'm told the <max_concurrent> line can be omitted, I'd prefer not to risk it, so I just set it arbitrarily high, to 50.

It's the <gpu_usage> and <cpu_usage> settings that determine how many tasks run at the same time on a given GPU, and how much CPU each task takes.

Make sense?

Come to think of it, in case I add more GPUs in the future, I'll probably go ahead and set <cpu_usage> arbitrarily low, to 0.001, for each of the apps, that way even if I had 3+ GPUs, a CPU core would never be reserved.
ID: 29214 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ExtraTerrestrial Apes
Volunteer moderator
Volunteer tester
Avatar

Send message
Joined: 17 Aug 08
Posts: 2705
Credit: 1,311,122,549
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29215 - Posted: 22 Mar 2013, 15:00:46 UTC - in response to Message 29214.  

Make sense?

Yes.

Come to think of it, in case I add more GPUs in the future, I'll probably go ahead and set <cpu_usage> arbitrarily low, to 0.001, for each of the apps, that way even if I had 3+ GPUs, a CPU core would never be reserved.

I understand CPU projects are important for you.. but this could starve (some of) your GPUs running GPU-Grid. Feel free to test it, though, and report your findings here!

MrS
Scanning for our furry friends since Jan 2002
ID: 29215 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29216 - Posted: 22 Mar 2013, 16:19:59 UTC - in response to Message 29215.  
Last modified: 22 Mar 2013, 16:26:55 UTC

I have tested it already. While watching Task Manager's Details tab, sorted by CPU descending, I see that the acemd process is never starved for CPU, even though other running CPU tasks are (at times) starved.

This is because the acemd process is running at a higher priority; the "base priority" column shows "Below normal" for the acemd task, which is higher than the "Low" priority that the CPU tasks get. Process Explorer also confirms that the GPUGrid process is running priority 6, whereas the CPU tasks are running priority 4.

So, even though the computer is a bit overloaded (especially when a GPUGrid task actually does use a CPU core most of the time), only CPU projects are getting starved. And my CPU is always at 100% usage. It works wonderfully.

So, now my app_config.xml file is:
<app_config>
   <app>
      <name>acemdbeta</name>
      <max_concurrent>9999</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.001</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemdlong</name>
      <max_concurrent>9999</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.001</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemd2</name>
      <max_concurrent>9999</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.001</cpu_usage>
      </gpu_versions>
    </app>
   <app>
      <name>acemdshort</name>
      <max_concurrent>9999</max_concurrent>
      <gpu_versions>
          <gpu_usage>1</gpu_usage>
          <cpu_usage>0.001</cpu_usage>
      </gpu_versions>
    </app>
</app_config>
ID: 29216 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Operator

Send message
Joined: 15 May 11
Posts: 108
Credit: 297,176,099
RAC: 0
Level
Asn
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29221 - Posted: 23 Mar 2013, 4:41:40 UTC - in response to Message 29182.  

Carlesa25;

I tried using your app_config.xml example to run 2 WU per GPU on 2x GTX 590 for acemdlong WU.

I'm using BOINC 7.0.52.

I still get only 1 WU per GPU running.

I put the app_config.xml in the GPUGrid.net project directory.

Any suggestions?

Thanks,

Operator
ID: 29221 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29222 - Posted: 23 Mar 2013, 6:03:42 UTC - in response to Message 29221.  
Last modified: 23 Mar 2013, 6:12:32 UTC

Assuming you have the app_config.xml file in the right location (mine is within the folder: C:\ProgramData\BOINC\projects\www.gpugrid.net)

You'll have to get BOINC to read the file, either by
    Clicking Advanced -> Read config file, or
    Restarting BOINC


In the Event Log, you'll know the file was read, when you see the following line:
3/22/2013 5:32:27 PM | GPUGRID | Found app_config.xml
... within the startup block (Mine is pasted below).

Finally, once the app_config.xml is read, BOINC should show tasks using your configured amount of resources. For instance, my GPUGrid tasks say: "Running (0.001 CPUs + 1 NVIDIA GPU)" If BOINC doesn't show the task using the resources you configured, then try restarting BOINC.

Good luck - Hope you get it to work!

3/22/2013 5:32:27 PM |  | Starting BOINC client version 7.0.58 for windows_x86_64
3/22/2013 5:32:27 PM |  | log flags: file_xfer, sched_ops, task, cpu_sched, unparsed_xml, work_fetch_debug
3/22/2013 5:32:27 PM |  | Libraries: libcurl/7.25.0 OpenSSL/1.0.1 zlib/1.2.6
3/22/2013 5:32:27 PM |  | Data directory: C:\ProgramData\BOINC
3/22/2013 5:32:27 PM |  | Running under account Jacob
3/22/2013 5:32:27 PM |  | Processor: 8 GenuineIntel Intel(R) Core(TM) i7 CPU         965  @ 3.20GHz [Family 6 Model 26 Stepping 4]
3/22/2013 5:32:27 PM |  | Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss htt tm pni ssse3 cx16 sse4_1 sse4_2 popcnt syscall nx lm vmx tm2 pbe
3/22/2013 5:32:27 PM |  | OS: Microsoft Windows 8: Professional with Media Center x64 Edition, (06.02.9200.00)
3/22/2013 5:32:27 PM |  | Memory: 5.99 GB physical, 21.99 GB virtual
3/22/2013 5:32:27 PM |  | Disk: 277.28 GB total, 185.49 GB free
3/22/2013 5:32:27 PM |  | Local time is UTC -4 hours
3/22/2013 5:32:27 PM |  | CUDA: NVIDIA GPU 0: GeForce GTX 660 Ti (driver version 314.21, CUDA version 5.0, compute capability 3.0, 3072MB, 2720MB available, 3021 GFLOPS peak)
3/22/2013 5:32:27 PM |  | CUDA: NVIDIA GPU 1: GeForce GTX 460 (driver version 314.21, CUDA version 5.0, compute capability 2.1, 1024MB, 951MB available, 1025 GFLOPS peak)
3/22/2013 5:32:27 PM |  | OpenCL: NVIDIA GPU 0: GeForce GTX 660 Ti (driver version 314.21, device version OpenCL 1.1 CUDA, 3072MB, 2720MB available, 3021 GFLOPS peak)
3/22/2013 5:32:27 PM |  | OpenCL: NVIDIA GPU 1: GeForce GTX 460 (driver version 314.21, device version OpenCL 1.1 CUDA, 1024MB, 951MB available, 1025 GFLOPS peak)
3/22/2013 5:32:27 PM | Poem@Home | Found app_config.xml
3/22/2013 5:32:27 PM | GPUGRID | Found app_config.xml
3/22/2013 5:32:27 PM | World Community Grid | Found app_config.xml
3/22/2013 5:32:27 PM |  | Config: use all coprocessors
3/22/2013 5:32:27 PM | World Community Grid | Config: excluded GPU.  Type: all.  App: hcc1.  Device: 0
3/22/2013 5:32:27 PM | Poem@Home | Config: excluded GPU.  Type: all.  App: poemcl.  Device: 1
3/22/2013 5:32:27 PM |  | Config: don't compute while iRacingSim.exe is running
3/22/2013 5:32:27 PM |  | Config: don't compute while iRacingSim64.exe is running
3/22/2013 5:32:27 PM |  | Config: don't compute while TmForever.exe is running
3/22/2013 5:32:27 PM |  | Config: don't compute while TmForeverLauncher.exe is running
3/22/2013 5:32:27 PM |  | Config: don't compute while NotepadTest01.exe is running
3/22/2013 5:32:27 PM |  | Config: don't use GPUs while NotepadTest02.exe is running
3/22/2013 5:32:27 PM | rosetta@home | URL http://boinc.bakerlab.org/rosetta/; Computer ID 1605917; resource share 1
3/22/2013 5:32:27 PM | DrugDiscovery | URL http://boinc.drugdiscoveryathome.com/; Computer ID 13899; resource share 1
3/22/2013 5:32:27 PM | Poem@Home | URL http://boinc.fzk.de/poem/; Computer ID 125441; resource share 1
3/22/2013 5:32:27 PM | The Lattice Project | URL http://boinc.umiacs.umd.edu/; Computer ID 80111; resource share 1
3/22/2013 5:32:27 PM | boincsimap | URL http://boincsimap.org/boincsimap/; Computer ID 221424; resource share 1
3/22/2013 5:32:27 PM | superlinkattechnion | URL http://cbl-boinc-server2.cs.technion.ac.il/superlinkattechnion/; Computer ID 70369; resource share 1
3/22/2013 5:32:27 PM | Docking | URL http://docking.cis.udel.edu/; Computer ID 110448; resource share 1
3/22/2013 5:32:27 PM | MindModeling@Beta | URL http://mindmodeling.org/; Computer ID 21995; resource share 1
3/22/2013 5:32:27 PM | Quake-Catcher Network | URL http://qcn.stanford.edu/sensor/; Computer ID 20611; resource share 1
3/22/2013 5:32:27 PM | ralph@home | URL http://ralph.bakerlab.org/; Computer ID 27691; resource share 1
3/22/2013 5:32:27 PM | SETI@home | URL http://setiathome.berkeley.edu/; Computer ID 6930498; resource share 0
3/22/2013 5:32:27 PM | DNA@Home | URL http://volunteer.cs.und.edu/dna/; Computer ID not assigned yet; resource share 100
3/22/2013 5:32:27 PM | WUProp@Home | URL http://wuprop.boinc-af.org/; Computer ID 47890; resource share 1
3/22/2013 5:32:27 PM | Cosmology@Home | URL http://www.cosmologyathome.org/; Computer ID 163889; resource share 1
3/22/2013 5:32:27 PM | GPUGRID | URL http://www.gpugrid.net/; Computer ID 126725; resource share 1
3/22/2013 5:32:27 PM | RNA World | URL http://www.rnaworld.de/rnaworld/; Computer ID 16705; resource share 1
3/22/2013 5:32:27 PM | World Community Grid | URL http://www.worldcommunitygrid.org/; Computer ID 2046930; resource share 187
3/22/2013 5:32:27 PM | World Community Grid | General prefs: from World Community Grid (last modified 17-Mar-2013 12:17:49)
3/22/2013 5:32:27 PM | World Community Grid | Host location: none
3/22/2013 5:32:27 PM | World Community Grid | General prefs: using your defaults
3/22/2013 5:32:27 PM |  | Reading preferences override file
3/22/2013 5:32:27 PM |  | Preferences:
3/22/2013 5:32:27 PM |  | max memory usage when active: 3067.49MB
3/22/2013 5:32:27 PM |  | max memory usage when idle: 3067.49MB
3/22/2013 5:32:27 PM |  | max disk usage: 0.00GB
3/22/2013 5:32:27 PM |  | max upload rate: 65536 bytes/sec
3/22/2013 5:32:27 PM |  | (to change preferences, visit a project web site or select Preferences in the Manager)
3/22/2013 5:32:27 PM |  | [work_fetch] Request work fetch: Prefs update
3/22/2013 5:32:27 PM |  | [work_fetch] Request work fetch: Startup
3/22/2013 5:32:27 PM |  | Not using a proxy

ID: 29222 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29224 - Posted: 23 Mar 2013, 12:53:15 UTC - in response to Message 29221.  
Last modified: 23 Mar 2013, 12:58:53 UTC

Hello: As JacobKlein says should work.

To ensure your app_config.xml fits all short tasks <name> can put two lines with each of their names is:

<app_config>
<app>
<name>acemd2</ name>
<name>acemdshort</ name>
<max_concurrent>4</ max_concurrent>
<gpu_versions>
<gpu_usage>.5</ gpu_usage>
<cpu_usage>1</ cpu_usage>
</gpu_versions>
</app>
</app_config>

With this configuration must be able to run two GPU tasks and assign each task a CPU for short (unless they change the names). Regards
ID: 29224 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29227 - Posted: 23 Mar 2013, 15:24:29 UTC - in response to Message 29224.  
Last modified: 23 Mar 2013, 15:31:43 UTC

Hello: As JacobKlein says should work.

To ensure your app_config.xml fits all short tasks <name> can put two lines with each of their names is:

<app_config>
<app>
<name>acemd2</ name>
<name>acemdshort</ name>
<max_concurrent>4</ max_concurrent>
<gpu_versions>
<gpu_usage>.5</ gpu_usage>
<cpu_usage>1</ cpu_usage>
</gpu_versions>
</app>
</app_config>

With this configuration must be able to run two GPU tasks and assign each task a CPU for short (unless they change the names). Regards


Umm, as far as I know, you are NOT USING THE XML CORRECTLY.

Here's the documentation:
http://boinc.berkeley.edu/trac/wiki/ClientAppConfig

Each application needs to have its own <app> block. You are not supposed to put multiple <name> blocks within an <app> block.

A good starting point would be to
- use this code block below
- save it to your www.gpugrid.net project directory as a file called app_config.xml
- instruct BOINC to read it (by using Advanced -> Read config file, or by restarting BOINC)
- look for the message in the Event Log for the GPUGrid project that says "Found app_config.xml" to verify BOINC saw it
- then tweak only the <gpu_usage> and <cpu_usage> lines, to tell BOINC how much resources each application's tasks take
- instruct BOINC to read it again, any time you make a change to it

<app_config>
<app>
<name>acemdbeta</name>
<max_concurrent>9999</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>0.001</cpu_usage>
</gpu_versions>
</app>
<app>
<name>acemdlong</name>
<max_concurrent>9999</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>0.001</cpu_usage>
</gpu_versions>
</app>
<app>
<name>acemd2</name>
<max_concurrent>9999</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>0.001</cpu_usage>
</gpu_versions>
</app>
<app>
<name>acemdshort</name>
<max_concurrent>9999</max_concurrent>
<gpu_versions>
<gpu_usage>1</gpu_usage>
<cpu_usage>0.001</cpu_usage>
</gpu_versions>
</app>
</app_config>


If you wanted 2 tasks to run on a single GPU, I'd recommend changing the <gpu_usage> and <cpu_usage> lines to say:
<gpu_usage>0.5</gpu_usage>
<cpu_usage>0.001</cpu_usage>
ID: 29227 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Carlesa25
Avatar

Send message
Joined: 13 Nov 10
Posts: 328
Credit: 72,619,453
RAC: 0
Level
Thr
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29230 - Posted: 23 Mar 2013, 17:40:27 UTC - in response to Message 29227.  

Hello: It sure can put multiple labels <name>.

Naturally provided <gpu_usage> and <cpu_usage> parameters are the same for the aforementioned tasks.

In my case as short tasks using both names are
<name>acemd2</name>
<name>acemdshort</name>

So I cover the two variants.

For long I see interesting tasks execute more than one task per GPU.

<cpu_usage>0.001</cpu_usage> continued without understanding this configuration.

He says to use only one thousandth of CPU for each task, but in reality what will send the "priority" that the task is assigned by default to the OS (low, medium, high, etc ...)

Using Ubuntu 10.12-64bits not if Windows responds differently, but really what matters is what each one would work. Greetings.
ID: 29230 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29231 - Posted: 23 Mar 2013, 18:54:07 UTC - in response to Message 29230.  
Last modified: 23 Mar 2013, 19:03:24 UTC

Carlesa, I know what I'm talking about, and your syntax is wrong. I've done some local testing on my machine to conclusively prove it, too.

Basically, by supplying multiple <name> tags within the same <app> block, the program only applies the requested <gpu_usage> and <cpu_usage> tags to the LAST <name> tag that was provided. The prior <name> tags are essentially ignored. You can prove it by testing this, yourself. Please don't spread incorrect information.

The correct syntax is the one that I've provided, where the different apps each have their own <app> block, and each <app> block only has 1 <name> tag.

Thanks,
Jacob
ID: 29231 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ExtraTerrestrial Apes
Volunteer moderator
Volunteer tester
Avatar

Send message
Joined: 17 Aug 08
Posts: 2705
Credit: 1,311,122,549
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29242 - Posted: 25 Mar 2013, 16:10:35 UTC - in response to Message 29216.  

I have tested it already. While watching Task Manager's Details tab, sorted by CPU descending, I see that the acemd process is never starved for CPU, even though other running CPU tasks are (at times) starved.

So the ACEMDs are still grabbing CPU time. Now the important question is: are they able to do this just at the right time to avoid the GPU running dry, i.e. does GPU performance suffer (I suppose so) and by how much? The latter would be needed for people to decide if this trade-off is worth it for them.

Watching GPU utilization, maybe averaging it, would be a nice indicator. Although the best performance indicator would be WU runtimes for similar tasks.

MrS
Scanning for our furry friends since Jan 2002
ID: 29242 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Jacob Klein

Send message
Joined: 11 Oct 08
Posts: 1127
Credit: 1,901,927,545
RAC: 0
Level
His
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 29246 - Posted: 25 Mar 2013, 19:28:09 UTC - in response to Message 29242.  
Last modified: 25 Mar 2013, 19:32:54 UTC

From what I can tell (and I admittedly do need to do some more testing), on my quad-core hyper-threaded (so windows sees 8 CPUs) machine, here's what I see:

When the CPUs are under full load with other projects, a Long-Run NATHAN GPUGrid task gets about 86% GPU Load on my GTX 660 Ti FTW, while also using a full CPU core.

When the CPUs are not under load (ie: I have set BOINC to use 0.01 % of the processors), a Long-Run NATHAN GPUGrid task gets about 90% GPU Load on my GTX 660 Ti FTW, while also using a full CPU core.

Even though under full CPU load the ACEMD process isn't starved for CPU, I believe it is still "competing" for 2 things:
1) The process is running full blast, along with another process, hyper-threaded, on the same core.
2) If the number of active processes is larger than the 8 CPUs windows sees, there's context swapping that decreases performance.

So, there is a trade-off, as you say. I think the best way to determine how to maximize GPUGrid performance, while not sacrificing CPU task performance, is to test running the GPUGrid tasks, at various levels of BOINC x% of the processors, and then comparing task run times. I haven't done this yet, and might not get around to it, as I believe that keeping the CPU busy outweighs slightly overloading the CPU and slightly sacrificing % GPU Load.

Hope that makes sense.

I'm due to get more memory for this machine in a week or so, which will help me to even better ensure that the 8 CPU slots remain filled. I *might* get around to doing the tests mentioned above, maybe.

PS: I find it a bit odd that, when a Long-Run NATHAN task is processing on the GTX 660 Ti, the ACEMD process uses a full CPU, yet when a Long-Run NATHAN task is processing on the GTX 460, the ACEMD process doesn't appear to use much CPU at all. Does that really depend on the GPU card's architecture? If so, then it's great that I'm using 0.001 <cpu_usage>; better to assume it's NOT using a CPU, than to assume it is.
ID: 29246 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
1 · 2 · 3 · 4 · Next

Message boards : Graphics cards (GPUs) : app_config.xml

©2025 Universitat Pompeu Fabra