Re: [AMBER-Developers] nofftw3 and MKL

From: Jason Swails <>
Date: Thu, 16 Oct 2014 18:57:00 -0400

On Thu, Oct 16, 2014 at 3:37 PM, Ross Walker <> wrote:

> >
> >Wink, wink, nod, nod.
> >
> >---
> >tail $AMBERHOME/AmberTools/LICENSE
> >
> > The GNU General Public License does not permit incorporating your
> >program
> >into proprietary programs. If your program is a subroutine library, you
> >may consider it more useful to permit linking proprietary applications
> >with
> >the library. If this is what you want to do, use the GNU Lesser General
> >Public License instead of this License. But first, please read
> ><>.
> >---
> >
> >And note that we are put into this position of saying
> >"ohh, we didn't know that users would actually (illegally)
> >link the fftw3 (that we legally distributed) with our proprietary
> >programs"
> >by lawyers:
> >
> ​[snip]
> As for the requirement that the user 'modify' the code to link to FFTW -
> doesn't the user do that anyway? - The configure script asks them if they
> want to download and apply updates - they say yes, that then results in
> the code being modified. An alternative is just have the configure script
> prompt the user if they want to use FFTW - tell them to type a '1' to
> include it and a '0' to exclude it. That value can then be inserted into
> the configure script / config.h with a simple sed and that way the user
> can have been judged to have 'modified' the code to permit it's use. Seems
> simple enough to me.

​No. If you actually _read_ the GPL v3, you'll see that the configure
script, updating script, and everything else that we distribute (e.g.,
Makefiles) is included in their definition of the "source code".​

The GPL is a legal vessel to enforce a specific intent. That intent is to
give *free* software an advantage over non-free software by restricting the
use of GPL libraries and programs by other GPL programs -- pmemd is not
such a program. According to the whole GNU philosophy, a FOSS program like
GROMACS should be able to boast PME acceleration based on FFTW
optimization, while a program like pmemd should have to either pay for or
write their own FFT. That is the *entire* point of the GPL versus the
LGPL. If the FFTW authors had wanted to let us use their codes in the
version of pmemd we ship to people, they would have licensed FFTW
accordingly (and do, if we are willing to pay and insure). I don't think
that the fact that we release source code with an option *not* to use it
absolves us of section 5 of the GPL. It certainly still violates the
intent of the license. As authors and distributors of free software
ourselves, this should be something we care about (I can at least speak for
myself here).

On the other hand, consider yourself as someone that has downloaded Amber.
Now you are also a big fan of FFTW because you have used it in other codes
and you know how fast it is. So you want to download FFTW and link it to a
program you purchased and modified -- pmemd -- in order to accelerate your
PME calculations. _That_ usage is consistent with the intent of the GPL
and the GNU philosophy of freedom in software. Amber itself does not
benefit from FFTW -- just a person using both Amber _and_ FFTW.

I think this is an important distinction that we should respect -- not an
obstacle we should try to dodge by "masking" the former ("unsanctioned")
usage as an instance of the latter (sanctioned) usage. If someone comes to
us and asks for help linking pmemd to FFTW, I see no problem with giving
them instructions to do so. But that's very different than us doing it for
them (or even telling them that it _can_ be done!), since we don't benefit
from telling people "we can use FFTW!"

Intent should be as important to us as "what we can get away with" here.

All the best,

P.S. So suppose we get away with releasing a version that links with FFTW.
Can we really complain if someone out there relicenses pmemd under the GPL
by claiming it as a "covered work" being "based on" FFTW3?

Jason M. Swails
Rutgers University
Postdoctoral Researcher
AMBER-Developers mailing list
Received on Thu Oct 16 2014 - 16:00:02 PDT
Custom Search