PDA

View Full Version : BOINC 7.0.x, important changes in behavior



zombie67
01-22-12, 11:05 AM
There are a couple of undocumented changes that everyone should be aware of.

1) They changed the way "Computer is connected to the Internet about every x days" and "Maintain enough work for an additional" work. While the names of the cells are unchanged, the behavior is now completely different. They now represent a sort of min and max setting. It is apparently way more complicated than that, but min and max are a good shorthand. The impact to us: Many of us use 0 for "Computer is connected to the Internet about every", so that completed tasks are returned as quickly as possible. And that translates to having just enough tasks to cover the cores and GPUs, and no more. Regardless how big you set the "Maintain enough work for an additional", it just won't d/l any more tasks. So I have changed it from 0 and 1, to .5 and 1. Of course, if you are using both 6.12.x or earlier, and 7.0.x on machines, you will need to set two different locations. Otherwise you will be sending mixed signals to the BOINC clients.

2) Setting a backup project to resource share of 0 is broken and no longer works. With a RS of 0, BOINC will continue to download work, even when there is plenty of work from projects with a RS > 1. It is not clear if this was an intentional change to the code, or an unanticipated consequence of changing something else. Also, it is not clear to me if the developers are aware of the problem.

Mike029
01-22-12, 12:22 PM
There are a couple of undocumented changes that everyone should be aware of.

1) They changed the way "Computer is connected to the Internet about every x days" and "Maintain enough work for an additional" work. While the names of the cells are unchanged, the behavior is now completely different. They now represent a sort of min and max setting. It is apparently way more complicated than that, but min and max are a good shorthand. The impact to us: Many of us use 0 for "Computer is connected to the Internet about every", so that completed tasks are returned as quickly as possible. And that translates to having just enough tasks to cover the cores and GPUs, and no more. Regardless how big you set the "Maintain enough work for an additional", it just won't d/l any more tasks. So I have changed it from 0 and 1, to .5 and 1. Of course, if you are using both 6.12.x or earlier, and 7.0.x on machines, you will need to set two different locations. Otherwise you will be sending mixed signals to the BOINC clients.

2) Setting a backup project to resource share of 0 is broken and no longer works. With a RS of 0, BOINC will continue to download work, even when there is plenty of work from projects with a RS > 1. It is not clear if this was an intentional change to the code, or an unanticipated consequence of changing something else. Also, it is not clear to me if the developers are aware of the problem.

Wow, Keep fixing it till it's broke. Can't wait for Slicker to weigh in on this.

DrPop
01-22-12, 01:22 PM
Thanks for the good info, Z. That is stuff I wouldn't even know about until TOO LATE! :p Nothing like kicking a good product to the curb until no one wants to use it, huh? :mad: Did they implement and "good" or new "useable" features?:confused:

Slicker
01-24-12, 01:48 PM
If it isn't broke, fix it anyway. While fixing what works fine, try and make it even more complicated so it will take even less effort to break it in the future. That sure seems to be BOINC SOP.

There is one additional change. There is OpenCL support in the 7.x.x client. Of course, OpenCL support on the client means nothing if the machine can't get work, runs out of work, or won't ask for work because it now wants to wait to connect to the network even if the preferences are set to the network always being available.

Fire$torm
01-24-12, 04:20 PM
If it isn't broke, fix it anyway. While fixing what works fine, try and make it even more complicated so it will take even less effort to break it in the future. That sure seems to be BOINC SOP.

There is one additional change. There is OpenCL support in the 7.x.x client. Of course, OpenCL support on the client means nothing if the machine can't get work, runs out of work, or won't ask for work because it now wants to wait to connect to the network even if the preferences are set to the network always being available.

You are right on the money! But there is a simple fix. Rollback to BOINC v6.10.58.

I think we need to clone Slicker, transform the clone into a Fringe shape shifter and then send it after DA (Body Snatcher Ninja attack!!!!!) Works for me.............................

zombie67
01-24-12, 07:14 PM
You are right on the money! But there is a simple fix. Rollback to BOINC v6.10.58.

Not possible if you want to run opencl project apps. 7.x is required.

Maxwell
01-24-12, 07:41 PM
Not possible if you want to run opencl project apps. 7.x is required.
So, when I start going after POEM MMs, I'm going to have to upgrade, aren't I? Damn.

Fire$torm
01-24-12, 08:13 PM
Not possible if you want to run opencl project apps. 7.x is required.

You are referring to CPU OpenCL correct?

zombie67
01-25-12, 12:09 AM
So, when I start going after POEM MMs, I'm going to have to upgrade, aren't I? Damn.

Yep.

zombie67
01-25-12, 12:11 AM
You are referring to CPU OpenCL correct?

eh? No. I'm talking about ati and eventually nvidia GPU apps. All gpu apps will be opencl eventually.

Slicker
01-25-12, 02:32 PM
I asked about CPU OpenCL but that will require a re-write of everything implemented so far. Instead of setting up OpenCL as a separate entity, they decided to make opencl an attribute of the AMD and nVidia corprocessor and don't report CPU OpenCL at all. The bad implementation has led to problems since OpenCL doesn't care whether it is AMD or nVidia. It just says there are X devices that support OpenCL. Unfortunately, device 1 in OpenCL may be device 0 in nVidia and so the client may schedule the nVidia WU to run on the same device that is already busy running an OpenCL WU. They think that have that problem solved. It would have been a lot easier to solve if they had just made OpenCL a new coprocessor type. Then it would have much easier to allow it to handle CPU tasks. Why is that important? From my testing, I've found that the Collatz OpenCL for CPU app works better than the OpenMP version - at least with the AMD driver. I haven't tried the Intel OpenCL for CPU driver yet. I would expect that to be as good or better. So, for now, the OpenCL for CPU apps have to be installed as opt apps using the "mt" plan class (multi-threaded) like AQUA WUs. Since there is no way to know whether the machine supports OpenCL on the CPU because the BOINC client doesn't report it, the only other way to handle it is to assume that if the user has AMD Catalyst drivers and the CPU supports SSE, then send the OpenCL CPU app and if the customer has nVidia or Itel drivers, then they are S.O.L.

Slicker
01-25-12, 02:33 PM
eh? No. I'm talking about ati and eventually nvidia GPU apps. All gpu apps will be opencl eventually.

Rumor has it that the HD 7970 doesn't support CAL. So eventually may be sooner than you think.

Fire$torm
01-25-12, 04:52 PM
See here is the thing that has me confused. Moowrap@Home cannot be crunched on pre-5xxx ATI/AMD cards. Isn't this because OpenCL wasn't fully implemented before that series? If true then isn't the Moowrap ati14 GPU app OpenCL? Or is it just a stream app utilizing OpenCL calls which is why the ATI/AMD SDK needs to be installed with CCC 11.x???

Slicker
01-25-12, 05:23 PM
See here is the thing that has me confused. Moowrap@Home cannot be crunched on pre-5xxx ATI/AMD cards. Isn't this because OpenCL wasn't fully implemented before that series? If true then isn't the Moowrap ati14 GPU app OpenCL? Or is it just a stream app utilizing OpenCL calls which is why the ATI/AMD SDK needs to be installed with CCC 11.x???

If it was OpenCL, I would expect the nVidia to do a lot better. G

It works fine with older cards. I have a couple HD 3870's running it and they work OK: http://moowrap.net/results.php?hostid=608 and http://moowrap.net/results.php?hostid=7307 So does my HD 4830: http://moowrap.net/results.php?hostid=3686 Even my single precision HD 5450 works: http://moowrap.net/results.php?hostid=610&offset=0&show_names=1&state=3&appid=

So, either they upgraded the app to support older cards, or maybe it was DNETC that didn't support the older cards. I don't recall.

Fire$torm
01-25-12, 07:05 PM
If it was OpenCL, I would expect the nVidia to do a lot better. G

It works fine with older cards. I have a couple HD 3870's running it and they work OK: http://moowrap.net/results.php?hostid=608 and http://moowrap.net/results.php?hostid=7307 So does my HD 4830: http://moowrap.net/results.php?hostid=3686 Even my single precision HD 5450 works: http://moowrap.net/results.php?hostid=610&offset=0&show_names=1&state=3&appid=

So, either they upgraded the app to support older cards, or maybe it was DNETC that didn't support the older cards. I don't recall.

Ahhh maybe it was DNETC not Moo, Sorry. Moo didn't appear until after DNETC started having serious server problems and then getting shutdown for alleged copyright infringements IIRC (which doesn't seem often lately.....).
I'll try it on my 4850 just to be sure.

coronicus
01-26-12, 03:43 AM
moo works fine on my 4850x2 aswell as my 3850

Fire$torm
01-26-12, 05:05 AM
Hmmm, well I still cannot run Moo on either of my 4850s which is why they are permanently on Collatz.

Both systems are
Win7 x64
CCC is 11.5
BOINC 6.10.58

Slicker
01-26-12, 10:27 AM
Hmmm, well I still cannot run Moo on either of my 4850s which is why they are permanently on Collatz.

Both systems are
Win7 x64
CCC is 11.5
BOINC 6.10.58

Hopefully, in a month or two, they will also be able to crunch on Lychrel....