MACHINES -- BlockSolve95 Machines on which BlockSolve95 v3.0 has been tested --------------------------------------------------------------- *** This file lists the machines and compilers on which *** BlockSolve95 has been tested. We give some information *** and problems relavent to these various machines. --------------------------------------------------------------- Machine: Sun Sparc Workstations running 4.1.3 (PETSC_ARCH=sun4) C compiler: gcc (version 2.7) C++ compiler: g++ (version 2.7) Notes: This is the only machine for which we have tested that the C++ version works. --------------------------------------------------------------- Machine: IBM RS6000 running AIX 2.3), including IBM SP (PETSC_ARCH=rs6000) C compiler: xlc (version 1.3.0.33) Problems: Early versions of MPICH had a bug that will result in the program examples hanging. You should be using the latest version of MPICH (at least mpich-1.0.12). Notes: Starting jobs varies from machine to machine. At ANL, mpirun is *very* slow because of the scheduler. PBX is used at Langley; it is quite fast. Other machines may require running programs directly from "poe" instead of "mpirun". Communication: To get any performance you must use UserSpace not IP. This is set by the environmental variable MP_EUILIB, (ie, MP_EUILIB=us, not, MP_EUILIB=ip). Performance is much better better using the "no polling" option, (ie, mpirun -nopoll) or (MP_CSS_INTERRUPT=YES). Note that in include/BSdepend.h, NO_BLOCKING_SEND is defined. The message-passing on the SP (MPL) does not allow blocking sends to be used in BlockSolve95 (without deadlock) so we use asynchronous sends on this machine. --------------------------------------------------------------- Machine: 32 bit SGI running IRIX 5.3 (PETSC_ARCH=IRIX) C compiler: cc (version unknown) --------------------------------------------------------------- Machine: 64 bit SGI machine running IRIX 6.1+ (PETSC_ARCH=IRIX64) C compiler: cc (version unknown) Linking: The fortran library (FS_LIB) we are linking to has a routine named "main.o" which results in the warning (but no problem in running the programs): ld64: WARNING 85: definition of main in master0.o preempts that definition in /usr/lib64/mips4/libftn.so. Notes: There is some problem with using level-2 optimization; currently the file bmake/IRIX64/IRIX64.O is using "-O1" not "-O2". Note on the Origin2000, using the SGI implementation of MPI (really done for the Power Challenge) does not always seem to work. Should use MPICH for now. --------------------------------------------------------------- Machine: HP running UX version 9.01 (PETSC_ARCH=hpux) Local Machine: Our machine is a 9000/715. C compiler: cc (version unknown) Notes: The PETSc folks claim you should use Gnu make (gnumake) rather than the native make on this machine. To switch to using gnumake edit the file bmake/hpux/hpux and define OMAKE to be the path and name of gnumake. ----------------------------------------------------------------- Machine: Convex Exemplar running HPUX version 9.03 (PETSC_ARCH=hpux) C compiler: /bin/cc (version unknown) Very little testing is done. --------------------------------------------------------------- Machine: Sun Sparcstations running Solaris 5.3 (PETSC_ARCH=solaris) C compiler: cc (version 3.01, we think) Notes: ----------------------------------------------------------------- Machine: Cray T3D (PETSC_ARCH=t3d) C compiler: cc Notes: the interface to the Fortran BLAS is difficult on this machine because of the problem of passing strings to Fortran. Also, note that the BLAS routines use the single precision interface (eg, SGEMV instead of DGEMV) even though we are using C doubles (8 bytes). This explains all the weird stuff in include/BSsparse.h relating to the t3d. --------------------------------------------------------------- Machine: Paragon running Release 1.0.4 Server 1.3 R1_3 (PETSC_ARCH=paragon) C compiler: icc (Version R5.0.2) Notes: Using the paragon is rather difficult because it doesn't really seem to have a working UNIX yet... One has a great deal of trouble compiling on the Paragon. You will probably see (at some time) the random error: crabcake% make -e BS_DIR=/ump/hpcc/home05/bsmith/BlockSolve95 BOPT=g all sh: 2555969 Memory fault - core dumped *** Exit 139 (ignored) (1/1/96) To make on the paragon, one seems to have the following alias in your .cshrc file: alias make make PETSC_ARCH=paragon -e BS_DIR=/ump/hpcc/home05/bsmith/BlockSolve95 To make, you must use: make ACTION=libfast ..., ACTION=lib doesn't work. To run on the paragon use: pexec "/ump/hpcc/home02/keyes/mpich/bin/mpirun -np 64 grid5.paragon 4 4 4 8 8 8 0 10 1 0 0 1 1" -sz 64 In the examples directory, the script "run.paragon" will run the BlockSolve95 examples (after setting the location of mpirun correctly). --------------------------------------------------------------- Machine: DEC alpha running OSF of unknown version (PETSC_ARCH=alpha) C compiler: cc (version unknown) Notes: No recent information, as we do not currently have acces to an alpha. Notes from PETSc: 1) If using native "make" (not needed for gnumake) - Must set environmental variable PETSC_DIR and run make with -e option. - Cannot use make lib must use make -e libfast --------------------------------------------------------------- Machine: IBM PC running Linux, Version 1.2.3? (PETSC_ARCH=linux) C compiler: gcc (version unknown) We haven't tried this machine yet. --------------------------------------------------------------- Machine: IBM PC and compatibles running freeBSD 1.1.5.1 (PETSC_ARCH=freebsd) C compiler: gcc (version 2.4.5) We haven't tried this machine yet. ---------------------------------------------------------------