gsk@khaki.asd.sgi.com (George S. Kong) (07/06/90)
attached is my query about fortran floating point performance
on pcs, macs, and amigas, the responses i received, and a couple
of other postings that i thought were relevant.
thanks to all who responded.
if anyone has additional comments, pls post them,
because i'm not planning on doing any further summaries.
George S. Kong, Silicon Graphics, Inc., (415)962-3281
gsk@sgi.com
...{decwrl,allegra,adobe,ucbvax,pyramid,ames}!sgi!gsk
..................................................................
|From: gsk@khaki.asd.sgi.com (George S. Kong)
|Organization: Silicon Graphics, Inc., Mountain View, CA
can anyone out there help me compare a mac to a 386 clone
w.r.t. floating point performance in fortran?
i have a friend who's a grad student in physics and would
like to buy a machine to run simulations written in fortran.
because of the student discounts available to him, he can
purchase a mac se/30 or a similarly-configured 33 Mhz 386
clone with a 387 math coprocessor for roughly the same price.
i have two sets of questions:
1) what fortran compilers are available for these two machines
at fairly low cost?
how do they perform on the above-mentioned hardware?
2) the 33MHz 386 machine is closest to the se/30 in price,
but slower ones are available. some of these models are
available with and without caches. does presence or absence
of a cache affect math coprocessor performance the same way
it affects performance of other cpu operations?
|From: mcdonald@aries.scs.uiuc.edu (Doug McDonald)
|Organization: School of Chemical Sciences, Univ. of Ill. at Urbana-Champaign
Don't know about the Mac. The compiler I tried long ago on it was
utter crap.
Microsoft Fortran isn't bad, but it is not a 32 bit compiler. IF he
wants to run big programs or use 32 bit ints it is not the way to go.
The MicroWay compiler is truly excellent - just a tad worse than
VMS C and a big bundle better than the MIPS compiler (sorry but thats
true. MIPS's compiler's optimizer is seriously lacking in certain
optimizations. They know about this and have promised a fix. In fact,
on a 25 MHz 386 the MicroWay can generate code that runs faster than
an Iris 4.)
However, the Microway Compiler and the Phar Lap runtime will set you
back about $1000. That's for a 386. More for the 486 version (which
has instruction scheduling optimized for the 486.)
Also, the Mac is HARD to program (unless you give up and run MPW
all the time).
|From: wiest%tucker.Berkeley.EDU@jade.berkeley.edu (E. Joseph Wiest)
I'm making the same choice myself, and would be very interested in
reading the responses to your question. Please email
a summary to me if you do not post them .
|From: adobe!uunet!itcyyz!gchow (george chow)
|Organization: I.P. Sharp Associates, Toronto Ont., Canada.
>1) what fortran compilers are available for these two machines
> at fairly low cost?
I'm not too familiar with Fortran compilers for the Mac but I do know
that none of them are cheap. To my knowledge, all Fortran compilers
available for the Mac run under MPW, the standard Apple development
environment. MPW is about $200-300 by itself and the compiler is about
$300 or so.
> how do they perform on the above-mentioned hardware?
Byte had a comparision of floating point performance of the Mac and
MS-DOS machines awhile back. I'm pretty sure it was within the last 18
months. They were not testing 33Mhz machine then but you can
extrapolate your results for a rough figure.
My guess is that the 386 will out-perform the SE/30 because of sheer
clockspeed and the maturity of the Fortran compilers but don't
quote me. ;)
>2) the 33MHz 386 machine is closest to the se/30 in price,
> but slower ones are available. some of these models are
> available with and without caches. does presence or absence
> of a cache affect math coprocessor performance the same way
> it affects performance of other cpu operations?
Much of this depends on your application. If your simulation is largely
compute-bound, the cache will not help much. Since I don't know how
your simulation works, I can't make any blanket statement. The best
thing to do, I think, would be to try one of your simulation out on
the two machines and compare the difference. Note that the size of the
cache makes some difference; an expandable cache, if it can be gotten
cheaply, is a better thing than a fixed-size one.
[note i was talking about a cache for main memory, not disk]
|From: Tom Almy <toma%tekgvs.labs.tek.com@RELAY.CS.NET>
|Organization: Tektronix, Inc., Beaverton, OR.
I know nothing about the Mac world, but as far as the 386/387:
Fortran Compilers: There are 386 protected mode compilers (by far the best
performance, and able to handle large programs) and 8086 compilers. These
would limit your program size to <640k. Protected mode programs will run
significantly faster (I've seen 2x typically, 3x sometimes). But since 8086
compilers are cheaper (and you mentioned cost as a factor) I will mention
them first.
The most widely available is Microsoft's. The recent versions seem to be
fine (I have 5.0), but the early versions were rightly accused of being
junk. It runs about $300. In the real Toy class are Lahey's Personal
Fortran ($100, "small" 64k max program size), and Nevada (could be Utah)
Fortran which I haven't seen in a while, but is even cheaper. In the $500
range are Lahey F77L and Ryan McFarland's RM/FORTRAN. These companies have
been around a *long* time.
For protected mode use you need a "DOS Extender" which typically adds to
the price. Once you have paid for the DOS extender, you can buy other
language compilers for it as well (but they are all $$pricey). I have
MicroWay NDP Fortran-386 (about $600), which I use the the Phar Lap
DOS Extender ($500, symbolic debugger $200, Virtual Memory Manager $300).
Although I haven't seen them Lahey has a 386 compiler which is bundled with
OS/386 (which has VM) for about $1000. I understand that OS/386 is not as
convenient to use as the Phar Lap product. Also Watcom has a 386 compiler
with runtime, which I know nothing about (except Watcom has an excellent
reputation) for around $1000.
Concerning your second question. Our first 80386 machines were 16Mhz, no
cache (but interleaved memory). The next machines we bought (20 Mhz with
cache) were almost exactly twice as fast. The effect of a cache will not be
as striking for floating point, but having a cache seems to be very
important for overall performance.
For striking performance gain in protected mode programs and also those
doing floating point, look at a 25Mhz 486 box. These *should* cost little
more than a 386+387 combination. Not to effective if the only thing you
would be running is WordPerfect :-).
|From: tbutler@wpi.wpi.edu (Tim Butler)
an educational SE/30 costs about $2300 now. (the price dropped recently)
make sure your friend knows that. (Or if he does, where can you get a 33MHz
clone with co-processor for $2300??)
-there are a couple of local clone resellers in the bay area that
-advertise such prices
|From: "K. Hampel Ext 6918 Supvsr D.Vvedensky" <umapy03%CC.IC.AC.UK@CORNELLC.cit.cornell.edu>
We've been using fortran on mac cx & ci machines. We used to have Mactran,
but we ditched it (too buggy). The fortran we do use is Language Systems
fortran, however this only runs under the Mac Programmers Workshop (from
Apple Programmers & Developers Association, it works ok but not very fast:
about twice the speed of a VaxStation 2000 (=MicroVax II) when running
on a cx. The development environment is hard to learn & almost unixoid but
very powerful.
I know little enough about 386 machines except that (with coprocessor)
they are likely to be a fair bit faster than the mac, if speed is all you
are interested in.
Hope this is of use.
Kris Hampel, research student. Solid State Theory Group. Imperial College
kris@sst.ph.ic.ac.uk (JANet).
|From: wuwei@acf2.NYU.EDU (Wei Wu)
If you get any response , could you send me a summary ?
Thanks in advance.
|From: cookson@helios.mitre.org (Cookson)
|Organization: The MITRE Corp., Bedford Ma.
As a mac owner, I feel I can say this without fear of being called a
computer racist. The se/03 is a nice machine, but if your friend
wants to do something processor intensive, buy the '386. It will
run proverbial circles around the mac in terms of processing power. Hell,
he might even want to go out and buy Unix and X windows for it. (not
a big MeSsy DOS fan my self :-)). I don't know exactly what is out there
in terms of Fortran compilers, but I know that there a damn lot of them
for the '386.
|From: Don Gilbert <gilbertd@silver.ucs.indiana.edu>
From benchmark fortran programs included with
Language Systems Fortran (~$200, see APDA catalog from Apple)
Whetstones Whetstone Savage
(in thousands) time (s) time (s)
MacSE/30 (16MHz 68030) 882.355 1.4000 3.400
MacII (??MHz 68020) 631.319 2.1328 3.716
Lang. Systems is the only Mac fortran I've used, but I am happy
with it (for a fortran). It compiles Vax/VMS and other
fortran source very well. I would also suggest to any student that
s/he learn C and invest in a good Fortran 2 C translator if needed,
as ForTran is a dinosaur. Don.Gilbert@iubio.bio.indiana.edu
|From: Ralph Seguin <gilgalad@dip.eecs.umich.edu>
|Organization: University of Michigan EECS Dept, Ann Arbor, MI
Well, 386 machines are much quicker than 030/882 when it comes to
floating point. Why not get an Amiga 3000? Cheaper and much
faster than an SE/30. Also, you can easily upgrade to 040 which
will run circles around a 387 (3.5 MFLOPs off of LINPACKS).
I know of a good FORTRAN compiler for the Amiga (Absoft FORTRAN),
but I don't know anything about the Mac or PC FORTRAN world.
|From: Richard Alan Gerber <ragg0270@uxa.cso.uiuc.edu>
|Organization: University of Illinois at Urbana
you might look into the Amiga line of computers. Specifically, the new
Amiga 3000. I don't know how the cost compares, but for $3000 you get:
Amiga 3000
60030 w/ 68882 coprocessor @ 25 Mhz
13" multisync color monitor
40 MB hard disk
2 Meg ram
1 3 1/2 floppy
I haven't used it, but a good fortran compiler is supposedly available.
And comp.sys.amiga is a very active newsgroup. If you posted your
request about the compiler, speed, etc. to that group (or comp.sys.amiga.
tech), I'm sure you would get a very good response.
|From: eachus@d74sun.mitre.org (Robert I. Eachus)
From the time stamps I may even get first shot at this...
There is a good Fortran 77 compiler from AbSoft. It does support
68881 and 68882 coprocessors, but you need to buy the 68020 vesion.
So much for Fortran.
The Amiga 3000 currently has the highest performance of any
Amiga, and since your friend can get one for around $3000, there seems
little point in discussing anything else. On cache resident
benchmarks, the 3000 is about 50% faster than a Mac SE/30 with
floating point chip installed, and about the same speed on floating
point as a 386 machine with a 25 MHz FPU. (Note: Most 33 MHz 386
boxes do not have 33 MHz or even 25 MHz FPUs.) On programs (like
simulations) where memory bandwidth is an issue the Amiga 3000 blows
almost everything away. (20 MBtyes/sec actual, compared to 5
MBytes/sec for 386 machines and Macs IIs.)
On large memory tests, an Amiga 3000 benchmarks at about the same
speed as a Sparcstation for non-floating point tests. The
Sparcstation is about 3 times as fast on floating point.
Before your friend goes out looking for a used SparcStation, I
should point out that the Amiga 3000 comes with a coprocessor slot.
When 68040 boards are available for the 3000 later this year they will
increase the floating point performance by a factor of 10! Yes, that
is Cray class performance. I don't know how much the 68040 boards
will cost, but I doubt it will be more than $3000. Commodore will be
marketing at least one board (after all they put the slot in) and I
expect the other aftermarket companies selling 68030 boards for the
2000 will all be out there too. Now you know why people are selling
their 2000's and 2500's to get 3000's. (Not me. I'm going to keep
this machine at work, and get a 3000 to replace my 1000 at home.)
|From: David Fetrow <fetrow@milton.u.washington.edu>
|Organization: University of Washington, Seattle
The fastest will be the 80386+Weitek Floating Point using NDP Fortran
from Microway. Bar none. An 80386+80387 comes in next. The Mac may
have the edge on the Amiga but long Fortran runs are NASTY on any
single tasking machine so the Amiga might have an edge in useability.
A Mac running Multifinder still has the getnextevent() problem.
An 80386 can run something like Windows or DesqView to get a multitasking
environment.
|From: Stephane Desmarais <desmarai@iro.umontreal.ca>
|Organization: Universite de Montreal
I only know that AbSoft is selling a Fortran compiler (Fortran 77 I think)
for the Amiga. Hopefully, someone more knowledgable than me will
answer you.
|From: SYG <sukenick@sci.ccny.cuny.edu>
|Organization: City College of New York - Science Computing Facility
Well, a number of the chemists around here do lots of simulations
(diffusion/kinetics type problems) and we've run similar
software on 386/387 and Mac's. Timing is similar, with no clear winner.
However, if the machine is for number crunching and later processing of
the data (display, writing reports, etc.) the Mac has an edge in
being *much* easier to use....it is very easy to transport data to
applications available for the Mac: plotting, "prettying the data",
word processing, etc. The edge that the 386 has is cheaper add on stuff.,
and possibly a cheaper price (future), and future upgrades.
I am not too familar with the different compilers for the machines...
I know that you can get a decent compiler for the 386 for ~ $100;
the compiler that we have on the Mac is a little more awkward to use
that I like....
If it was up to me, I'd choose MAC for ease of use....howeveri, instead of
SE/30, I prefer the Mac II's (color, and larger screen). If I needed no
further manipulation of the data (other than perhaps a visual graph or a
"rough" printout: eg: publication quality not needed often) and the
computer was only used to produce the number crunching results,
the 386 may be better for price of add on memory, etc. (386 is capable of
just as good results as the MAC, it just takes longer and is more clumsy)
Another thing to consider is: what machines are available for
the grad student? If the college has 386's with laser printers
attached, a 386 may be more attractive. (translation form MAC to
PC and vice versa is available, but it is easier to just stick
the disk in and everything is ready to go.......)
|From: gilgalad@dip.eecs.umich.edu (Ralph Seguin)
|Organization: University of Michigan EECS Dept, Ann Arbor, MI
>An SE/30 doesn't even have a floating point accelerator, does it?
>Most 386 clones will come with a 387.
Pure nonsense. Most 386 clones will not come with a 387. Why not get
an Amiga 3000? Much faster and cheaper than an SE/30. It also has the
ability to plug in an 68040 when they come up to production. The 68040
will run circles around a 386/387 combo (3.5 MFLOPs on LINPACK).
|Reply-To: jeffe@eniac.seas.upenn.edu.UUCP (George J. Jefferson)
|Organization: University of Pennsylvania
>An SE/30 doesn't even have a floating point accelerator, does it?
>Most 386 clones will come with a 387.
The SE30 has a 68030 w/PMMU and a 68882 Math coprecessor running at 16Mhz
|From: mkh6317@rigel.tamu.edu (HOWARD, MATTHEW KENDALL)
|Organization: TAMU
Earlier today I posted a message regarding Absoft's MacFortran II
compiler. I was hasty and wrong about somethings. The prospect
of a 2X speed increase in scientific computations had me excited
to the point of carelessness.
I was under the misconception that Absoft's previous MPW based
FORTRAN compiler did not have "MacFortran" as part of its name
(it does) and took this as evidence that MacFortran-II was a
replacement for the MacFortran and MacFortran/020 compilers,
which, of course, do have the string "MacFortran" as part of
their product name. Then I blundered on and concluded (wrongly)
that since MacFortan-II had the name and was MPW based that the
non-MPW based MacFortran and MacFortran/020 were abandoned products.
Faulty logic based on bad data. GIGO eh? :-). Sorry.
Now on a related issue. Absoft reports that MacFortran II attains
3871 K Whetstones/sec on a MacIIci running a single precision Whetstone.
They report 1463 K Whets/sec for Language Systems FORTRAN V2.0. I get
1662 K Whets/sec with LSF2.0 on a IIci with all the tricks I know,
b/w, big system cache, no inits. Is there anyone out there who can
run this test (SWHET.F) on a IIci with a cache card. How about on
a IIfx? Has anyone been able to experiment with MacFortran-II or is
it too new? A 2x speedup just might bring a problem I have in mind
into the "doable" range on my IIci.
|From: john@cstreet.uu.net (John Poplett)
|Organization: C Street Software @ uunet!cstreet
> I am trying to find a good Fortran compiler that will run under
> XENIX on my 386 system; does anybody know pros and cons for
> the available compilers??
C Street Software resells 386/486 compilers from Silicon Valley
Software. I have used their compilers for years and can speak
for their quality.
SVS FORTRAN-77 derives from mature 32-bit compiler technology.
Silicon Valley Systems has also implemented SVS FORTRAN-77 on
the Motorola 680x0, the NS32000 and Motorola 88000 processor
architectures. The 386/486 implementation shares front end
language recognition and optimization components with its sister
implementations.
It complies with ANSI X3.91 - 1978 and Mil-STD-1753 and supports
extensions such as a double-precision complex data type, INTEGER*1,
INTEGER*2, a binary file type, value parameter passing, DO WHILE
and END DO language constructs and INCLUDE statements.
SVS FORTRAN-77 supports Hollerith in DATA and assignment statements
and in argument lists, hexadecimal I/O format control, and arrays
as format specifiers.
SVS FORTRAN supports the 80387 and the Weitek numeric coprocessors
It generates inline code for either.
The compiler received a very favorable review in the May 28, 1990
edition of Unix Today! where it was compared against LPI FORTRAN
and NDP FORTRAN 386.
In the report card, it received these marks (i.e. these are quotes
from the article):
Documentation
/ Pro Fine as guid or reference. Exhaustive descriptions
of code optimization schemes.
/ Con Some errors (missing appendix).
Features / Pro Forgiving of code kludges.
/ Con
Engineering / Pro Tour de force. Fastest code in shortest time.
Engineering / Con
Support / Pro Excellent. Direct access to developers.
Support / Con
Performance/Value
/ Pro Fast code. Lowest price.
/ Con
>From C Street, SVS FORTRAN-77 with driver, runtime support and printed
manuals is priced at $795.
Send us your US mail address if you want to be on our mailing list.
Otherwise, feel free to contact me by phone or email. Also, if you
email me some code specimens, C Street will compile them and send
you a synopsis of compile and run times (this offer also applies
to SVS C as well).
|From: pdy@sun.soe.clarkson.edu (P. D. Yapa)
|Organization: Clarkson University, Potsdam, NY
I purchased this Lahey compiler for $ 1200 ( quite expensive)
but it was really worth the money.
Compare with some other compilers that cost only around 300$.
They come on more than 10 disks, and you have keep inserting disks for
installation. Then you have to answer a zillion questions.
Lahey EM 32 came on a single disk( archived). Type install .It asks
only two questions ( actually you can even avoid the second question).
In a few minutes it is installed. The same goes with OS 386.
This part is really handy.
I spent a total of less than 15 minutes before I could get my programs
compiled and linked. Some of progs take up 3 meg ( estimate), I didn't
have any problem running on a 386 with 1+ 3 Meg memory.
compiling and linking is extremely fast. It has a debugger which looks
very good, but I haven't used that part extensively yet.
YES It was expensive, but SInce I could find the money It was well
spent. Hope that with more sales they will come down on price.
By the way you can buy the package from outside vendors for
under 1000 $. the new version also allows unlimited distribution
of run time copies of your fortran programs.