THE COMPUTER TRANSITION SYSTEMS REPORT
NOVEMBER 1997
CONTENTS
FORTRAN 77 to 90 UPGRADE OFFERSThe last chance for F77L users
ABSOFT FORTRAN NEWS
PERFORMANCE PLUS FOR FORTRAN - a math library for those who need faster execution
LF90 Version 4.0
PEST/PARALLEL PEST
REALWIN
FORTRAN 90, C++, & OBJECT ORIENTED F90
INTERACTER 4.10 and the next WINTERACTER
TECPLOT USERS
SHRINKER - compresses Windows executables
PERSONAL COMPUTERS - now and in the next year
DATA COMMUNICATION RATES
FORTRAN 77 to 90 UPGRADE OFFERS - The last chance for F77L users
Currently Absoft, Lahey, and Salford are all offering attractive prices to upgrade to their latest Fortran
compilers. To qualify you must quote the serial number of the product you are upgrading and include the
cover page of the manual with your order.
Absoft. Until 31 January 1998 those who have any Fortran compiler for INTEL based PCs may upgrade to
Pro Fortran for Windows for $540 ($820 if IMSL is included).
Lahey Until 30 Jan. 1998 those who have F77L, F77LEM/32, or any 32 bit Fortran for MSDOS or Windows
(Essential Fortran 90 and F excepted) may obtain LF90 for $895, ($675 academic) plus $10 shipping.
Salford Until 31 December 1997 those who have any Fortran compiler for INTEL based PCs may upgrade to
Salford's new FTN95 for DOS and Windows (3.1, 95, and NT) for $995 plus $10 shipping.
ABSOFT FORTRAN NEWS
At $540 Absoft Pro Fortran for Windows (PFW) is the most economical complete Fortran 90 compiler for
PCs. Educational users may purchase new at this price, no upgrade is required. The package includes a suite
of F90, F77 with many UNIX extensions and C/C++ compilers. All compilers are link compatible with each
other and Microsoft Visual C/C++ so code using all of them can be combined in one program. Absoft has
a new integrated development environment with a revised editor (available for download for previous
customers from www.absoft.com). New third party libraries for PFW include the Performance Plus math
library and DISLIN graphics. Absoft anticipates commercial release of their F90 for Linux by the end of 1997.
Macintosh Fortran. Fortner Research has decided to stop producing Fortran. They recommend that users
of their Language Systems Fortran compiler switch to Absoft's Pro Fortran for Macintosh, their flagship
Macintosh Fortran. There is a favourable review of the Absoft compiler in the July issue of MacWorld
magazine. Pro Fortran is OS8 compatible and a Rhapsody version is under development. The next release
of Mat Lab (5.2) will be compatible with Pro Fortran.
PERFORMANCE PLUS FOR FORTRAN (and C++)
Performance Plus for Fortran (PPF) from Dakota Software includes optimized and parallelized versions of
LAPACK 2.0, levels 1-3 of BLAS, FFTPACK, VFFTPACK, and LINPACK, plus additional capabilities not
included in these libraries. Users of other libraries can get significant speedup by merely linking PPF into their
applications rather than the subroutines provided by their current library (eg IMSL/Math or NAG libraries).
No source code changes are required to use PPF. Simply relink your application using the optimized and
parallelized subroutines in PPF rather than those in your current library. A partial list of capabilities includes
matrix and vector operations, linear systems, eigenproblems, Fourier transforms, matrix factorisations and
decompositions, multidimensional FFT, random number generation, Fortran 90 vector and array intrinsics, and
many others.
Examples of the speed enhancements PPF can deliver are given on the Dakota Software web site
(http://www.scisoft.com) eg a factor of 13 in MATMUL, a factor of 2 in matrix PRODUCT, MAXVAL, and
SUM. With PPF one can easily make effective use of multiple CPUs. On PCs this is done by means of the
PARALLEL environment variable. For example "set PARALLEL=2" would allow two cpus to operate. PPF
is available for most Fortran 90 compilers running on computers using Pentium, PentiumPro, SPARC, and
UltraSPARC processors. The price of Performance Plus for Fortran is $750 ($320 academic) if purchased
on its own or $325 if purchased at the same time as the Fortran compiler with which it is to be used.
LF90 Version 4.0
Accompanying this newsletter is the Fall 1997 issue of the Lahey newsletter, "Fortran Source". In it is an
extensive description of the new facilities in the latest release of their Fortran 90 compiler, LF90. The
principal new features are greater robustness under Windows NT, the capability of producing a single
executable which will run efficiently in either extended DOS or Windows95/NT, inclusion of a RealWin subset
and a WINTERACTER subset (WISK) for production of Windows user interface and graphics, inclusion of a
few Fortran 95 intrinsics, and new documentation. In future Lahey plans to release new versions of LF90
every 6 months. This means that their "Corporate Express" plan which provides free updates for a year is
now a good buy for those who use their LF90 frequently and always wish to have the latest release.
Version 4 is available now. Updates from earlier versions of LF90 are $340 from version 3.5, $430 from
version 3.0 and $530 from earlier versions. There is a $40 price surcharge on LF90 if diskette media is
needed.
PEST/PARALLEL PEST
PEST is a nonlinear parameter estimator that can be used with any existing model for data interpretation or
model calibration purposes. Because it communicates with a model using the model's own input and output
files, no alterations are required to the model. The user simply identifies numbers on model input files that
PEST can adjust, and numbers on model output files for which there are complimentary field or laboratory
measurements, and PEST tweaks the model inputs until the discrepancies between the identified model
outputs and measurements are minimized in the weighted least squares sense. For complex models with
large run times on a PC, parameter estimation time can be reduced enormously through the use of Parallel
PEST. Parallel PEST allows model runs to be distributed across a PC network. Hence it can be used in most
office environments. SENSAN, a sensitivity analysis tool, is also included in the PC version of PEST.
PEST has been used in most scientific and engineering fields including hydrology, biology, geophysics,
geotechnical, chemical, aeronautical, mechanical and civil engineering. The price of PEST is $650 for either
MSDOS or UNIX.
REALWIN
RealWin, a Windows GUI and graphics library, is now available for LF90, DEC Visual Fortran, and Microsoft
Powerstation. A test version which allows the testing of many RealWin facilities is provided with LF90
version 4. The full version of RealWin is $570 ($285 for PowerStation).
FORTRAN 90, C++, & OBJECT ORIENTED F90
A comparison of how well several UNIX and PC Fortran compilers handled a variety of object oriented
programs is presented on website http://www.cs.rpi.edu/szymanski. The EPC and IBM compilers compiled
all programs successfully. Absoft's new Pro Fortran for Windows gave the best result (one failure) amongst
the PC compilers. LF90 was the worst with five failures. Three of these (which were all due to a
disagreement on the interpretation of the F90 standard) have been fixed in version 3.50f. The other two
failures had the same cause "a one-in-a-million chance combination of characters in a continuation line". The
problem disappears if the continuation is moved one character to the left or right. This bug will be eliminated
in LF90 version 4.0b which is due to appear in Mid December.
Of considerable additional interest on the web site is information on using Fortran 90 to carry out object
oriented programming and a comparison of program execution speeds for programs written in C++ and
Fortran 90. As in all other direct comparisons that we have seen in which non trivial code is used programs
compiled with C++ run demonstrably slower than code compiled by Fortran 90 - usually by a factor of two.
TECPLOT USERS
Until 31 December 1997 Tecplot users who upgrade to version 7 will receive EUSS (maintenance) until
31/12/98 at no additional charge. This means they will obtain version 7.5 for free.
All users and potential users of Tecplot should find a visit of the recently overhauled Amtec web site
(http://www.amtec.com) worthwhile. On the site are a request for users to submit Tecplot application
stories, links to other sites where the use of Tecplot is illustrated, a suggestion box for user feedback, a
download facility for the Tecplot demonstration for the PC, examples of Tecplot displays, and general news.
SHRINKER
Shrinker is a utility which compresses 16 and 32 bit Windows executables. One user reported his LF90 .EXE
was reduced from 28 MB to less than 1 MB when he used Shrinker. An additional benefit was substantially
faster load time. Price inclusive of shipping is US$159. It may be ordered from Blink Inc, PO Box 29858,
Richmond, Virginia, 23242 U.S.A. fax (804) 784 2357 (http://www.blinkinc.com). A fully operational demo
version of Shrinker (it inserts an announcement in the compressed program advertising the fact the program
has been shrunk with a demo version of the product) can be downloaded from the web site.
PERSONAL COMPUTERS - now and in the next year
Speed of program execution is frequently very important to Fortran users. This article discusses current PC
hardware. It was initially prompted by unusual results reported by one of our LF90 customers who uses large
programs - tens of hours of execution time on the fastest of PCs and memory requirements of 100 MB or
more. Contrary to virtually all published results he found the best 266 MHZ Pentium II (PII) machines ran his
computationally intensive programs no faster than his 200 MHZ Pentium Pro (PP). Even more surprising he
found graphics intensive programs ran significantly more slowly on the PII than on the PP.
In what follows cpus are discussed first and then other hardware developments which should be of
interest to those who use personal computers for technical work. Much of the information here has been
derived from the Intel web site, the "Tech Section" and other articles in Computer Shopper (which frequently
is more up to date than other publications), the article on motherboards in the August 97 issue of Byte, the
SPEC website, and general reading. The subject tackled in this article is vast and the coverage is determined
more than it should by the author's interests and also by ease of locating information.
The topic has been divided into two major areas - cpus and motherboards. The CPU type is normally
thought to be most important in achieving high performance and will be discussed first - and probably more
exhaustively than other factors. However both motherboard design and memory type can greatly influence
how fast programs execute.
CPUs There are essentially 4 classes of Pentium cpu - the original Pentium, the Pentium with MMX, the
Pentium Pro, and the new much promoted Pentium II. Some of the major features of these processors are
shown on the following table.
| cpu | clock
internal/external |
cache
ext+instruc/data |
SPECfp
base95 |
SPECint
base95 |
| Pentium | 66/200 | 512+8/8 | 3.1 | 5.1 |
| Pentium MMX | 66/200 | 512+16/16 | 3.9 | 6.4 |
| Pentium Pro | 66/200 | 512+8/8 | 6 | 8.7 |
| Pentium II | 66/266 | 512+16/16 | 6.4 | 10.8 |
| manufacturer and cpu name | part number | clock (ext/int) | cache (ext+I/D) | SPECfp
base95 |
SPECint
base95 |
| DEC Alpha | 21164 | /500 | 2M+96+8/8 | 19.9 | 16 |
| HP PA | PA8000 | /180 | 1M/1M | 18.3 | 10.8 |
| HP PA | PA8200 | /200 | 2M/2M | 20.1 | 13.7 |
| IBM PowerPC | 604 | /333 | 1M+32/32 | 6 | 12.2 |
| IBM RS/6000 | POWER2SC | /160 | 32/128 | 22.4 | 7.1 |
| SGI | R10000 | 195 | 4M+32/32 | 17.4 | 8.7 |
| SUN | ULTRAsparc | 83/167 | 512+16/16 | 8.5 | 5.3 |
| SUN | ULTRAsparc | 100/300 | 2M+16/16 | 14.2?? | 10.3?? |
PCI based machines using the first three chips are available on the market although the Alpha is the only one
for which Windows is available. Some quite reasonably priced PCs based on the Alpha chip are appearing
in the U.S. One example is the Enorex UPC-500 - US$3750 for a 500MHz 21164 CPU with 1MB of level
3 cache, 32MB ram, 2.5GB 10ms EIDE drive, 1.44 MB floppy, 4 MB Matrox Millenium video card, 12x
CDROM, 400 watt power supply, Windows NT 4.0, and translation software to allow operation of native x86
code. The monitor is extra.
People frequently ask about MMX and whether Fortran compiler writers can use it to produce compilers
which generate faster program execution. The answer is no. MMX stands for Multi-Media Extensions.
There are essentially four components to MMX - 57 new instructions for operating on integer data, eight
additional 64 bit registers which MMX instructions only can utilize, four new data types for handling packed
data, and single instruction multiple data (SIMD) technology which allows 64 bits of integer data rather than
eight to be handled as a single entity. MMX also operates instead of floating point operations. There is a
50 clock cycle switching time required by the cpu to change from using the floating point to using the MMX
operations (and vice versa).
Two manufacturers, Cyrix and AMD, produce cpus which are plug compatible with the Intel Pentium
processors. Our testing shows the Cyrix 686 is considerably slower than the Pentium (see our May 1996
newsletter). We have not tested an AMD K6 and have not been able to locate any quantitative results.
Reviews typically report AMD K6 performance to be "within striking distance" of Pentium II counterparts. The
only "benchmark" results given by AMD and Cyrix for their processors are quite meaningless ones such as
Winstone. The SPEC site for 14 October 1997 does not list any results for either AMD or Cyrix processors.
In the October 97 issue of Computer Shopper it was reported that while the 233 MHZ K6 and PMMX
produced similar results on programs which depend primarily on integer operations when they tested two
applications (both games) which used a considerable amount of floating point operations the PMMX was 19%
faster than the K6 on one and 26% faster on the other. Cyrix does say that the floating point performance
of its new "Cayenne core" due for release in late 1998, will be substantially enhanced with x86 floating point
operations "capable" of being executed in a single operation.
Motherboards The principal motherboard features of interest to those who run technical software are bus
speed, bus design, the speed of memory, the speed of the cache external to the CPU, maximum physical
memory, the graphics bus, and built in I/O facilities.
It is the bus frequency which limits the speed which all components external to the cpu operate. The
most important of these for computationally intensive programs is, of course, memory. 66 MHZ is the
maximum bus clock for all current Intel processors. This limits data transfers to 528 Mbps. The slot 2 PII
will have a 100 MHz external memory bus. This will considerably improve performance since, given fast
enough memory parts, there will be a speed gain of 166% or more on operations which access the PC's main
memory. PCs using the Cyrix 686 are available now with a 75 MHz bus. Both Cyrix and AMD should soon
support bus clocks of 100 MHZ and more.
PC98. Intel and Microsoft are in the process of defining PC98, a minimum standard PCs should have in
1998. PC98 is, naturally, oriented toward the interests of these companies but since they play such a
dominant role in the personal computer market place they are worth noting. There are several classes of
PC98 machines - "consumer", "office", "mobile", "entertainment" and "workstation" with "consumer" generally
having the lowest requirements and "workstation" having the highest. Some of the principal requirements
of PC98 conforming hardware are
- 32 MB of ram, 64 MB per cpu compulsory for PC98 workstations.
- a fast graphics bus either 64 bit PCI or AGP. With Accelerated Graphics Port there is a fast direct
connection between system ram and the graphics system. The PCI bus is not used. AGP runs at 66 MHZ
with double clocking to provide a data transfer rate four times that of the 32 bit PCI.
- 66 mHz or 100 mHZ internal bus clock. DDR-SDRAMs which use both clock edges to transfer data, will
cope at 100 MHZ. These memory parts are due to appear next year.
- at minimum a 200 MHz PMMX or equivalent cpu. The minimum processor for workstations is a PP or PII
- a minimum of 256 K of level 2 cache, 512 K per processor for workstations
- at least one and preferably two USB (Universal Serial Bus) connectors
- one IEEE 1394 ("Firewire') serial port. Firewire is capable of peak transfer rates of 400MB/sec.
- ISA slots not recommended (after 1 January 1999 Microsoft says that it will not grant a Windows logo to
PC makers which include ISA slots)
- a sleep state where there is no perceived activity (eg fan noise etc) other than a status indicator light.
Recovery from sleep mode in 500 ms or less.
- provision for multiple monitors.
- recommend that PC98 workstations support multiple processors each with its own separate level 2 cache
- PC 98 workstations must be capable of being expanded to at least 1GB of memory
The "high speed" serial ports in most PCs today use the 16550 chip and are limited to 115 Kbps. In the
above list there are two new serial port types, USB and IEEE 1394. These may not be familiar to some
readers so a little explanation is probably in order. USB allows up to 127 devices to be plugged into a
computer. It is capable of hot swapping of devices and auto reconfiguration. The bandwidth is 12 Mbps.
It is intended that USB be used for smaller connections such as modest speed storage devices, mice,
joysticks, keyboards, video monitors, hand scanners, and printers while IEEE1394 (also known as Firewire),
which provides substantially greater transfer rates - 400Mbps, will be used for high end equipment such as
fast mass storage devices, DVD (digital video drive), cameras and VCRs. Firewire is fast - faster than SCSI -
inexpensive and expandable. The Firewire cable, which can be up to 3 metres long, hops from one peripheral
to the next and can provide up to 1.5 amps of power. It is hot pluggable and automatically configures itself
and assigns addresses. You never need to set switches. It supports both arbitrated asynchronous
communications and isochronous (real time) messages. The latter are a requirement for full motion video.
DATA COMMUNICATION RATES
Data Communication is not a Fortran topic and we do try to limit this newsletter to Fortran topics. However
the Internet is such a useful source of information for everyone that some information on internet access
methods should be of interest. Most people use modems for their data communication needs. 56 K baud
are the fastest modems available at present. However since there is no 56 K standard the send and receive
56 K modems need to be matched. The practical maximum modem speed is thus 33.6 K and even then the
quality of telephone lines often means that a real speed of 24 K is frequently all that is achieved. ISDN at
128 K provides faster operation but a special telephone line (costly) is required. Even more costly is a
dedicated 1000 K T1 line. These are usually used only by ISP providers to connect into the main internet
network.
ADSL (Asynchronous Digital Subscriber Line) technology uses ordinary telephone lines to achieve
download transfers at high speed - 6000 K is practical now. Upload transfers are slower but still quite good
(64 K) compared to the alternatives. ADSL requires the end user to have an ADSL modem which is
compatible with the one the phone company uses at its switching office. Thus for ADS one probably must
use the phone company for Internet service. A major drawback of ADSL is the requirement for short line
lengths - 5 km max from the user to the telephone company switch system.
The phone companies in Australia are not working on ADSL but both Opts and Telstra have been laying
fibre optic cable and so could make Hybrid Fibre and Coax (HFC) connections available and indeed both
companies are trialing HFC. With HFC data rates going to user are much slower than when the user transmits
data. For the current Telstra set up these rates are 5000 K and 700 K respectively. Most end users should
be happy with this since they tend to download much more than they upload. A detailed article on Telstra's
present HFC system appeared in the October 1997 issue of Australian Communications.
For several years there has been the ability to send data at 1000 K using wire that virtually every house
has - the ordinary power lines. Commercial implementation of this technology is now occurring in Europe.
In the U.S. yet another data transmission technology, "direct broadcast satellite", is available. It provides
400 K download rates but no upload (you have to use an ordinary modem).
Updated 5 November 1997