Folding@home's End User License Agreement (EULA) and why it's there

There’s been some recent discussion of aspects of Folding@home’s EULA and what constitutes a violation of the EULA.  One key issue is whether donors (end users of the FAH software) can make modifications to the code in order to make enhancements, such as multi-gpu support for NVIDIA.  While such modifications may be made with the very best of intentions, these modifications do not go through our QA (either at Stanford or our relevant partners such as NVIDIA, ATI, or Sony).  This is a big problem with 3rd party client modifications is that even very subtle modifications can create problems for the science involved.  Since there’s no way for donors to QA end user modifications, we cannot support their use and must remind everyone that any modifications to any of the client binaries is a true EULA violation.

The bottom line is that even though some modifications may be done with the very best of intentions (eg to help the Folding@home project, never to hurt it), we can’t tell whether those intentions translate into true help for the project without QA.  Also, perhaps more importantly, it’s hard to say that “some violations of our EULA” or “some modifications to the client code” are ok.  There’s no way to know whether something is ok until it goes through QA.

Finally, it’s been my experience with FAH that donors can often have very good ideas on how to improve the FAH software.  I have a suggestion as an alternative to 3rd party releases of client modifications.  Please go to the folding community forum (http://foldingforum.org) and make a post with the jist of your idea and someone from the FAH development team will get in touch with you.  If we’re already working to QA a fix for that type of change (eg multi-gpu support), it would make more sense for us to finish our existing QA than to start fresh with some other solution (since QA of a new approach would delay the release of that feature).  We are always looking for beta testers for new functionality and so that’s another way donors can help the project and get access to early features.

For example, we are actively working on several key issues right now on the GPU2/NVIDIA client, including multi-gpu support and better desktop performance, and hope to have something to release very soon (days timescale, assuming that the fixes get past QA without problems).  If you’re interested in beta testing some of these features, please make a post in the forum.

I wanted to thank everyone for their help to improve FAH clients and the FAH experience in general and hope we can work together to get the needed fixes in.  We are grateful for all the help we get from FAH donors.  However, I hope everyone can appreciate the need for QA, especially radically new and complex clients like GPU2, and that we can find a way to work together to get the fixes needed.