Welcome to MilkyWay@home

M@H seems to be freezing the progress of other tasks


Advanced search

Message boards : Number crunching : M@H seems to be freezing the progress of other tasks
Message board moderation

To post messages, you must log in.

AuthorMessage
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66284 - Posted: 9 Apr 2017, 17:30:52 UTC
Last modified: 9 Apr 2017, 17:32:10 UTC

Here is how my projects screen looks right now: http://prntscr.com/eud1xr

The M@H task is only supposed to use 0.608 of a CPU thread right? However, the percentages for the Citizen Science Grid tasks won't budge at all until the M@H project finishes, at which point they progress a little bit and freeze again when M@H starts a new task.

Another problem is, all my four cores (I have hyperthreading, thus the 8 projects) are always working at 100% throughout. I'm worried, thus, that this effort is being wasted! What's going on?

I have a GTX 970 and a core i7 3750 with the latest BOINC Manager version on Windows 7.

Thank you!
ID: 66284 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66286 - Posted: 10 Apr 2017, 0:05:16 UTC - in response to Message 66284.  

(I have hyperthreading, thus the 8 projects)


Oops, I meant "8 tasks" here.
ID: 66286 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
noderaser
Avatar

Send message
Joined: 16 Dec 13
Posts: 23
Credit: 22,520,915
RAC: 2,863
20 million credit badge5 year member badgeextraordinary contributions badge
Message 66287 - Posted: 10 Apr 2017, 6:21:04 UTC

Have you configured your preferences so that you only get GPU work? There are CPU tasks for this project as well, including both single core tasks and multi-threaded ones.
Click here to see My Detailed BOINC Stats
ID: 66287 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66289 - Posted: 11 Apr 2017, 1:14:38 UTC - in response to Message 66287.  

Have you configured your preferences so that you only get GPU work? There are CPU tasks for this project as well, including both single core tasks and multi-threaded ones.


Wouldn't that defeat the purpose? I want both my processor and GPU working at 100% all the time in order to contribute as much as I can to science, with GPU only tasks only a tiny fraction of the CPU would be used.

Thanks for your reply!
ID: 66289 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profilemikey
Avatar

Send message
Joined: 8 May 09
Posts: 2228
Credit: 256,591,220
RAC: 139,250
200 million credit badge10 year member badgeextraordinary contributions badge
Message 66290 - Posted: 11 Apr 2017, 10:03:02 UTC - in response to Message 66289.  
Last modified: 11 Apr 2017, 10:06:07 UTC

Have you configured your preferences so that you only get GPU work? There are CPU tasks for this project as well, including both single core tasks and multi-threaded ones.


Wouldn't that defeat the purpose? I want both my processor and GPU working at 100% all the time in order to contribute as much as I can to science, with GPU only tasks only a tiny fraction of the CPU would be used.

Thanks for your reply!


We do not have the ability to fine tune Boinc, nor do the settings allow, so that we can run 3 workunits from project A and 5 workunits from project B. Boinc itself handles it thru a complicated built-in algorithm that it uses. So if you have hyper threading turned on and you have set Boinc to use 100% of your cpu cores then yes it will use all 8 of your cpu cores to crunch workunits. Sometimes project A and sometimes project B will run depending on how much percentage you have given each project when you set up the preferences.

With your particular setup you might want to consider backing that off to 99% of the cpu's and let the gpu have one just for itself so it can stay fed and crunching at full speed and does not slow down while waiting for a cpu core to give it work. EVERYTHING on a pc goes thru the cpu, so even though the gpu has some processing units on it when the gpu needs new work or finishes a workunit it still has to communicate thru the cpu to do that. If the cpu is busy crunching a workunit itself then the gpu will sit idle until it gets time on the cpu.

One other setting you might consider is whether to run the N-Body workunits or not, they can take all of the cpu cores just to work on a single workunit, this works for some people but not for everyone. You will have to go thru your workunits and see if it is working for you.
ID: 66290 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
mmonnin

Send message
Joined: 2 Oct 16
Posts: 133
Credit: 130,397,138
RAC: 26,477
100 million credit badge2 year member badge
Message 66291 - Posted: 11 Apr 2017, 23:48:54 UTC - in response to Message 66290.  

Have you configured your preferences so that you only get GPU work? There are CPU tasks for this project as well, including both single core tasks and multi-threaded ones.


Wouldn't that defeat the purpose? I want both my processor and GPU working at 100% all the time in order to contribute as much as I can to science, with GPU only tasks only a tiny fraction of the CPU would be used.

Thanks for your reply!


We do not have the ability to fine tune Boinc, nor do the settings allow, so that we can run 3 workunits from project A and 5 workunits from project B. Boinc itself handles it thru a complicated built-in algorithm that it uses. So if you have hyper threading turned on and you have set Boinc to use 100% of your cpu cores then yes it will use all 8 of your cpu cores to crunch workunits. Sometimes project A and sometimes project B will run depending on how much percentage you have given each project when you set up the preferences.

With your particular setup you might want to consider backing that off to 99% of the cpu's and let the gpu have one just for itself so it can stay fed and crunching at full speed and does not slow down while waiting for a cpu core to give it work. EVERYTHING on a pc goes thru the cpu, so even though the gpu has some processing units on it when the gpu needs new work or finishes a workunit it still has to communicate thru the cpu to do that. If the cpu is busy crunching a workunit itself then the gpu will sit idle until it gets time on the cpu.

One other setting you might consider is whether to run the N-Body workunits or not, they can take all of the cpu cores just to work on a single workunit, this works for some people but not for everyone. You will have to go thru your workunits and see if it is working for you.


You can set max number of tasks in app_config which can limit 3 CPU tasks to leave open 5 for another project.
ID: 66291 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66292 - Posted: 12 Apr 2017, 2:34:55 UTC - in response to Message 66290.  

With your particular setup you might want to consider backing that off to 99% of the cpu's and let the gpu have one just for itself so it can stay fed and crunching at full speed and does not slow down while waiting for a cpu core to give it work. EVERYTHING on a pc goes thru the cpu, so even though the gpu has some processing units on it when the gpu needs new work or finishes a workunit it still has to communicate thru the cpu to do that. If the cpu is busy crunching a workunit itself then the gpu will sit idle until it gets time on the cpu.

One other setting you might consider is whether to run the N-Body workunits or not, they can take all of the cpu cores just to work on a single workunit, this works for some people but not for everyone. You will have to go thru your workunits and see if it is working for you.


I just set it to 99% in the options. Is that enough to guarantee the GPU gets all the CPU attention it needs or do I have to go to the config files to be able to dedicate a core to it?

I do occasionally get 8-core CPU tasks, yes.

No one has yet answered the main question of my post, though. Why is the M@H task consuming 100% of the CPU if it's supposed to be a GPU task?
ID: 66292 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Tom*

Send message
Joined: 4 Oct 11
Posts: 38
Credit: 283,140,578
RAC: 0
200 million credit badge7 year member badgeextraordinary contributions badge
Message 66293 - Posted: 12 Apr 2017, 3:20:31 UTC
Last modified: 12 Apr 2017, 3:54:44 UTC

Why is the M@H task consuming 100% of the CPU if it's supposed to be a GPU task?


short answer because you are using NVidia and not ati

longer answer calls to gpu opencl spinwait on the cpu so there is no delay
in queing up another call to opencl.

other projects tackle this issue by giving parameters to have the cpu sleep
instead of spinwait if the sleep interval is not correct the gpu task completion time suffers.

AMD ati gpu implementation of opencl uses magic to wait for a callback from the gpu so the cpu does not have to spinwait

Limit yourself to 1 or 2 tasks running on the gpu or else all the instances will be spinning on multiple cpu's waiting for the gpu to finish a call.
ID: 66293 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66294 - Posted: 12 Apr 2017, 19:24:32 UTC - in response to Message 66293.  
Last modified: 12 Apr 2017, 19:25:27 UTC


Limit yourself to 1 or 2 tasks running on the gpu or else all the instances will be spinning on multiple cpu's waiting for the gpu to finish a call.


So I should cancel my Citizen Science Grid project and run only Milkyway@Home, is that what you mean?
ID: 66294 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Brickhead
Avatar

Send message
Joined: 20 Mar 08
Posts: 108
Credit: 2,562,515,681
RAC: 47
2 billion credit badge10 year member badgeextraordinary contributions badge
Message 66295 - Posted: 12 Apr 2017, 19:53:04 UTC - in response to Message 66294.  


Limit yourself to 1 or 2 tasks running on the gpu or else all the instances will be spinning on multiple cpu's waiting for the gpu to finish a call.

So I should cancel my Citizen Science Grid project and run only Milkyway@Home, is that what you mean?

He didn't say that. The way I understand Tom's advice, you should NOT run more than 1 or 2 GPU tasks at once, then all but 1 or 2 CPU cores will be free for other projects to use.

Looking at computer ID 706124, that one has 8 CPU cores (4 physical + 4 more logical, like you said) and 1 GPU. If you're not using an app_config.xml file to tell MW otherwise, MW will run GPU task one after the other, which should keep one CPU core occupied - in that case you're following Tom's advice already. Your other project should be able to use the other 7 cores, unless it expects access to all 8 and refuses to run when one of them is unavailable.

If all of the CPU cores are busy, can you see which processes are using all that CPU time? (Task Manager, Processes, sort by CPU.)
ID: 66295 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66296 - Posted: 13 Apr 2017, 13:37:01 UTC - in response to Message 66295.  

Your other project should be able to use the other 7 cores, unless it expects access to all 8 and refuses to run when one of them is unavailable.


That's the thing. Even though the cores are all running at full throttle, the progress for the CCG tasks won't update at all while the M@H GPU task is running. I reduced number of CPUs to 99% and now there are 7 CCG tasks instead of 8, and the progress of only one of them is slowly increasing while the M@H task runs. The others are still frozen.

If all of the CPU cores are busy, can you see which processes are using all that CPU time? (Task Manager, Processes, sort by CPU.)


There are 7 instances of "exact_client_0.20_windows_x86_64.exe" each using about 11% CPU. The M@H instance barely uses any CPU, oscillating betweeen 1 and 3%. Again, very strange that their progress bars should be frozen!
ID: 66296 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Erico

Send message
Joined: 6 Oct 16
Posts: 11
Credit: 6,623,395
RAC: 0
5 million credit badge2 year member badge
Message 66297 - Posted: 14 Apr 2017, 18:57:51 UTC

C'mon folks, more ideas please! I still feel like I'm utterly wasting my processor's efforts.
ID: 66297 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
iwajabitw

Send message
Joined: 16 Nov 14
Posts: 16
Credit: 243,148,724
RAC: 6,613
200 million credit badge4 year member badge
Message 66298 - Posted: 14 Apr 2017, 19:17:08 UTC

How about going to the CSG projects preference s page on there website and selecting to only use 75% of the processors' resources, that way it doesn't expect 100% cpu from boinc. Worth a try without an app_config, but I am unfamiliar with that project.
ID: 66298 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
iwajabitw

Send message
Joined: 16 Nov 14
Posts: 16
Credit: 243,148,724
RAC: 6,613
200 million credit badge4 year member badge
Message 66299 - Posted: 14 Apr 2017, 19:23:34 UTC

I would also suggest turning off CPU tasks for MW if you want to run other CPU projects while MW runs on the GPU as stated ealier. Not much bang for buck using the CPU for MW when you are using the GPU.
ID: 66299 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profilemikey
Avatar

Send message
Joined: 8 May 09
Posts: 2228
Credit: 256,591,220
RAC: 139,250
200 million credit badge10 year member badgeextraordinary contributions badge
Message 66300 - Posted: 15 Apr 2017, 10:25:34 UTC - in response to Message 66296.  

Your other project should be able to use the other 7 cores, unless it expects access to all 8 and refuses to run when one of them is unavailable.


That's the thing. Even though the cores are all running at full throttle, the progress for the CCG tasks won't update at all while the M@H GPU task is running. I reduced number of CPUs to 99% and now there are 7 CCG tasks instead of 8, and the progress of only one of them is slowly increasing while the M@H task runs. The others are still frozen.

If all of the CPU cores are busy, can you see which processes are using all that CPU time? (Task Manager, Processes, sort by CPU.)


There are 7 instances of "exact_client_0.20_windows_x86_64.exe" each using about 11% CPU. The M@H instance barely uses any CPU, oscillating betweeen 1 and 3%. Again, very strange that their progress bars should be frozen!


The progress bars aren't "frozen" they just don't update as fast as some of the other projects task bars do. BTW do you use or have a screen saver? If so turn it off while the pc is crunching, pretty pictures come at the expense of crunching power.
ID: 66300 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote

Message boards : Number crunching : M@H seems to be freezing the progress of other tasks

©2019 Astroinformatics Group