next up previous contents index
Next: J.2 Future Up: J.1 Some present problems Previous: J.1.3 File size -   Contents   Index

J.1.4 Some shortcuts and hints

$\bullet$ You can set $NEMO to a 'universal' path as "/usr/nemo" and make a symbolic link of this file to the actual physical location of nemo. In a file cluster system the actual location of NEMO might be on a common fileserver. Normally you have to become superuser to make the link
        
                # cd /usr
                # ln -s /usr/guinness/nemo
This means that your .cshrc can always keep the same
        
              setenv NEMO /usr/nemo
and have the symbolic link take over the work for you.

$\bullet$ The use of FLOAT_OPTION is encouraged on the SUN3, because it allows a flexible change from a system with different floating point hardware. Perhaps the CFLAGS in most Makefiles should have the inclusion CFLAGS=$(FLOAT_OPTION) for compatibility reasons with other-than-SUN systems??? Beware that only the NEMO variable is exported to a Makefile (but see below)

$\bullet$ When, while trying to compile, the cc compiler does not seem to find the NEMO include file, it is probably an indication that the cc in $NEMOBIN has not the proper flags. In particular, some versions of the cc-compiler do not support the -L flag (e.g. Ultrix, Sun UNIX 4.2 Release 3.1FCS) Make sure the 'cc' and 'make' are properly placed in the $NEMOBIN.

$\bullet$ On a SUN3 floating point intensive programs will run a lot faster when the inline floating point libraries are used. Instead linking with the standard math library (-lm), link it with /usr/lib/f68881.il or /usr/lib/ffpa.il. The fortran TREECODE only gains about 5% in speed, but floating point intensive programs can gain up to 30% in speed.

$\bullet$ The best run-time performance from SUN4 compilers for compute-bound applications is usually obtained from some combination of the following compile-time options:
     
     Fortran 1.3.1:
             -O4 -cg89 -libmil -dalign -fnonstd -Bstatic
     C 1.0:
             -O4 -cg89 -libmil -dalign -fnonstd -Bstatic -fsingle
These are discussed in the Numerical Computation Guide which accompanies C 1.0 and Fortran 1.3.1. Also the default swap and /tmp partitions supplied by SunOS are often insufficient to fully optimize some large programs. Use swapon(8) in the first instance and -temp=... compile option, described in cc(1) and f77(1), in the second instance.


next up previous contents index
Next: J.2 Future Up: J.1 Some present problems Previous: J.1.3 File size -   Contents   Index
(c) Peter Teuben