Welcome to MilkyWay@home

milkyway code license

Message boards : Application Code Discussion : milkyway code license
Message board moderation

To post messages, you must log in.

AuthorMessage
Profile Travis
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist

Send message
Joined: 30 Aug 07
Posts: 2046
Credit: 26,480
RAC: 0
Message 8588 - Posted: 18 Jan 2009, 18:16:10 UTC

We're having a discussion about how we would like to have the milkyway code be licensed (open source of course). I was wondering if any of you had any information as to this process.

I think the thing we are most concerned about is that we want our code to be openly available for use and modification -- however if someone distributes their own binary, that code must be made available as well.

It's a little frustrating when people are releasing binaries to the general public and we have no access to the code being used to generate these binaries; so we can't put these optimizations into our own stock application so everyone can benefit from them. It can also make debugging things a pain because we don't know exactly where our results are coming from.

I also think some of our users should be a bit concerned about this as well because they don't know exactly what they're running on their machines.

Anyways, we'd like your input and information so we can select an appropriate open source license for the milkyway code.
ID: 8588 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile KWSN Checklist
Avatar

Send message
Joined: 12 Aug 08
Posts: 253
Credit: 275,593,872
RAC: 0
Message 8593 - Posted: 18 Jan 2009, 19:48:38 UTC
Last modified: 18 Jan 2009, 19:58:17 UTC

GNU General Public License

The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL.

Frequently Asked Questions about the GNU Licenses
ID: 8593 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Misfit
Avatar

Send message
Joined: 27 Aug 07
Posts: 915
Credit: 1,503,319
RAC: 0
Message 8598 - Posted: 18 Jan 2009, 20:25:38 UTC - in response to Message 8593.  

The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them.

This still leaves Travis and Co with the problem of debugging errors. It also eventually leads to credit discrepancies and flame wars.
me@rescam.org
ID: 8598 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile speedimic
Avatar

Send message
Joined: 22 Feb 08
Posts: 260
Credit: 57,387,048
RAC: 0
Message 8601 - Posted: 18 Jan 2009, 20:37:07 UTC - in response to Message 8598.  
Last modified: 18 Jan 2009, 20:37:25 UTC

This still leaves Travis and Co with the problem of debugging errors.


This is not a license problem, theya have to do that anyway before putting apps on the project server.

It also eventually leads to credit discrepancies and flame wars.


The only way to avoid this is not to give out the code. To no one, never...

Anyway, before releasing under some sort of free license, they have to make sure, that there are no non-free copy/paste pieces in the code.
mic.


ID: 8601 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
thimios

Send message
Joined: 12 Jan 09
Posts: 14
Credit: 9,378,715
RAC: 14,802
Message 8610 - Posted: 18 Jan 2009, 21:13:47 UTC - in response to Message 8601.  
Last modified: 18 Jan 2009, 21:16:38 UTC

This still leaves Travis and Co with the problem of debugging errors.


This is not a license problem, theya have to do that anyway before putting apps on the project server.

It also eventually leads to credit discrepancies and flame wars.


The only way to avoid this is not to give out the code. To no one, never...

Anyway, before releasing under some sort of free license, they have to make sure, that there are no non-free copy/paste pieces in the code.



IMHO the above is wrong.
So long as milkyway doesn't have a reason for keeping the code closed, it should be open for modification and optimization.

Look at the speedup open source projects get (SETI) from donor optimizations.
Also note that this is another kind of donoring in addition to cpu time and money.

Personally, I don't really like closed source projects.

Again IMHO (I'm not an expert), GPL should be enough, it works for linux.
ID: 8610 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ebahapo
Avatar

Send message
Joined: 6 Sep 07
Posts: 66
Credit: 636,861
RAC: 0
Message 8619 - Posted: 18 Jan 2009, 22:08:46 UTC - in response to Message 8588.  

I dislike the way that GPL is going with v3 (even Linus Torvalds stayed away from it), favoring instead the Apache or the Modified BSD. For more info, see http://www.gnu.org/licenses/license-list.html.

HTH

ID: 8619 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Misfit
Avatar

Send message
Joined: 27 Aug 07
Posts: 915
Credit: 1,503,319
RAC: 0
Message 8631 - Posted: 19 Jan 2009, 1:38:49 UTC - in response to Message 8601.  

This still leaves Travis and Co with the problem of debugging errors.

This is not a license problem, they have to do that anyway before putting apps on the project server.

But if the error is in the optimized app and those people refuse to release their source code to admin then it can become a problem with validation. More wingmen will need to be added.

It also eventually leads to credit discrepancies and flame wars.

The only way to avoid this is not to give out the code. To no one, never...

It can be avoided if the optimized apps are publicly released.
me@rescam.org
ID: 8631 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Travis
Volunteer moderator
Project administrator
Project developer
Project tester
Project scientist

Send message
Joined: 30 Aug 07
Posts: 2046
Credit: 26,480
RAC: 0
Message 8638 - Posted: 19 Jan 2009, 4:11:45 UTC - in response to Message 8631.  

This still leaves Travis and Co with the problem of debugging errors.

This is not a license problem, they have to do that anyway before putting apps on the project server.

But if the error is in the optimized app and those people refuse to release their source code to admin then it can become a problem with validation. More wingmen will need to be added.

It also eventually leads to credit discrepancies and flame wars.

The only way to avoid this is not to give out the code. To no one, never...

It can be avoided if the optimized apps are publicly released.


Yes, if the optimized apps are publicly released this is good, because we can:

a. incorporate the optimizations into our stock app so everyone benefits.

b. check the code to see if problems were having in our optimizations are coming from optimized apps which aren't doing the calculations correctly anymore.

These are the main reasons we want to have any optimized apps offered by a 3rd party to be open sourced as well.
ID: 8638 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Paul D. Buck

Send message
Joined: 12 Apr 08
Posts: 621
Credit: 161,934,067
RAC: 0
Message 8649 - Posted: 19 Jan 2009, 9:02:42 UTC

If we look at the discussion this statement applies if the GPL is properly applied (or at least I would think so):


Copyleft applies only when a person seeks to redistribute the program. One is allowed to make private modified versions, without any obligation to divulge the modifications as long as the modified software is not distributed to anyone else. (my emphasis)


Which would imply that if someone were to download the source and then make a binary for their own use all is well and good. BUt, as soon as they give the binary to ANYONE else, the source they used must be disclosed.

Sadly this would not deter some who are interested mostly in stroking their own egos, but, based on my limited understanding ...

As to some of the other comments, SaH did slowly build up a group that has dedicated enormous amounts of time in making the application faster through examination of the code and testing variations. The same COULD occur here, but it is NOT done overnight ...

As for the calculation problem ... well, MY take is that if they want to be selfish and their application is not returning correct results, or the same results as the stock application, and the individual or group is not willing to share the code ... well, banning the individual computers, individuals, or even teams is warranted ... and I personally have no sympathy ... but that is just me ...
ID: 8649 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
WimTea

Send message
Joined: 16 Nov 07
Posts: 23
Credit: 4,774,710
RAC: 0
Message 8656 - Posted: 19 Jan 2009, 12:21:35 UTC

There is also the issue to consider that there are two kind of optimizations, sourcecode based and runtime based.

The discussion in this thread is mainly about the sourcecode. I support Paul D. Buck's reasoning on this. As long as someone develops and uses modifications and, for whatever reason, doesn't publicize them there will be no benefits to other users and there will be the possibility of incorrect computations turning up and thus the difficulties to weed these out.

A different form of optimization is altering the runtime software. This includes using different compilerflags, using a different compiler altogether and manual optimizing the compiled code. IMO especially manual optimizations can add to the difficulty of figuring out incorrect computations.
Just like no open source licensing model can force publication of changes to sourcecode, no (any!) licensing model can prevent changes to be made (and used) to runtime software.
In the end all depends on the willingness of people to share enhancements, which is the main idea behind any open source licensing model.

In the end also incorrect results are, well, incorrect results no matter the reason they were generated. This also includes random events like an overheated CPU or faulty RAM. A mechanism is needed to weed all these results out. Well known mechanisms are the use of redundancy and checks made by the validator. Redundancy has well known pros and cons, the usefullness of a validator strongly depends on the science of and algorithms used by a particular project.
Another mechanism is to ignore results from specific hosts or specific users.
These unfortunately have to be coded somewhere, eg in the validator.

So in the end I think yes, an open source license will definitely help getting less incorrect computations but also no, it won't be the silver bullet that prevents all incorrect computations, some manual labor will always be needed for this.
ID: 8656 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Steven Pletsch

Send message
Joined: 18 Oct 08
Posts: 7
Credit: 676,341
RAC: 0
Message 8660 - Posted: 19 Jan 2009, 13:46:57 UTC - in response to Message 8656.  

ID: 8660 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Paul D. Buck

Send message
Joined: 12 Apr 08
Posts: 621
Credit: 161,934,067
RAC: 0
Message 8685 - Posted: 19 Jan 2009, 21:58:21 UTC

Sadly, if this continues, they may have to go back to redundantly checking tasks ... and as I suggested, weeding out the hosts, participants, teams that are not using the stock applications.

I like my credit score as much as the next guy, maybe even a little bit more ... but, the real point of all of this is to accomplish science ... the only reason I am so anal about my earnings is that it is the only proof that I have done something for a project.
ID: 8685 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Misfit
Avatar

Send message
Joined: 27 Aug 07
Posts: 915
Credit: 1,503,319
RAC: 0
Message 8700 - Posted: 20 Jan 2009, 1:26:48 UTC - in response to Message 8660.  

A modified version of the Beerware license might be all that is needed.
me@rescam.org
ID: 8700 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Emanuel

Send message
Joined: 18 Nov 07
Posts: 280
Credit: 2,442,757
RAC: 0
Message 8814 - Posted: 21 Jan 2009, 15:30:53 UTC
Last modified: 21 Jan 2009, 15:47:01 UTC

If you want to avoid branching, consider something like this license:
http://byuu.cinnamonpirate.com/bsnes/license/
This is compatible with the LGPL with the additional restriction that any modifications can only be distributed to the licensor.
The owner of that page has also written an interesting article on licensing:
http://byuu.cinnamonpirate.com/articles/licensing/

By the way, I don't think using different compiler flags counts as a modification, although you may have to exempt the makefile from the license.
ID: 8814 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote

Message boards : Application Code Discussion : milkyway code license

©2024 Astroinformatics Group