Lahey Licensing of Fortran compiler for Linux - in detail ;-)
j.c.burton at gats-inc.com
Tue Jan 21 10:16:47 PST 2003
Jim Lux wrote:
> At 11:06 AM 1/21/2003 -0500, John Burton wrote:
>> But the question remains. In a world where other vendors are charging
>> for the product (fortran compiler) Lahey is charging for running the
>> programs produced by that product. I wrote the FORTRAN source code. I
>> bought the hardware and software for the cluster. I'm paying for the
>> cooling and power to run the cluster. I'm paying for the systems
>> administration. Why should I pay someone else to *run* my code on my
>> cluster? What is the value they add?
> They spent time and money writing and supporting the compiler in the
> first place, that's the value they add. You could write your own code
> in assembler, but that is a)likely to cost you a lot more time in the
> first place and b) unlikely to run as fast in any case; so your total
> cost "to get the job done" is substantially lower (presumably) using
> their compiler than not using their compiler.
You misinterpreted the question, or perhaps I didn't phrase it clearly
enough. Yes, they add value with the compiler. Yes, you should pay for
the license to use the compiler. The question concerns *running* the
program that you have compiled using their compiler (runtime vs. compile
I have paid for the compiler. I compile my code with their compiler.
This is fine. Now I run the binary code I just compiled. Lahey requires
a license for running the program, not just compiling it.
Example - I have a cluster with 48 CPUs. I compile a FORTRAN program
with > 100,000 LOC. Okay, I compile & run it on the cluster, everything
is fine under Lahey's 5 to 64 CPU license. I find that the combination
of 48 CPUs and Lahey's compiler is not enough to provide the throughput
I need (poor benchmarks, under estimating data rates, whatever). I need
to add 48 more CPUs. Now I *cannot* legally run my code on my cluster
because it violates Lahey's runtime license. Now I need to get a new
Another Example - My development cluster has 32 nodes. I compile and run
code with no problems. I have a production cluster with 256 nodes. Lahey
says I can distribute my code to an unlimited number of clusters, but I
can't run it on my production cluster without a new license.
> As far as other vendors go: they have other goals and cost
> recovery/profit motivations. For example, Intel wants people to use
> their processors. It's in their interest to "give away" the compiler,
> especially if it's tied just to their processor (and doesn't generate
> code compatible with VIA or AMD). One might ask why Intel charges
> anything at all (if they do..), and in fact, why they don't actually pay
> people to use their compilers, if only to get more Intel
> processors/products visibility. (Well, actually, they DO pay people..
> they subsidize educational instutions with free/low priced hardware, for
I don't have a problem with compensating for value added (no, I am *not*
looking for a a free lunch! :-). I have a problem in that they are
attempting to control how I can use my code and hardware.
> Ultimately, though, it's just Lahey's way of pricing software, compared
> to how other people do it.. Either you like it or you don't, but, in
> the overall scheme of things, there's no real moral high ground here..
> and, to be a bit of a Pangloss about it: it could be worse.. you could
> be paying for the software on a "per use" basis as advocated by some
> large consumer oriented companies.
You're right, it *could* be worse in just the way you mention, or they
could be like Windows XP... anytime you "change" your machine, you have
to re-register your license, or if you change it enough, get a new
More information about the Beowulf