Re: MLton on PowerPC: voltaire's Christmas wish?
On Wed, Dec 22, 2004 at 03:59:55PM +0100, Wesley W. Terpstra wrote:
> On Wed, Dec 22, 2004 at 09:42:01AM +0100, Ingo Juergensmann wrote:
> > Well, having more RAM is always nice, but IMHO there's something wrong with
> > MLton when it needs that much RAM for building.
> It's a whole-program optimizing compiler...
> That means it analyzes all of the source code at once.
> When compiling a large project (MLton is ~145k lines) it needs memory.
> I agree that this is unfortunate; however, if you check out the runtime
> performance of MLton compiled applications, you'll see the advantages. =)
Well, if it's an advantage if you can't use it because you can't compile it,
is argueable, I think... ;)
> > buildd=> select distinct ram, count(*) from status group by ram;
> > ram | count | arch
> > ------+-------+---------
> > 48 | 1 | m68k
> > 64 | 6 | arm mipsel m68k mips
> > 80 | 1 | m68k
> > 90 | 1 | mips
> > 96 | 3 | mips m68k
> > 128 | 11 | arm mips m68k
> > 132 | 1 | m68k
> > 136 | 1 | m68k
> > 144 | 2 | m68k
> > 256 | 4 | m68k mips s390
> > 320 | 1 | powerpc
> > 512 | 6 | amd64 sparc alpha
> > 768 | 1 | hppa
> > 1024 | 2 | alpha hppa
> > 1536 | 1 | amd64
> > 2048 | 1 | sparc
> > 4096 | 2 | alpha ia64
> Thanks a lot for this list! I've been trying to find it for a month.
> Where did you get this?
It's the database used on buildd.net. Not all of those are "official"
buildds, but it reflects the buildds used for non-free, backports and
experimentel as well.
> > As you can see, many buildds are low on RAM. How do you want to solve that?
> I am not planning on porting MLton to any platform with less memory.
> PowerPC is the exception; lots of people use it and it can handle the RAM.
> I've already done hppa and sparc. amd64, ia64, and alpha need some 64bit
> cleanups, so I was planning on doing that after the easier 32bit ports.
Maybe you want to get the other archs listed in N-F-U.
> > but maybe it's possible for MLton as well to lower the RAM requirements?
> > Of course you would need to know where and why the RAM is needed...
> Well, I'm in contact with the developers of MLton, and they seem to think
> this is an inherent disadvantage of whole-program optimization. Their (valid
> imo) argument is that requiring a powerful build machine is better than
> requiring a powerful machine to run the resulting binary.
Sure, but I wonder where to draw the line? Maybe next week another program
want to have 2G of RAM or 1 TB of disk space to build... ;)
Please note that year 2004 is coming to an end and
the year 2005 is near - even in my mail address!