Whenever any problems occur during installation or executing EGO, please have a look at the file readme.txt, which provides detailed and updated information to some known problems.
To install EGO do the following:
For PARIX you have to set the environment variable PXSTACK to 1500000, which you may include to your .login-file. All calls to PARIX (e.g., Compiler, program start) are done via the shell script ppx, which comes with PARIX. This shell script manages all other setup for PARIX automatically.
The shell-script aimk sets the environment variable PVM_ARCH which
determines the type of the computer you use (e.g. SUN4, ALPHA, SGI5, etc.)
automatically and starts gmake for compilation.
If you want to compile for a different architecture (e.g., PARIX and not SUN4) you can specify this as a command line option:
aimk -sys PARIX
or
aimk -sys PVM
In addition you can pass all the standard make flags, e.g.:
aimk CC=gcc CFLAGS=-O2
to use gcc and optimization level 2.
The makefile (Makefile.aimk) tries to do a decent job in assigning
the correct compiler and flags, but sometimes you might have to help a bit.
If you compile EGO on a hardware platform not yet supported, please let us
know which compiler, flags, etc., you used and we will incorporate it into
the makefile. The currently supported platforms are listed at the top of
Makefile.aimk which looks like:
######################################################################### # INFORMATION: # set SYS from the command line like # aimk [-sys <value>] [VAR=VALUE <goals>] [<goals>] # to express what you want. # Possible <value>s are: # SEQ sequential one node program # SEQ_NANO sequential one node program on the PARIX NanoKernal # SEQ_SP2 sequential one node program for the SP2 # SEQ_DOS sequential one node program for DOS/WIN95/WINNT (gcc) # PVM parallel PVM program on workstation cluster # MPI parallel MPI program on workstation cluster # PARIX parallel PARIX program on Parsytec system # PPCPVM parallel program under PVM on Parsytec system ...
The object files and the executable files of EGO and all auxilliary programs
will be written to subdirectories named like the machine type on which the
compiler was running (e.g., $(HOME)/ego/SUN4/, $(HOME)/ego/ALPHA/
, etc.).
The executables are also copied to
$(HOME)/pvm3/bin/<machine-type>.
There are two executable files for PVM named ego (executable for master-task)
and node (exectubale for the slave tasks).
There is only one executable ego.px for PARIXand for MPI. As the PARIX compiler
is a cross compiler running for instance on a Sun workstation, ego.px is
located in the correspodning directory.
Also one executable, named ego.<machine-type>, is created for MPI.
The filename of the sequential version of EGO is ego_seq.
If you want to compile only EGO
for a run on a PowerXplorer excluding the auxilliary programs you have to type
aimk ego.px
The utility programs which are distributed with EGO are not parallelized, but run sequentially in any standard UNIX environment. These utility programs usually are compiled through the makefile for the sequential EGO version (aimk). You don't need PVM for these utility programs, but the makefile copies the executables to the directory pointed to by PVM_ROOT. Thus you must have a directory $(HOME)/pvm3/bin/<machine-type>, even if you don't use PVM. If such a directory does not exist, it will be made for you.
If you call any of these utility programs without parameters, the program prints out detailed explanations. As the number of utilities is still growing, refer to the file utilities.txt for the actual list of available utility programs included to your current copy of EGO. Some important utility programs are listed below: