How to run CPU and GPU apps?


Message boards : Number crunching : How to run CPU and GPU apps?

Message board moderation

To post messages, you must log in.
1 · 2 · Next
AuthorMessage
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3843 - Posted: 2 Dec 2014, 16:59:43 UTC
Maybe this is a boinc issue. If so I'm sure somebody will point me elsewhere.
I have only a low performance GPU (GTX650) and it is happily crunching away but there are 3 idle CPU cores that could be doing something in parallel. How would I set up app_config.xml to allow A@H to use at least one of those idle cores? When I first joined this project the servers downloaded all the CPU apps (SSE2, etc.) as well as the GPU app (cuda55) and then followed with work units that ran in each of the apps. I understood that was a "calibration" period to allow the servers to discover which apps were the most productive and that process has come to the natural conclusion that the GPU is best. So, now only the GPU apps run. If I set "max_concurrent" = 2 will that try to run 2 GPU tasks? (That would be counter-productive as the GPU is maxed out on 1 task.) How about 2 concurrent but use "gpu_usage" and "cpu_usage" parameters to control the resource assignment? I have those at 0.9 and 0.5, respectively, now. And, one last question... is there a way to configure the SSE2 app to be used, as that seems to be the fastest CPU app in previously completed work units? I could try the brute force approach, simply delete the SSE3 and AVX apps, but then the servers might notice they were gone and reload them.
Somebody else must have figured this out already. I would appreciate the benefit of your experience. Thanks.
ID: 3843 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile mikey
Avatar

Send message
Joined: 1 Jan 14
Posts: 300
Credit: 32,223,945
RAC: 8,111
Message 3844 - Posted: 3 Dec 2014, 12:28:02 UTC - in response to Message 3843.  
Maybe this is a boinc issue. If so I'm sure somebody will point me elsewhere.
I have only a low performance GPU (GTX650) and it is happily crunching away but there are 3 idle CPU cores that could be doing something in parallel. How would I set up app_config.xml to allow A@H to use at least one of those idle cores? When I first joined this project the servers downloaded all the CPU apps (SSE2, etc.) as well as the GPU app (cuda55) and then followed with work units that ran in each of the apps. I understood that was a "calibration" period to allow the servers to discover which apps were the most productive and that process has come to the natural conclusion that the GPU is best. So, now only the GPU apps run. If I set "max_concurrent" = 2 will that try to run 2 GPU tasks? (That would be counter-productive as the GPU is maxed out on 1 task.) How about 2 concurrent but use "gpu_usage" and "cpu_usage" parameters to control the resource assignment? I have those at 0.9 and 0.5, respectively, now. And, one last question... is there a way to configure the SSE2 app to be used, as that seems to be the fastest CPU app in previously completed work units? I could try the brute force approach, simply delete the SSE3 and AVX apps, but then the servers might notice they were gone and reload them.
Somebody else must have figured this out already. I would appreciate the benefit of your experience. Thanks.


Can't you just go into Your Account, Asteroids@home preferences, edit asteroid@home preferences and check this box:

Use CPU
Enforced by version 6.10+

When you save the setting, and the machine updates, you should start getting both cpu and gpu units on the same machine.
ID: 3844 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3846 - Posted: 3 Dec 2014, 16:00:58 UTC - in response to Message 3844.  
Mikey --
"Use CPU = Yes"
It has been set that way from the beginning. As noted in the first post, CPU and GPU work flowed at the beginning but no more CPU work since 18 November. (last GPU work is today: 3 December.) In (local) computing preferences I have "on multiprocessor systems, use at most 100% of processors". Would it be right, or harmless to try, setting this to "0" which the note says will ignore this setting?
The Einstein@home project exhibits the same symptoms. Since all(?) projects show the same symptom is there something in cc_config.xml that governs my system activity? According to the cc_config documentation there is a parameter "ncpus" but I was assuming the default would be to use ALL cpus. Reasonable choices for "ncpus" are either 4, the actual number, or -1 to use "all available cpue." Any thoughts or advice based on your own settings?
--Gene--
ID: 3846 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
noderaser
Avatar

Send message
Joined: 26 Jun 13
Posts: 22
Credit: 682,187
RAC: 935
Message 3848 - Posted: 4 Dec 2014, 3:31:14 UTC

Last modified: 4 Dec 2014, 3:31:42 UTC
Are you running any other projects? Do they have CPU tasks running?

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

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3851 - Posted: 4 Dec 2014, 12:12:46 UTC - in response to Message 3843.  

Last modified: 4 Dec 2014, 12:21:19 UTC
Post the first ~40 lines from Event Log (Ctrl+Shift+E)
and also a few work requests (does BOINC ask for CPU work?)


Setting "gpu_usage" and "cpu_usage" at 0.9 and 0.5 will not have any impact/effect
So for now just rename app_config.xml (to not be used)

And/or post the contents of cc_config.xml and app_config.xml

"a way to configure the SSE2 app" is only app_info.xml but it is too early to talk about this (first to fix the no-CPU-tasks issue)


P.S.
Try to type in paragraphs, I have hard time reading the 'raw' text



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3851 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile mikey
Avatar

Send message
Joined: 1 Jan 14
Posts: 300
Credit: 32,223,945
RAC: 8,111
Message 3852 - Posted: 4 Dec 2014, 12:33:59 UTC - in response to Message 3846.  

Last modified: 4 Dec 2014, 12:35:10 UTC
Mikey --
"Use CPU = Yes"
In (local) computing preferences I have "on multiprocessor systems, use at most 100% of processors". Would it be right, or harmless to try, setting this to "0" which the note says will ignore this setting?

--Gene--


Yes a setting of zero is the same as a setting of 100 in this case. I use this on my own pc's setting it to 99% so I leave one cpu core free just for the gpu to use, or in the case of my i7 laptop a setting of 62.50% so I only use 5 of the 8 cores for crunching.

Part of your problem with not getting any units is that the project was OUT of them for a few days, are you getting them again now?
ID: 3852 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3858 - Posted: 4 Dec 2014, 23:02:06 UTC - in response to Message 3852.  

Last modified: 4 Dec 2014, 23:04:31 UTC
Part of your problem with not getting any units is that the project was OUT of them for a few days, are you getting them again now?

His last task here (Asteroids@home) send 'for CPU' was on 21 Nov 2014
http://asteroidsathome.net/boinc/result.php?resultid=53708730

... and now have 2 CUDA tasks:
http://asteroidsathome.net/boinc/results.php?hostid=129569&offset=0&show_names=0&state=1&appid=


On Einstein@Home he have tasks for GPU (CUDA)
http://einstein.phys.uwm.edu/results.php?hostid=3949388&offset=0&show_names=1&state=1&appid=0

On NFS@Home he have tasks for CPU
http://escatter11.fullerton.edu/nfs/results.php?hostid=9923&offset=0&show_names=0&state=1&appid=

I don't run NFS@Home but it obviously have very short deadline of 7 days
Event Log will show the Resource share for the projects and which projects BOINC is asking for CPU work



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3858 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3859 - Posted: 5 Dec 2014, 4:46:49 UTC - in response to Message 3858.  
noderaser & BilBg & other readers...

I am running two other projects (while Seti is off-line). Einstein@home,
which has both CPU and GPU applications. NFS@home, which is a CPU only.

As requested, here are the first lines of the Event Log from the most recent restart of boinc manager and boinc client:

06-Nov-2014 11:59:44 [---] Starting BOINC client version 7.2.42 for x86_64-pc-linux-gnu
06-Nov-2014 11:59:44 [---] log flags: file_xfer, sched_ops, task, unparsed_xml
06-Nov-2014 11:59:44 [---] Libraries: libcurl/7.26.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.25 libssh2/1.4.2 librtmp/2.3
06-Nov-2014 11:59:44 [---] Data directory: /home/gene/BOINC
06-Nov-2014 11:59:44 [---] CUDA: NVIDIA GPU 0: GeForce GTX 650 (driver version unknown, CUDA version 6.5, compute capability 3.0, 1023MB, 982MB available, 813 GFLOPS peak)
06-Nov-2014 11:59:44 [---] OpenCL: NVIDIA GPU 0: GeForce GTX 650 (driver version 343.22, device version OpenCL 1.1 CUDA, 1023MB, 982MB available, 813 GFLOPS peak)
06-Nov-2014 11:59:44 [SETI@home] Found app_info.xml; using anonymous platform
06-Nov-2014 11:59:44 [---] Host name: gene64
06-Nov-2014 11:59:44 [---] Processor: 4 AuthenticAMD AMD FX(tm)-4300 Quad-Core Processor [Family 21 Model 2 Stepping 0]
06-Nov-2014 11:59:44 [---] Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr tbm topoext perfctr_core arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
06-Nov-2014 11:59:44 [---] OS: Linux: 3.2.46-4
06-Nov-2014 11:59:44 [---] Memory: 7.77 GB physical, 9.54 GB virtual
06-Nov-2014 11:59:44 [---] Disk: 183.34 GB total, 154.75 GB free
06-Nov-2014 11:59:44 [---] Local time is UTC -7 hours
06-Nov-2014 11:59:44 [Einstein@Home] Found app_config.xml
06-Nov-2014 11:59:44 [NFS@Home] Found app_config.xml
06-Nov-2014 11:59:44 [SETI@home] Found app_config.xml
06-Nov-2014 11:59:44 [Einstein@Home] URL http://einstein.phys.uwm.edu/; Computer ID 3949388; resource share 50
06-Nov-2014 11:59:44 [NFS@Home] URL http://escatter11.fullerton.edu/nfs/; Computer ID 9923; resource share 50
06-Nov-2014 11:59:44 [Cosmology@Home] URL http://www.cosmologyathome.org/; Computer ID 73980; resource share 50
06-Nov-2014 11:59:44 [SETI@home] URL http://setiathome.berkeley.edu/; Computer ID 4774476; resource share 350
06-Nov-2014 11:59:44 [SETI@home] General prefs: from SETI@home (last modified 19-Sep-2014 08:11:26)
06-Nov-2014 11:59:44 [SETI@home] Computer location: home
06-Nov-2014 11:59:44 [SETI@home] General prefs: no separate prefs for home; using your defaults
06-Nov-2014 11:59:44 [---] Reading preferences override file
06-Nov-2014 11:59:44 [---] Preferences:
06-Nov-2014 11:59:44 [---] max memory usage when active: 7161.65MB
06-Nov-2014 11:59:44 [---] max memory usage when idle: 7559.52MB
06-Nov-2014 11:59:44 [---] max disk usage: 4.00GB
06-Nov-2014 11:59:44 [---] suspend work if non-BOINC CPU load exceeds 50%
06-Nov-2014 11:59:44 [---] max download rate: 199997 bytes/sec
06-Nov-2014 11:59:44 [---] max upload rate: 100004 bytes/sec
06-Nov-2014 11:59:44 [---] (to change preferences, visit a project web site or select Preferences in the Manager)
06-Nov-2014 11:59:44 [---] Not using a proxy
06-Nov-2014 11:59:44 Initialization completed

>>>The most recent Aseroids work fetch>>>

04-Dec-2014 20:43:58 [Asteroids@home] Sending scheduler request: To fetch work.
04-Dec-2014 20:43:58 [Asteroids@home] Requesting new tasks for NVIDIA
04-Dec-2014 20:44:00 [Asteroids@home] [unparsed_xml] SCHEDULER_REPLY::parse(): unrecognized external_cpid
04-Dec-2014 20:44:00 [Asteroids@home] [unparsed_xml] SCHEDULER_REPLY::parse(): unrecognized 7bff1c82e46abad47a236b770d0156f8
04-Dec-2014 20:44:00 [Asteroids@home] [unparsed_xml] SCHEDULER_REPLY::parse(): unrecognized /external_cpid
04-Dec-2014 20:44:00 [---] [unparsed_xml] APP::parse(): unrecognized: fraction_done_exact
04-Dec-2014 20:44:00 [---] [unparsed_xml] WORKUNIT::parse(): unrecognized: rsc_mem_bound
04-Dec-2014 20:44:00 [Asteroids@home] Scheduler request completed: got 1 new tasks
04-Dec-2014 20:44:02 [Asteroids@home] Started download of input_47292_8
04-Dec-2014 20:44:04 [Asteroids@home] Finished download of input_47292_8

>>>The most recent Einstein work fetch>>>

04-Dec-2014 17:56:14 [Einstein@Home] Sending scheduler request: To fetch work.
04-Dec-2014 17:56:14 [Einstein@Home] Requesting new tasks for NVIDIA
04-Dec-2014 17:56:17 [Einstein@Home] Scheduler request completed: got 1 new tasks
04-Dec-2014 17:56:19 [Einstein@Home] Started download of p2030.20131223.G181.42-03.34.C.b2s0g0.00000_2224.bin4
04-Dec-2014 17:56:19 [Einstein@Home] Started download of p2030.20131223.G181.42-03.34.C.b2s0g0.00000_2225.bin4
04-Dec-2014 17:56:24 [Einstein@Home] Finished download of p2030.20131223.G181.42-03.34.C.b2s0g0.00000_2224.bin4
04-Dec-2014 17:56:24 [Einstein@Home] Finished download of p2030.20131223.G181.42-03.34.C.b2s0g0.00000_2225.bin4
--clip--

>>>Here is cc_config.xml>>>
<cc_config>
<log_flags>
<unparsed_xml>1</unparsed_xml>
</log_flags>

<options>
<rec_half_life_days>3</rec_half_life_days>
<ncpus>4</ncpus>
</options>
</cc_config>

>>>And here is app_config.xml (for Asteroids)>>>
<app_config>
<app>
<name>period_search</name>
<max_concurrent>2</max_concurrent>
<gpu_versions>
<gpu_usage>0.9</gpu_usage>
<cpu_usage>0.5</cpu_usage>
</gpu_versions>
</app>
</app_config>


You will notice, as I have, that A@H and E@H do not ask for CPU tasks. That explains why I'm not getting any CPU. BUT, why is boinc not asking for CPU tasks? Neither project has asked for CPU tasks in the last 10 days.

Seti is configured for Anonymous Platform, to take advantage of optimized applications. I don't see how or why this would affect Asteroids but I mention it here just for completeness.

Thanks to all who jumped in with ideas. I'm willing to try almost any experiment in config files if it will shed light on the issue.

Sorry this post is so long, but I'm just providing info that was requested.

Gene;
ID: 3859 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3872 - Posted: 7 Dec 2014, 11:02:36 UTC - in response to Message 3859.  
As requested, here are the first lines of the Event Log from the most recent restart of boinc manager and boinc client

I didn't expected your "most recent" will be a month old - it even don't show [Asteroids@home] on the starting lines on 06-Nov-2014 11:59:44

Restart BOINC (client) and post a 'fresh' startup log

With <max_concurrent>2</max_concurrent> you want Asteroids@home to run one GPU and one CPU task?

cc_config.xml and app_config.xml are read only on BOINC startup or by 'Read config file'
Not all <options> in cc_config.xml come into effect by only 'Read config file' - BOINC restart is needed.


For now you may try:
1) [Suspend] all projects except Asteroids@home
2) Increase the first value for 'Days of work' locally
      Since you have the line "Reading preferences override file" you use Local preferences
      Setting 'Days of work' on the web will not have any effect (for this computer), use Local preferences to set for e.g. 3 + 0.1 days

3) I'm not sure how <rec_half_life_days>3</rec_half_life_days> will change the decisions made by BOINC (which projects to ask for what kind of work) - try to set it to the default 10 days
4) Move/rename app_config.xml for Asteroids@home (and 'Read config file')

5) now [Update] Asteroids@home and see if BOINC is asking for CPU work


If all looks good - do one change at a time if you are not sure what effect it will have:
- (if you want) reduce the first value for 'Days of work'
- [Resume] one of other projects
- rename again app_config.xml (and 'Read config file' to make it active)
...



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3872 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3875 - Posted: 9 Dec 2014, 4:19:16 UTC - in response to Message 3872.  
Restart BOINC (client) and post a 'fresh' startup log


08-Dec-2014 20:34:16 [---] Starting BOINC client version 7.2.42 for x86_64-pc-linux-gnu
08-Dec-2014 20:34:16 [---] log flags: file_xfer, sched_ops, task, unparsed_xml
08-Dec-2014 20:34:16 [---] Libraries: libcurl/7.26.0 OpenSSL/1.0.1e zlib/1.2.7 libidn/1.25 libssh2/1.4.2 librtmp/2.3
08-Dec-2014 20:34:16 [---] Data directory: /home/gene/BOINC
08-Dec-2014 20:34:16 [---] CUDA: NVIDIA GPU 0: GeForce GTX 650 (driver version unknown, CUDA version 6.5, compute capability 3.0, 1023MB, 969MB available, 813 GFLOPS peak)
08-Dec-2014 20:34:16 [---] OpenCL: NVIDIA GPU 0: GeForce GTX 650 (driver version 343.22, device version OpenCL 1.1 CUDA, 1023MB, 969MB available, 813 GFLOPS peak)
08-Dec-2014 20:34:16 [SETI@home] Found app_info.xml; using anonymous platform
08-Dec-2014 20:34:16 [---] Host name: gene64
08-Dec-2014 20:34:16 [---] Processor: 4 AuthenticAMD AMD FX(tm)-4300 Quad-Core Processor [Family 21 Model 2 Stepping 0]
08-Dec-2014 20:34:16 [---] Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 nodeid_msr tbm topoext perfctr_core arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
08-Dec-2014 20:34:16 [---] OS: Linux: 3.2.46-4
08-Dec-2014 20:34:16 [---] Memory: 7.77 GB physical, 9.54 GB virtual
08-Dec-2014 20:34:16 [---] Disk: 183.34 GB total, 130.04 GB free
08-Dec-2014 20:34:16 [---] Local time is UTC -7 hours
08-Dec-2014 20:34:16 [Einstein@Home] Found app_config.xml
08-Dec-2014 20:34:16 [NFS@Home] Found app_config.xml
08-Dec-2014 20:34:16 [SETI@home] Found app_config.xml
08-Dec-2014 20:34:16 [Asteroids@home] Found app_config.xml
08-Dec-2014 20:34:16 [---] Config: simulate 4 CPUs
08-Dec-2014 20:34:16 [Einstein@Home] URL http://einstein.phys.uwm.edu/; Computer ID 3949388; resource share 50
08-Dec-2014 20:34:16 [NFS@Home] URL http://escatter11.fullerton.edu/nfs/; Computer ID 9923; resource share 50
08-Dec-2014 20:34:16 [SETI@home] URL http://setiathome.berkeley.edu/; Computer ID 4774476; resource share 350
08-Dec-2014 20:34:16 [Asteroids@home] URL http://asteroidsathome.net/boinc/; Computer ID 129569; resource share 50
08-Dec-2014 20:34:16 [SETI@home] General prefs: from SETI@home (last modified 19-Sep-2014 08:11:26)
08-Dec-2014 20:34:16 [SETI@home] Computer location: home
08-Dec-2014 20:34:16 [SETI@home] General prefs: no separate prefs for home; using your defaults
08-Dec-2014 20:34:16 [---] Reading preferences override file
08-Dec-2014 20:34:16 [---] Preferences:
08-Dec-2014 20:34:16 [---] max memory usage when active: 7161.65MB
08-Dec-2014 20:34:16 [---] max memory usage when idle: 7559.52MB
08-Dec-2014 20:34:16 [---] max disk usage: 4.00GB
08-Dec-2014 20:34:16 [---] suspend work if non-BOINC CPU load exceeds 50%
08-Dec-2014 20:34:16 [---] max download rate: 199997 bytes/sec
08-Dec-2014 20:34:16 [---] max upload rate: 100004 bytes/sec
08-Dec-2014 20:34:16 [---] (to change preferences, visit a project web site or select Preferences in the Manager)
08-Dec-2014 20:34:16 [---] File projects/escatter11.fullerton.edu_nfs/lasievef_1.10_i686-pc-linux-gnu not found
08-Dec-2014 20:34:16 [---] Not using a proxy
08-Dec-2014 20:34:16 Initialization completed

With <max_concurrent>2</max_concurrent> you want Asteroids@home to run one GPU and one CPU task?


Yes. Within constraints of resource share. either CPU or GPU or rarely both.


For now you may try:
1) [Suspend] all projects except Asteroids@home
2) Increase the first value for 'Days of work' locally
      Since you have the line "Reading preferences override file" you use Local preferences
      Setting 'Days of work' on the web will not have any effect (for this computer), use Local preferences to set for e.g. 3 + 0.1 days

3) I'm not sure how <rec_half_life_days>3</rec_half_life_days> will change the decisions made by BOINC (which projects to ask for what kind of work) - try to set it to the default 10 days
4) Move/rename app_config.xml for Asteroids@home (and 'Read config file')

5) now [Update] Asteroids@home and see if BOINC is asking for CPU work


In works...(1) & (2) done; (3) on hold; (4) done; (5) done; ...
...boincmgr IS downloading a long list of data and work units...

I will post an inventory tomorrow (Dec. 9), at first glance appears to be a mix of CPU and GPU work.

If all looks good - do one change at a time if you are not sure what effect it will have:
- (if you want) reduce the first value for 'Days of work'
- [Resume] one of other projects
- rename again app_config.xml (and 'Read config file' to make it active)
...


O.K.; I'll give this configuration 8 or 12 hours then resume Seti. Wait and see what effect that has before re-storing app_config.xml . As for (local) days of work, maybe leave that at 3 until I feel like Asteroids work is flowing "normally".

On Dec. 6 I did get an avx work unit, on Dec 7 2 sse2 and 6 sse3 ; on Dec 8 one more sse3. (In addition to cuda55 work which I didn't tally.) But let's see how the (above) diagnostic steps proceed.
With regard to <rec_half_life_days> reduced to 3 from default 10, it was an attempt to speed up the servers' convergence to a realistic estimate based on suggestions in message boards elsewhere.

One more question --- Assuming we get Asteroids to give CPU (and GPU) work, is there a way to allow only sse2 work and exclude the sse3 and avx types which run more slowly on my specific CPU chip?

Thx BilBg for your guidance.
ID: 3875 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3879 - Posted: 10 Dec 2014, 5:24:22 UTC - in response to Message 3875.  
Here is the update after 24 hours from the previous post. Restarting boinc with all projects suspended, then resuming Asteroids (with app_config.xml renamed to app_config.bak):

the initial flood of downloads..
55 cuda55
57 sse3
0 sse2 and avx

after a lapse of 22 minutes, no tasks completed during that time, more downloads.
2 cuda55
33 sse3

By now the buffer is pretty stable at ~160 work units. New work downloads as tasks are completed and uploaded. The cuda55 to sse3 ratio is about 1:3 .

I don't know how useful, or relevant, the following numbers might be. Here are the reported Gflops (-> computer -> details -> application details )
cuda55 166 Gflops
avx 112 Gflops
sse3 156 Gflops
sse2 188 Gflops

I resumed the suspended Seti project this morning but, alas, this is their maintenance day so not much work downloaded. Empty Seti buffer now, so resumed the Einstein project.

Current task state:
Asteroids CPU-sse3 running
Asteroids GPU-cuda55 waiting (due to E@H GPU high priority for deadline)
Einstein CPU-sse2 running
Einstein CPU-sse2 running
Einstein CPU-sse2 running
Einstein GPU-cuda32 running, high priority deadline Dec 14

I'll let this configuration run for a couple of days.

**Still curious why Asteroids prefers the sse3 (CPU) over sse2 ??
ID: 3879 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3880 - Posted: 10 Dec 2014, 12:51:39 UTC - in response to Message 3875.  
One more question --- Assuming we get Asteroids to give CPU (and GPU) work, is there a way to allow only sse2 work and exclude the sse3 and avx types which run more slowly on my specific CPU chip?

Possible only by writing app_info.xml which includes both SSE2 CPU app and CUDA app sections.


I don't know how useful, or relevant, the following numbers might be. Here are the reported Gflops (-> computer -> details -> application details )
cuda55 166 Gflops
avx 112 Gflops
sse3 156 Gflops
sse2 188 Gflops
...
**Still curious why Asteroids prefers the sse3 (CPU) over sse2 ??

http://asteroidsathome.net/boinc/host_app_versions.php?hostid=129569

With the above values the server should send you most SSE2 tasks.
But the decision is made with randomization factor.
So the server will send sometimes CPU tasks for the other apps to check again if your system have changed speed (e.g. if you Overclocked or changed the CPU)


P.S.
If you still want to write app_info.xml
- first save all the executables found in Asteroids@home directory (...\projects\asteroidsathome.net_boinc\) - BOINC may delete them if there are errors in app_info.xml

You may also get them from here:
http://asteroidsathome.net/boinc/download/

Your must include both SSE2 CPU app and CUDA app sections. (else all the tasks and app for CUDA will be deleted and will not be downloaded in the future)

Here is mine for CPU only (on Windows XP)
(I created it recently (server send me too many tasks for 'plain' app) using the SETI@home app_info.xml as template, I do Asteroids@home only on CPU (the GPU is ATI AMD))
<app_info> 


    <app>
        <name>period_search</name>
        <user_friendly_name>Period Search Application SSE3</user_friendly_name>
    </app>

    <file_info>
        <name>period_search_10210_windows_intelx86__sse3.exe</name>
        <executable/>
    </file_info>

    <app_version>
        <app_name>period_search</app_name>
        <version_num>10210</version_num>
        <file_ref>
            <file_name>period_search_10210_windows_intelx86__sse3.exe</file_name>
            <main_program/>
        </file_ref>
    </app_version>


</app_info> 



If you still want to use app_info.xml - I may try to write one for Linux (even that I'm not using Linux)



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3880 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile cliff
Avatar

Send message
Joined: 19 Nov 14
Posts: 93
Credit: 30,066,240
RAC: 0
Message 3881 - Posted: 11 Dec 2014, 14:48:11 UTC - in response to Message 3843.  
Hi Eugene,

This could be a case of be very careful what you wish for:-)

I have been running A@H CPU tasks for a while now, but today having upgraded to a more powerful CPU.
I found that running more than 1 A@H task caused the new CPU to run at over 38C.. On the old CPU running 2 tasks only caused temps of 34/35C... That's sse2 tasks in both cases.

I've therefore restricted usage to 1 CPU core for A@H, and temps dropped to 34C
however YMMV:-)

But I'd be careful about how many cores you make available and check CPU temps as you go.
Cheers,
Cliff
ID: 3881 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3882 - Posted: 12 Dec 2014, 5:52:58 UTC - in response to Message 3881.  
Satatus/progress update...

I found that running more than 1 A@H task caused the new CPU to run at over 38C..


I have a CPU digital thermometer on the desktop; with all 4 cores on various boinc projects the CPU tops out about 120F (48C). I am not overclocking, and that indicated temp is below the max 60C by a margin I consider "safe." If it gets past 55C its time to clean the fans.

I've therefore restricted usage to 1 CPU core for A@H, and temps dropped to 34C


The FX-4300 specs I've looked at indicate "Idle" temps at 25-35C; "Normal" temps at 35-45C; and "Limit" at 61C.

??Will A@H fail to meet deadlines??

I have set NTT for A@H. There are 151 tasks in the buffer already (a mix of CPU and GPU) and most of them were downloaded on Dec. 8 with a deadline of Dec. 19. With average run times about 2 hours it looks questionable whether all will finish before the deadline. I will let boinc manager do its thing but so far no boinc panic (run high priority) yet, which surprises me. With a resource share of 10% for A@H and a buffer limit of 3 days (although I realize that parameter is a "minimum") I don't understand why 160 work units were download in the first day after the various parameter changes, discussed earlier in this thread, were made. It still looks "theoretically" possible to finish all work before deadlines but it will require pre-empting other projects which have been assigned a higher resource share. I am curious to see how boinc manages that conflict. So I'm letting it chug away.

As per an earlier suggestion, the A@H app_config.xml is NOT active, so presumably the defaults are in control. I may soon feel obliged to provide an app_config with <max_concurrent> set to 2 or 3. But first I want to see if boinc will force that issue as deadlines loom.

Gene;
ID: 3882 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3884 - Posted: 13 Dec 2014, 6:54:14 UTC - in response to Message 3881.  
I found that running more than 1 A@H task caused the new CPU to run at over 38C

38°C is very cool - this looks like an idle temperature to me.
Temperature of your skin is 36°C
And "Normal body temperatures in cats range between 100 - 102.5°F (37.7 - 39.1°C)"
http://www.cat-world.com.au/Cat-Health-Collection/cat-temperature.html

You can't burn a CPU by warming it on cat's body I think ;)


No matter if 38°C is the core or package temperature it is very low.

http://www.cpu-world.com/CPUs/Bulldozer/AMD-FX-Series%20FX-9370.html
http://www.cpu-world.com/CPUs/Bulldozer/AMD-FX-Series%20FX-8320.html

FAQ
Q: My processor is running 55C under load. Is this normal?
A: Safe CPU temperatures are 60 degrees Celsius and below. It may still run fine with CPU temperatures, exceeding 60C threshold by a few degrees. Running the FX-8320 close to 70 degrees and higher is not recommended.

(I didn't find the exact value for max temperature of your CPUs - search by yourself)

***

I run my AMD Athlon II X3 455 Processor at 55°C package temperature (measured by the motherboard sensor).
In fact the 'core' internal sensors are often not very accurate at low temperature - at the moment when I see (in SIV) the motherboard sensor (under the CPU) at 55°C the 'core' internal sensor shows 50°C (which can't be the reality)
The 'core' internal sensors are accurate enough only near the max allowed temperature.

'By the book' my CPU is listed as "Maximum operating temperature 75°C" (max package (Tcase) temperature)
http://www.cpu-world.com/CPUs/K10/AMD-Athlon%20II%20X3%20455%20-%20ADX455WFK32GM%20(ADX455WFGMBOX).html

But I know my sample of "Athlon II X3 455" is not made from Athlon II X4 (Propus) but from Phenom II X4 (Deneb) which are listed at "Maximum operating temperature 55°C - 62°C"
http://www.cpu-world.com/CPUs/K10/AMD-Phenom%20II%20X4%20955%20-%20HDX955WFK4DGM.html



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3884 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3885 - Posted: 13 Dec 2014, 7:22:22 UTC - in response to Message 3882.  
There are 151 tasks in the buffer already (a mix of CPU and GPU)
...
But first I want to see if boinc will force that issue as deadlines loom.


150 * 2 = 300 h
300 h / 24 = 12.5 days running tasks on only one core (= 1 task at a time)
You have 5 'cores' (including the GPU) so BOINC thinks 150 tasks can be finished in 12.5 / 5 = 2.5 days

Since you have "buffer limit of 3 days" (the first of the 'days' value, the "minimum buffer") BOINC will make sure to finish them 3 days before the deadline.

The first of the 'days' value, the "minimum buffer" is interpreted also as if you say to BOINC:
"I have Internet connection now. I want 3 days of work on-board because I may have a period of 3 days with no Internet connection in the near future."
So BOINC will make sure to finish the tasks 3 days before the deadline to be able to report them before you are (eventually) without Internet connection.

I still use BOINC 6.10.58 where the wording of this first value is not "Minimal work" but "Connect about every XX days"


I think you can (for experiment) force BOINC in panic mode (run high priority) this way:
- set all projects to [No New Tasks]
- set "minimum buffer" to e.g. 10 days



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3885 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3890 - Posted: 16 Dec 2014, 17:57:02 UTC - in response to Message 3885.  
You have 5 'cores' (including the GPU) so BOINC thinks 150 tasks can be finished in 12.5 / 5 = 2.5 days


Boinc went to "high priority" on this project two days ago, 12/14, but was using just one CPU core + the GPU, i.e. two tasks concurrently. Do I infer that boinc does not manage the CPU and GPU work buffers separately? It looks that way to me. If so, it is a reason to keep the "minimum" buffer size small, especially on projects, such as A@H, that have relatively short deadlines.

The buffer content now (12/16 1700 UTC) is 39 GPU tasks and 49 CPU tasks. There are 70 hours left to the earliest deadline. (NNT was set days ago.) The GPU stream looks very "iffy" at approx. 2 hours per work unit. An hour ago I edited the app_config.xml file for <max_concurrent> = 3, to allow two concurrent CPU plus the GPU. And suspended all other projects. With two CPU on the 49 work units, at approx. 3 hours each, I think the deadline will be o.k., barely. I can go to 4 concurrent if necessary. All this far exceeds the 10% resource share assigned to the project.

I still use BOINC 6.10.58 where the wording of this first value is not "Minimal work" but "Connect about every XX days"


I have boinc 7.2.42.; which labels it as "minimum work buffer" but I have my doubts as to how boinc uses that parameter. Way back in this thread it was observed that a "3 day" value led to a download of 160 work units. I am trying to let boincmgr sort it out but I felt like I had to "help" with the temporary adjustments noted above.

- set all projects to [No New Tasks]
- set "minimum buffer" to e.g. 10 days


NNT set for A@H a couple of days ago when deadlines looked impossible;
A@H is already in high-priority mode;
and I am suspending other projects (maybe not necessary if A@H high priority will really use all cores) to leave resources wide open.

I understand your logic in "minimum buffer = 10" in the context of boinc 6.x.x interpreting it as "connect every xx days" but I am inclined to keep the present setting of 3, or even reduce it, on the assumption that boinc 7.2.42 really means keep a "minimum buffer" of x days. I have NNT set in any event to inhibit any further overload of this project's resources.
ID: 3890 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile BilBg
Avatar

Send message
Joined: 19 Jun 12
Posts: 221
Credit: 623,640
RAC: 0
Message 3891 - Posted: 17 Dec 2014, 2:55:16 UTC - in response to Message 3890.  
but was using just one CPU core + the GPU

Only because you tell it to by <max_concurrent> 2


Do I infer that boinc does not manage the CPU and GPU work buffers separately?

They are separate in a sense that task sent 'for NVIDIA GPU' have to be done on NVIDIA GPU and task sent 'for ATI AMD GPU' have to be done on ATI AMD GPU (unless you edit client_state.xml or use a program to do so)
BOINC will get 3 days for CPU and 3 days for GPU (how many tasks is this - depend on the speed of CPU and GPU, and the estimated run time)
3 days for CPU + 3 days for GPU = still real 3 days (they are executed in parallel)

(Front wheel of a car go 10 km and rear wheel of a car also go 10 km. How far the car go?)


... keep the "minimum" buffer size small, especially on projects, such as A@H

"buffer" is global, not per project


All this far exceeds the 10% resource share assigned to the project.

You suspended all projects, remember?
(to try to get tasks for CPU on this project no matter if you have enough tasks for CPU from other projects)
Suspended projects act the same way as if they do not exist (= 100% resource share for not-suspended project)


... if A@H high priority will really use all cores

Only if you don't interfere by <max_concurrent>


it was observed that a "3 day" value led to a download of 160 work units

And I say "BOINC thinks 150 tasks can be finished in 12.5 / 5 = 2.5 days"
So 160 work units is OK for a "3 day" value because at that moment all projects were suspended and you didn't have <max_concurrent>


on the assumption that boinc 7.2.42 really means keep a "minimum buffer" of x days

It means this and "Connect about every XX days" (the same 2 meanings are true for BOINC v6 and v7 - only the wording is different)
Which is easily tested if you:
- set all projects to [No New Tasks] (to not get any New Tasks, else you will be filled to what you set in the next "minimum buffer")
- set "minimum buffer" to different values (1 day, 5 days, 10 days) and see how BOINC will go off-panic/on-panic



- ALF - "Find out what you don't do well ..... then don't do it!" :)
ID: 3891 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Eugene Stemple

Send message
Joined: 17 Nov 14
Posts: 13
Credit: 6,218,302
RAC: 1,563
Message 3935 - Posted: 9 Jan 2015, 5:36:15 UTC
It has been a while since my last post to this thread... I have let three projects contend for the system resources, Seti @ 80%; Einstein @10%; Asteroids @5%; (and NFS @5% currently No New Tasks). The resource sharing hasn't yet settled down to a steady state but appears to be moving in the right direction. Seti has had some work shortages lately so it has not used resources to its full potential.

At the moment A@H has 9 tasks in the buffer and will easily complete them before their deadlines. I haven't calculated the resource share, relative to Seti, but it looks reasonable. All 9 tasks, however, are GPU tasks. No CPU tasks in the buffer at all. The GPU (low end GTX650) can only handle one cuda/opengl task at a time so it is the bottle-neck in work flow. The 4 CPU cores are under utilized. I would be happier if A@H could send me CPU tasks that have a much better chance of finding an idle core instead of more GPU tasks.

I have been led to understand that the boinc (project) servers initially send all usable application variations (i.e. NVIDIA, CPU/SSE2, CPU/AVX, etc.) and subsequently, based on result run times, home in on the most efficient application to the exclusion of the others. Except that others are sent randomly just to refresh the statistics. At the risk of jumping to conclusions that seems to be the case here - now only getting GPU work which is obviously the fastest running.

In the Asteroids@Home Preferences, I don't see a way to choose CPU or GPU applications. There is just one "Period Search" to pick. To get just SSE2 work, for example, do I set up a custom app_info.xml file? Or can it be done in the app_config.xml file? (I have app_info for the Seti project in order to use optimized "anonymous platform" applications.)
ID: 3935 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile mikey
Avatar

Send message
Joined: 1 Jan 14
Posts: 300
Credit: 32,223,945
RAC: 8,111
Message 3936 - Posted: 10 Jan 2015, 11:13:52 UTC - in response to Message 3935.  

In the Asteroids@Home Preferences, I don't see a way to choose CPU or GPU applications. There is just one "Period Search" to pick. To get just SSE2 work, for example, do I set up a custom app_info.xml file? Or can it be done in the app_config.xml file? (I have app_info for the Seti project in order to use optimized "anonymous platform" applications.)


Your account, Asteroids@home Preferences...
Use CPU

Enforced by version 6.10+
no
Use NVIDIA GPU

Enforced by version 6.10+
yes
ID: 3936 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
1 · 2 · Next

Message boards : Number crunching : How to run CPU and GPU apps?