- Program
jacobi can be
run without any change
whatsoever, in parallel, on the SP.
- Connect to one of the SP nodes that runs AFS.
These are
sp17 through sp-24,
and sp-40 through sp-43.
- Place the following directories
/afs/$AFSCELL/@sys/usr/afsws/bin:/afs/$AFSCELL/@sys/usr/afsws/etc:\
/afs/$AFSCELL/@sys/gnu/bin:/afs/$AFSCELL/@sys/HDF/bin:\
/afs/$AFSCELL/@sys/teTeX/bin:\
after /usr/bin in
your command search PATH, where
export AFSCELL=ovpit.indiana.edu
Also place
/afs/$AFSCELL/@sys/usr/afsws/man:\
/afs/$AFSCELL/@sys/gnu/man:/afs/$AFSCELL/@sys/teTeX/man:\
after /usr/man in
your MANPATH.
- You must
klog into AFS before being able to do
anything else with it, even to read AFS man pages.
- Copy
/afs/ovpit.indiana.edu/common/www/htdocs/gustav/jacobi.f90
to your working directory and rename it to jacobi.f.
- Compile this program with the HPF compiler as follows:
gustav@sp17:../jacobi 13:45:55 !219 $ xlhpf90 -o jacobi jacobi.f
** jacobi === End of Compilation 1 ===
1501-510 Compilation successful for file jacobi.f.
gustav@sp17:../jacobi 13:46:12 !220 $
- Copy a LoadLeveler file for this job:
/afs/ovpit.indiana.edu/common/www/htdocs/gustav/jacobi.ll
to your working directory. This is what this file
should look like:
gustav@sp17:../jacobi 13:46:12 !220 $ cat jacobi.ll
# @ job_type = parallel
# @ environment = COPY_ALL; MP_EUILIB=us; MP_INFOLEVEL=6
# @ requirements = (Adapter == "hps_user")
# @ min_processors = 4
# @ max_processors = 8
# @ output = jacobi.out
# @ error = jacobi.err
# @ executable = /usr/bin/poe
# @ arguments = jacobi
# @ notification = always
# @ class = pa
# @ queue
gustav@sp17:../jacobi 13:46:55 !221 $
- Submit the job for parallel execution:
gustav@sp17:../jacobi 13:47:47 !223 $ llsubmit jacobi.ll
submit: The job "sp17.434" has been submitted.
gustav@sp17:../jacobi 13:48:22 !224 $
- After a few seconds, depending on how busy is the
system, you should receive mail notification about the
job. You will also find files
jacobi.out and
jacobi.err in your working directory.
- The file
jacobi.err contains diagnostics that
show the program running in parallel on between 4 to
8 nodes, depending on how many the system could have
given you at the time:
gustav@sp17:../jacobi 13:51:51 !232 $ head -12 jacobi.err
INFO: DEBUG_LEVEL changed from 0 to 4
D1<L4>: ./host.list file did not exist
D1<L4>: mp_euilib = us
D1<L4>: node allocation strategy = 1
D1<L4>: Using css0 as euidevice for User Space job
ATTENTION: 0031-408 6 nodes allocated by LoadLeveler, continuing...
INFO: 0031-119 Host sp20.ucs.indiana.edu allocated for task 0
INFO: 0031-119 Host sp41.ucs.indiana.edu allocated for task 1
INFO: 0031-119 Host sp43.ucs.indiana.edu allocated for task 2
INFO: 0031-119 Host sp23.ucs.indiana.edu allocated for task 3
INFO: 0031-119 Host sp42.ucs.indiana.edu allocated for task 4
INFO: 0031-119 Host sp17.ucs.indiana.edu allocated for task 5
gustav@sp17:../jacobi 13:52:01 !233 $