harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tim Ellison <t.p.elli...@gmail.com>
Subject Re: [general] What platforms do we support?
Date Sat, 31 Mar 2007 21:44:19 GMT
Nathan Beyer wrote:
> Over the past few months I've been experimenting with various platform
> configurations to run the build tests on and I've been running into
> enormous hurdles that seem to all be turning out to be undocumented
> platform requirements.
> 
> Currently, the downloads page [1] separates the available snapshots
> into three platforms; Windows 32-bit, Linux 32-bit and Linux 64-bit.
> All of these platforms are Intel-based x86, one would have to guess.

I agree we should have explicit machine requirements listed alongside
the download links.

> The Wiki has a section called "porting matrix" [2], which seems
> specific to DRLVM.

That should cover both DRLVM and the class library code.

> This seems to indicate that only the latest
> platforms are supported; IA32 with SSE/SSE2 (what does that even
> mean?) on Linux and WinXP/2003, IA64 and AMD64 on Linux.

SSE/SSE2 refers to the extended instruction set.

> What I have found anecdotally is
> * Classlib blows chunks on Windows 2000 because of the AWT/Swing code.
> * DRLVM blows chunks, hard, on Pentium III and Pentium III Xeon systems
> * IBM's VM works on Windows 2000, 2003, XP and on P3+ systems
> 
> My point being, this is confusing. At the very least, it's not clearly
> documented; does the classlib have different requirements or the same
> as DRLVM? DRLVM can't run on P3 chips; isn't that a little silly? How
> many P3-based servers are there out there that run J2EE app servers?
> 
> Regardless, I think we need to come to a common understanding
> (decision), document it and test against it.

We sure can do a better job of describing the current requirements.  We
could also agree on what platforms (OS/processor combinations) are most
interesting, but of course it requires work to ensure ongoing 'support'
for each one.  Without people stepping up to provide code and testing
etc. then a platform will fall into disrepair.  Similarly, if somebody
is willing to invest their time in a platform we don't think is
interesting I doubt we would stop them.  So we've kinda got what we've got.

The Porting Matrix table is looking pretty good.  We can fix up a few bits.

I'd call out the current IA32 processor support as "Intel Pentium 3 CPU
with MMX, SSE, and SSE2 support (i.e. Centrino) or better".  You may be
able to persuade the VM/JIT people to codegen for a regular Pentium 3
with MMX, and SSE, the class library doesn't really care.

I'd call out the current Windows OS support as "Windows 2000
Professional with SP3, or better". Not sure that we have anyone testing
on that version, but I'd be interested to know if people don't think
that is achievable.

For Linux we can go through each distro's naming scheme, but I suggest
they will all be 2.4.x kernels, or better.

Thoughts?
Tim


Mime
View raw message