Lahey Licensing of Fortran compiler for Linux - in detail ;-)

John Burton j.c.burton at
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 
> instance)

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 mailing list