The UnderWorld CheatSheet page.
The aim of this page is to serve as a CheatSheet for
UnderWorld users to either bookmark in their browser or print out and stick on the wall.
If you have good tips or tricks, commonly used commands or pieces of advice and you think it would be good to broadcast these to the
UnderWorld community please add it to this page.
Some more ideas ...
- options that make the code run fast
- more handy aliases
- command line commands
- parallel debugging on valgrind
- useful svn commands, including svn update -r "{" 2007-05-18 "}"
| Commands to give with the execution of Underworld | What they do |
-pc_type lu -ksp_type preonly | exact solve, instead of iterative. Much faster but can only be used in serial |
--interactive=True | visualise output as it goes, hit 'h' during a graphic to see help option |
--dim=2 | set the dim equal to 2, will also override what's in your input xml. It can be handy to quickly override options via the commandline, especially if you're running scripts |
| CheckPointing commands | What they do |
<param name="dumpEvery"> 1 </param> | |
<param name="checkpointEvery"> 2 </param> | create a set of checkpointing files every so many (e.g. 2) timesteps - set to zero (0) to disable checkpointing |
<param name="restartTimestep"> 5 </param> | restart the model from checkpointing files located in the nominated output directory which were created at this many (e.g. 5) timesteps |
| Developer Things | |
mpirun -np XXX -dbg=gdb ./Underworld !InputFiles/PleaseWork.xml -p4norem | runs a parallel debug run of ./Underworld InputFiles/PleaseWork.xml using XXX processors. -p4norem is used for a proc per terminal. |
| Handy Commandlines commands | |
locate | mini file system database, that make file searching easy |
grep <i>string</i> <i>file</i> | searches inside file for the string |
du * -sh | most painless way to get an idea of the size of files and directories |
| Modules on Clusters (edda and apac) | |
module list | lists the current modules you have loaded |
module avail | lists the modules available to use on this cluster |
module display underworld | lists all environment variables and their paths for the latest UnderWorld release module |
module purge | removes all modules currently loaded - do not use on tango |
module load snark | will load the Snark3.0.2-p1 module (apac and edda) |
module load underworld | will load the latest UnderWorld release module (edda and tango only) |
module load petsc | will load the petsc module. Note any modules petsc depends on will also be loaded, in this case mpich |
| Pbs Queues on Clusters (edda and tango) | |
qstat -n | grep ${USER} | often aliased as "jo": lists one's submitted jobs and their status |
showq | lists jobs in pbs queue, with jobid, username, processors, walltime and queuetime |
qstat | lists jobs in pbs queue, with jobid, queuename, username, time used, status and queuename |
| Key Env Vars (examples in bash) | |
export MPI_DIR= | location of the mpi (mpich1, mpich2 or OpenMpi) installation directory |
export PETSC_DIR= | location of PETSc installation directories (contain PETSc libs) |
export PETSC_ARCH= | architecture of your PETSc installation |
export PATH= | location of each of your mpi implementation and PETSc executables (set for each one separately) |
export LD_LIBRARY_PATH= | location of each of your mpi implementation and PETSc libraries (set for each one separately) |
export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH | location of your mpi implementation and PETSc _dynamic libraries) (set for each one separately) (macs only) |
export LIBFAME_DIR=/usr/local/ | where the libfame libraries and include files are located in the filesystem - normally it's in /usr/local |
export X11_INCDIR= | sometime required if X11 (interactivity) can't compile |
export PNG_DIR= | location of your libpng files (for creation of output images) |
| gLucifer Visualisation Tips | |
<param name="height">400</param> | window height setting must be a multiple of 16 |
<param name="width">800</param> | window width setting must be a multiple of 16 |
Interactive Visualisation Controls
In interactive mode, each image can be displayed on the screen as it is created, and manipulated with the keyboard and mouse to view the image from different angles.
Note: an image and all those after it will be saved according to the camera view set when you close the interactive window. To avoid this, when you have finished trying out the controls, point to a viewport with your mouse and press the "r" key on your keyboard to reset the camera for the viewport - repeat for each viewport before closing the window or advancing to the next timestep.
The following controls are listed in the terminal window each time an image is displayed on the screen:
Mouse Interaction:
- Left Button: Rotate camera around model.
- Middle Button: Zoom camera in or out of the model.
- Right Button: Move camera's focal point (currently unavailable).
Keyboard Interaction:
- escape: Exit out of program.
- q, space: Close window and continue running program.
- h: Print this help message.
- i: Toggle Window Interactivity.
- r: Reset camera for viewport under cursor.
- s: Output information for camera associated with viewport under cursor.
- [: Zoom out with camera associated with viewport under cursor.
- ]: Zoom in with camera associated with viewport under cursor.
--
JulianGiordani - 06 Jul 2007
to top
Software.CheatSheet moved from Software.CheetSheet on 21 May 2007 - 05:11 by JulianGiordani -
put it back