Welcome to MilkyWay@home

Posts by Pavel Hanak

1) Message boards : Number crunching : GPU not at 100% when all CPU cores crunch (Message 59140)
Posted 27 Jun 2013 by Pavel Hanak
Post:
As a temporary fix, I found a little program that can set process affinity automatically:

http://bitsum.com/processlasso/

In case anyone else wants to try it, you will find "Configure default CPU affinities" in its Options menu. Just write *milkyway* (including the asterisks) in the "name match" field, select only one CPU on the right and press "Add to list". Works like charm, my GPU now crunches at 100% even when all CPU cores are busy.
2) Message boards : Number crunching : GPU not at 100% when all CPU cores crunch (Message 59080)
Posted 24 Jun 2013 by Pavel Hanak
Post:
Oh wow, I didn't expect somebody from MW@H team would notice so soon. That CPU thread affinity problem is no big deal, I can easily leave 1 core idle via "local computing preferences" in BOINC Manager. My current water-cooling solution a bit struggles with the almost 400-watt heat load from GPU and CPU anyway. I primarily designed it to be as quiet as possible, not to dissipate that much heat 24/7. So until I solve that, I can't safely run the MW@H GPU app for longer than a few hours a day anyway.
3) Message boards : Number crunching : GPU not at 100% when all CPU cores crunch (Message 59077)
Posted 24 Jun 2013 by Pavel Hanak
Post:
To say the truth, I found your "high I/O and memory access" explanation a bit fishy. It simply would be a very unlikely coincidence that 11 CPU cores crunching were fine, but 12 cores suddenly created such a bottleneck that it would slow down the GPU to half. So I poked around a bit more and I think I found the true source of the problem. I think the MW@H app jumps between CPU threads wildly, which (among other undesirable things) causes those GPU slowdowns. When I use Windows Task Manager to force "milkyway_separation__modified_fit_1.22_windows_x86_64__opencl_amd_ati" process to use only one thread (it is called "process affinity" in Windows), the GPU jumps to 100% even if all CPU cores are crunching at full blast. Forcing the MW@H app to use just one CPU thread of course eliminates that wild jumping. The bad thing is, the affinity setting lasts only one workunit, so unless it is fixed in the app itself, this solution is useless.

I found no bug-report thread here, so if some moderator sees this, please forward this information to MW@H programmers.

BTW, this is not the first time I encountered a problem like this, though AFAIR it would be the first for BOINC apps. I still vividly remember how many programs crashed or run extremely slow on (then bleeding edge desktop CPU) Athlon X2. Even the WXP themselves needed a special patch to run properly. It is rather rare to happen with modern programs though. The last time I needed to mess with process affinity like this was when I had random crashes in Fallout 3. It ran fine on my previous 4-thread machine, but its programmers obviously never expected that 12-thread machines would come so soon...

...
...
...

Hmm, is it possible somehow to force process affinity in BOINC when it starts the apps, by any chance?
4) Message boards : Number crunching : GPU not at 100% when all CPU cores crunch (Message 59053)
Posted 23 Jun 2013 by Pavel Hanak
Post:
Hi all, I know the thread title might sound familiar, but I think I encountered a different problem/bug than discussed previously here, so please bear with me.

You see, I have this water-cooled gaming rig with 6-core/12-thread CPU (Intel i7-970) and Radeon HD7970 GPU. And of course, I use it to crunch for several BOINC projects, but MilkyWay@home is (currently) the only project I run on GPU. Now normally, the HD7970 can burn through one MilkyWay@home workunit in about 50 seconds and GPU is utilized at 100% the entire time. But that happens only if at least one CPU core/thread is idle. If all CPU cores/threads are crunching, the GPU slows down considerably - most of the time, the GPU utilization jiggles between 40 and 80%. The MilkyWay@home workunits take about twice as long to crunch, too. When I disable CPU tasks, the GPU utilization almost immediately jumps back to 100%. When I enable them, the GPU falls back into that 40 to 80% range, so there is definitely a pattern there.

I updated to the latest BOINC Manager and graphics drivers, but nothing helped. Is this some known problem?

Oh, I almost forgot, the PC runs on W7 64-bit Professional and has 12 GB RAM.




©2024 Astroinformatics Group