Welcome to MilkyWay@home

Calculation error with app_info.xml

Message boards : Number crunching : Calculation error with app_info.xml
Message board moderation

To post messages, you must log in.

AuthorMessage
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50574 - Posted: 7 Aug 2011, 11:35:13 UTC

Hi

i tried to control the GPU usage with an app_info.xml, but since i had it the computation failed.

Tahs the content of it:

<app_info>
<app>
<name>milkyway</name>
</app>
<file_info>
<name>milkyway_nbody_0.66_windows_x86_64__mt.exe</name>
<executable/>
</file_info>
<file_info>
<name>milkyway_separation_0.82_windows_x86_64__ati14.exe</name>
<executable/>
</file_info>
<app_version>
<app_name>milkyway</app_name>
<version_num>82</version_num>
<api_version>6.12.0</api_version>
<file_ref>
<file_name>milkyway_nbody_0.66_windows_x86_64__mt.exe</file_name>
<main_program/>
</file_ref>
<coproc>
<type>ati</type>
<count>1</count>
</coproc>
<plan_class>ati14</plan_class>
<flops>1.10e11</flops>
<avg_ncpus>0.05</avg_ncpus>
<max_ncpus>0.05</max_ncpus>
<cmdline>--gpu-target-frequency 55</cmdline>
<file_ref>
<file_name>milkyway_separation_0.82_windows_x86_64__ati14.exe</file_name>
<open_name>graphics_app</open_name>
</file_ref>
</app_version>
</app_info>

Can u tell me any erors in the syntax or something?

Another question, will the GPU computation stop if i start a 3D game?
Boinc is set to: Use CPU only if unter 30% (that measny in the Game Boinc stops working.

Hope for some Ideas. Thanks in advance.
ID: 50574 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50576 - Posted: 7 Aug 2011, 13:03:54 UTC - in response to Message 50574.  
Last modified: 7 Aug 2011, 13:22:17 UTC

Here's mine, which works without problems. I run 2 tasks per GPU core, so have <count>0.5</count>

<app_info>
<app>
<name>milkyway</name>
</app>
<file_info>
<name>milkyway_separation_0.82_windows_x86_64__ati14.exe</name>
<executable/>
</file_info>
<app_version>
<app_name>milkyway</app_name>
<version_num>82</version_num>
<flops>1.0e11</flops>
<avg_ncpus>0.05</avg_ncpus>
<max_ncpus>1</max_ncpus>
<plan_class>ati14ati</plan_class>
<coproc>
<type>ATI</type>
<count>0.5</count>
</coproc>
<cmdline>--gpu-target-frequency 100 --gpu-disable-checkpointing</cmdline>
<file_ref>
<file_name>milkyway_separation_0.82_windows_x86_64__ati14.exe</file_name>
<main_program/>
</file_ref>
</app_version>
</app_info>

Differences I noticed are:

Yours:<max_ncpus>0.05</max_ncpus>
Mine:<max_ncpus>1</max_ncpus>

Yours:<open_name>graphics_app</open_name>
Mine:<main_program/>

Yours:<api_version>6.12.0</api_version>
Mine: not present

I know nothing of 3D games, but I do know there are options that can be used for them in a cc_config.xml file such as:

<exclusive_app>filename.exe</exclusive_app>
BOINC will suspend computing whenever the executable is running (e.g., a game). Case is ignored in filenames. Multiple applications can be specified. New in 6.3.13

<exclusive_gpu_app>important.exe</exclusive_gpu_app>
BOINC will suspend use of GPUs whenever the executable is running.
New in 6.10.20

Edit:I've never processed an nbody task but don't you need to open and copy the other files too? Something like this:

<file_info>
<name>libgomp_64_nbody_0.66.dll</name>
<open_name>libgomp_64-1.dll</open_name>
<copy_file/>
<executable/>
</file_info>

<file_info>
<name>pthreadGC2_64_nbody_0.66.dll</name>
<open_name>pthreadGC2_64.dll</open_name>
<copy_file/>
<executable/>
</file_info>
ID: 50576 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50578 - Posted: 7 Aug 2011, 14:14:19 UTC - in response to Message 50576.  

Thanks looks good, but now it used 2 tasks 0.5 GPU can i set that it used only one task ? I want the GPU only loadet to 50%
ID: 50578 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50579 - Posted: 7 Aug 2011, 14:23:37 UTC

Just change count <count>0.5</count> to <count>1</count> and it will only process one task per GPU core.

I don't know about throttling the GPU to 50%. I use --gpu-target-frequency 100 to stop the the GUI becoming sluggish.
ID: 50579 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50580 - Posted: 7 Aug 2011, 15:08:14 UTC - in response to Message 50579.  

I changed it to the following but it does not makes that effect i want to get GPU target usage 50%)

how to solve that ... =(


<app_info>
<app>
<name>milkyway</name>
</app>
<file_info>
<name>milkyway_separation_0.82_windows_x86_64__ati14.exe</name>
<executable/>
</file_info>
<app_version>
<app_name>milkyway</app_name>
<version_num>82</version_num>
<flops>2.0e11</flops>
<avg_ncpus>0.5</avg_ncpus>
<max_ncpus>0.5</max_ncpus>
<plan_class>ati14ati</plan_class>
<coproc>
<type>ATI</type>
<count>1</count>
</coproc>
<cmdline>--gpu-target-frequency 50 --gpu-disable-checkpointing </cmdline>
<file_ref>
<file_name>milkyway_separation_0.82_windows_x86_64__ati14.exe</file_name>
<main_program/>
</file_ref>
</app_version>
</app_info>
ID: 50580 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50581 - Posted: 7 Aug 2011, 15:44:22 UTC

Yes what you need is something like the wait factor w parameter that was used with the older application.

There is a --non-responsive parameter now, but I don't know what it does or how to use it. Perhaps it is similar to the wait factor parameter.
ID: 50581 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50582 - Posted: 7 Aug 2011, 16:00:19 UTC - in response to Message 50581.  
Last modified: 7 Aug 2011, 16:03:34 UTC

Damn and i find nothing with "non responsive" via google.
ID: 50582 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Link
Avatar

Send message
Joined: 19 Jul 10
Posts: 601
Credit: 19,035,317
RAC: 6,035
Message 50583 - Posted: 7 Aug 2011, 17:08:35 UTC - in response to Message 50580.  

i want to get GPU target usage 50%)

Why? I mean for to help you, it's better to know what you actually want to achive by that. In general you should increase --gpu-target-frequency till you get what you want.
ID: 50583 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50584 - Posted: 7 Aug 2011, 17:09:50 UTC

Haven't seen anyone using --non-responsive parameter. Just a warning to use with caution. Perhaps only Matt Arsenault would know about it as he is mentioned here.

Perhaps you could experiment by trying higher --gpu-target-frequency values. Maybe 200 or higher and see what happens.

I don't think there should be a space between a parameter and </cmdline> as shown in your app_info.xml file.
ID: 50584 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50585 - Posted: 7 Aug 2011, 17:12:22 UTC - in response to Message 50583.  
Last modified: 7 Aug 2011, 17:28:34 UTC

Ok if the GPU is at 98% or 100% the windows in windows (yD) are "lagging" i cant work with my PC but i like to use the GPU but only 50% of it. If i start my Battlefield BC2 i hope the System stops using GPU for Computing to serve all ressources to the game.

I fear that is a difficult setup but i can't be the only one who want to set it up like this.

=)

I use "use CPU while computer is in use up to 75% of Cores and 75%CPU Time. Use only if CPU is lower than 20%: Same settings i wish for GPU =))

Edit:

--gpu-target-frequency values up to 300 has no effects
ID: 50585 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Link
Avatar

Send message
Joined: 19 Jul 10
Posts: 601
Credit: 19,035,317
RAC: 6,035
Message 50586 - Posted: 7 Aug 2011, 17:31:12 UTC - in response to Message 50585.  
Last modified: 7 Aug 2011, 17:32:47 UTC

Ok if the GPU is at 98% or 100% the windows in windows (yD) are "lagging" i cant work with my PC but i like to use the GPU but only 50% of it. If i start my Battlefield i hope the System stops using GPU for Computing to serve all ressources to the game.

OK. To get the lagging away increase the value for --gpu-target-frequency untill it's gone. My HD3850 is at about 200 OK for me, but it is still noticeable, I *think* your HD5800 should be OK with that value, but of course it depends on your requirements and also from the applications you use, so eventually you'll have to go higher. But there's no need to stick to some arbitary usage-% values. For to stop it when playing games follow the instructions from kashi about <exclusive_gpu_app>. About how to create a cc_config.xml and all possible parameters read here.



I use "use CPU while computer is in use up to 75% of Cores and 75%CPU Time. Use only if CPU is lower than 20%: Same settings i wish for GPU =))

For CPU it should actually not be necessary, the BOINC tasks run at lowest priority, unlike from the GPU apps, I have never noticed any slow down from them and I run allways 100% CPU.
ID: 50586 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50587 - Posted: 7 Aug 2011, 18:12:52 UTC

Also right click of BOINC icon in tray will allow use of Snooze GPU function which lasts for one hour.
ID: 50587 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
n i s s l

Send message
Joined: 17 Aug 10
Posts: 7
Credit: 3,663,707
RAC: 0
Message 50588 - Posted: 7 Aug 2011, 18:44:28 UTC - in response to Message 50587.  

<cmdline>--gpu-target-frequency 500</cmdline>

no effect =((
ID: 50588 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Link
Avatar

Send message
Joined: 19 Jul 10
Posts: 601
Credit: 19,035,317
RAC: 6,035
Message 50589 - Posted: 7 Aug 2011, 18:52:34 UTC - in response to Message 50588.  
Last modified: 7 Aug 2011, 18:59:09 UTC

Try to catch the stderr of one task and post it here. If you don't get it from the results page, suspend the network access in BOINC, wait till a task finishes and copy it from client_state.xml.

EDIT: got one from your result page.
<stderr_txt>
Error loading Lua script 'astronomy_parameters.txt': [string "number_parameters: 4..."]:1: '<name>' expected near '4' 
Error reading astronomy parameters from file 'astronomy_parameters.txt'
  Trying old parameters file
Using SSE3 path
Found 1 CAL devices
Chose device 0

Device target:         CAL_TARGET_CYPRESS
Revision:              2
CAL Version:           1.4.1457
Engine clock:          800 Mhz
Memory clock:          1000 Mhz
GPU RAM:               1024
Wavefront size:        64
Double precision:      CAL_TRUE
Compute shader:        CAL_TRUE
Number SIMD:           14
Number shader engines: 2
Pitch alignment:       256
Surface alignment:     4096
Max size 2D:           { 16384, 16384 }

Estimated iteration time 221.304688 ms
Target frequency 500.000000 Hz, polling mode 1
Dividing into 110 chunks, initially sleeping for 0 ms
Warning: Estimated number of chunks (110) too large. Using 100
Integration range: { nu_steps = 640, mu_steps = 1600, r_steps = 1400 }
Using 100 chunk(s) with sizes:   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16
Integration time = 270.085553 s, average per iteration = 422.008677 ms
Integral 0 time = 271.289812 s
Estimated iteration time 55.326172 ms
Target frequency 500.000000 Hz, polling mode 1
Dividing into 27 chunks, initially sleeping for 0 ms
Warning: Estimated number of chunks (27) too large. Using 25
Integration range: { nu_steps = 640, mu_steps = 400, r_steps = 1400 }
Using 25 chunk(s) with sizes:   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16
Integration time = 67.129134 s, average per iteration = 104.889273 ms
Integral 1 time = 67.417949 s
Estimated iteration time 55.326172 ms
Target frequency 500.000000 Hz, polling mode 1
Dividing into 27 chunks, initially sleeping for 0 ms
Warning: Estimated number of chunks (27) too large. Using 25
Integration range: { nu_steps = 640, mu_steps = 400, r_steps = 1400 }
Using 25 chunk(s) with sizes:   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16   16
Integration time = 65.369676 s, average per iteration = 102.140119 ms
Integral 2 time = 65.652030 s
Likelihood time = 1.661683 s
<background_integral> 0.000697515893878 </background_integral>
<stream_integral>  76.297177933527365  302.643634431836460  1643.830301876755100 </stream_integral>
<background_likelihood> -3.375189905316259 </background_likelihood>
<stream_only_likelihood>  -66.548300727842545  -3.644218203004212  -4.276254175182278 </stream_only_likelihood>
<search_likelihood> -2.979175269732410 </search_likelihood>
<search_application> milkywayathome_client separation 0.82 Windows x86_64 double CAL++ </search_application>
20:50:16 (4476): called boinc_finish

</stderr_txt>

Hmm... looks OK to me, it definitely accept the setting, why it does not slow down from it I can't tell you. Sorry. Let's hope someone who has a similar card knows what settings are needed for it.
ID: 50589 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Len LE/GE

Send message
Joined: 8 Feb 08
Posts: 261
Credit: 104,050,322
RAC: 0
Message 50591 - Posted: 7 Aug 2011, 21:49:51 UTC
Last modified: 7 Aug 2011, 21:54:24 UTC

The chunk sizes are a multiple of 16, so it makes no sense to increase the frequency above a certain number. The smaller the chunks, the higher the overhead for transfers etc. From the log above I expect double of a normal run time.
The advantage of smaller chunks is that other programs have a chance to use the gpu quicker, but it doesn't leave the gpu unused for a certain percentage.

--gpu-target-frequency 30 (that's the default)
This means 30 chunks per second or 33.3ms per chunk as a value to calculate the chunk sizes (multiples of 16)

--non-responsive
This means the calculations are done as 1 big chunk. Use with caution!

--gpu-polling-mode (v0.82:default 1, with v0.86+ it will chance to default 0)
A positive integer > 0 sets the polling frequency in milliseconds, this means the time intervals the cpu waits before it polls the gpu for the results.

--process-priority 2 (default, 0 (lowest) ... 4 (highest))


The trick to get gpu usage down to 50% is to let the cpu wait double as long as the gpu needs for a chunk.

I am using
<cmdline>--gpu-target-frequency 60 --gpu-polling-mode 16 --process-priority 1</cmdline>
to keep my system responsive with only small overhead per WU.
--process-priority 1 gives other processes with normal priority advantage before the next WU chunk
You should try something along of this parameter combination first.

Changing the setting to --gpu-polling-mode 34 should lower my gpu usage to around 50%.
ID: 50591 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Matt Arsenault
Volunteer moderator
Project developer
Project tester
Project scientist

Send message
Joined: 8 May 10
Posts: 576
Credit: 15,979,383
RAC: 0
Message 50621 - Posted: 9 Aug 2011, 23:23:06 UTC - in response to Message 50581.  

Yes what you need is something like the wait factor w parameter that was used with the older application.

There is a --non-responsive parameter now, but I don't know what it does or how to use it. Perhaps it is similar to the wait factor parameter.
That does the opposite. That skips any effort to try keeping the system responsive if you do not care about using your computer (or if the GPU isn't used for display or something) and only want maximum speed.
ID: 50621 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile kashi

Send message
Joined: 30 Dec 07
Posts: 311
Credit: 149,490,184
RAC: 0
Message 50623 - Posted: 10 Aug 2011, 1:12:55 UTC

Thank you for the --non-responsive parameter explanation Matt.

Thanks also to Len LE/GE for extra details about using the parameters. --gpu-polling-mode is not mentioned in the options.txt file. It was probably mentioned at an earlier stage of development I missed because I was only using the default application until more recently.
ID: 50623 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote

Message boards : Number crunching : Calculation error with app_info.xml

©2024 Astroinformatics Group