Top Banner
Software Overview Environment, libraries, debuggers, programming tools and applications Jonathan Carter NUG Training 3 Oct 2005
17

Software Overview Environment, libraries, debuggers, programming tools and applications

Mar 16, 2016

Download

Documents

doli

Software Overview Environment, libraries, debuggers, programming tools and applications Jonathan Carter NUG Training 3 Oct 2005. Overview. Environment Libraries Debuggers Programming Tools Applications. Environment. Suse Linux Linux Networx HPC software stack Pathscale compilers - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Software Overview Environment, libraries, debuggers, programming tools and applications

Software OverviewEnvironment, libraries, debuggers, programming tools and applications

Jonathan CarterNUG Training3 Oct 2005

Page 2: Software Overview Environment, libraries, debuggers, programming tools and applications

2

Overview

• Environment• Libraries• Debuggers • Programming Tools• Applications

Page 3: Software Overview Environment, libraries, debuggers, programming tools and applications

3

Environment

• Suse Linux• Linux Networx HPC software stack• Pathscale compilers• PBS Pro Batch System• GPFS HOME and SCRATCH file

systems

Page 4: Software Overview Environment, libraries, debuggers, programming tools and applications

4

Environment (cont)

• Passwords– NIM password, use NIM to change

• Shells– Default shell is tcsh, to change use NIM

interface• Startup files

– Read-only, use <name>.ext if you want to add customizations

– fixdots command will repair files

Page 5: Software Overview Environment, libraries, debuggers, programming tools and applications

5

Environment (cont)

• Access to libraries, tools and applications is controlled via modules

• Number of modules reduced compared with seaborg, since we only have 64-bit ABI and fewer software versions

Page 6: Software Overview Environment, libraries, debuggers, programming tools and applications

6

Libraries

• Math– ACML, fftw, NAG, parpack, scalapack,

superlu, (imsl, petsc)• I/O

– hdf, hdf5, netcdf– MPI I/O available via MVAPICH

• Visualization– ncar

Page 7: Software Overview Environment, libraries, debuggers, programming tools and applications

7

Libraries (cont)

• ACML– Optimized for AMD processors– BLAS 1-3, FFT and LAPACK– “fast” math functions (log is ~90 cycles

instead of ~120)– “vector” math functions, e.g. vrda_log(n, x, y) is roughly twice as fast as log at n>20.

Page 8: Software Overview Environment, libraries, debuggers, programming tools and applications

8

Libraries (cont)

• Fortran I/O– Intel/AMD hardware is little-endian,

Power is big-endian, so binary data is incompatible

– pathf90 offers several features to write binary data in big-endian format

Page 9: Software Overview Environment, libraries, debuggers, programming tools and applications

9

Libraries (cont)

• pathf90 options– -byteswapio writes all data in format opposite

to that of native processor– -conversion [native, little_endian, big_endian]– assign commandFILENV=.assignexport FILENVassign –N mips u:10

Page 10: Software Overview Environment, libraries, debuggers, programming tools and applications

10

Libraries (cont)

• Many libraries are linked at runtime, so LD_LIBRARY_PATH must include a path to each library linked against

• Modules environment takes care of this provided you load at compile time and at run time

Page 11: Software Overview Environment, libraries, debuggers, programming tools and applications

11

Debuggers

• Totalview and gdb available for serial applications

module load totalviewtotalview progname [corefile]

gdb progname [corefile]

Page 12: Software Overview Environment, libraries, debuggers, programming tools and applications

12

Debuggers (cont)

• Totalview and gdb are coming for parallel applications

• gdb opens xterm per processor

module load totalviewmpirun –tv –np procs progname

mpirun –debug –np procs progname

Page 13: Software Overview Environment, libraries, debuggers, programming tools and applications

13

Debuggers (cont)

• Generating core files– Serial applicationsulimit -S -c unlimited– Parallel applications, make shell script

progname.sh and run this via mpirun (this problem will be resolved by PBS bugfix)

#!/bin/bashulimit -S -c unlimitedexec progname

Page 14: Software Overview Environment, libraries, debuggers, programming tools and applications

14

Debuggers (cont)

• Useful Pathscale compiler options– Use –g flag to help debugging– Use –trapuv to set uninitialized (local,

automatic, alloca(); not Fortran allocatable) variables to NAN

Page 15: Software Overview Environment, libraries, debuggers, programming tools and applications

15

Debuggers (cont)

• Further information on Totalview– Etnus tutorial

http://www.etnus.com/TotalView/started/getting_started.html

– LLNL tutorial – http://www.llnl.gov/computing/tutorials/totalview/

Page 16: Software Overview Environment, libraries, debuggers, programming tools and applications

16

Programming Tools

• AMD CodeAnalyst – suite of tools to optimize code for Opteron: coming soon

• ipm – mpi overhead and performance report

• papi – interface to hardware performance counters

• tau – suite of tools enabling performance analysis of application codes

• valgrind – multiple tools to check memory use, profile cache use, detect data race conditions in threaded applications

Page 17: Software Overview Environment, libraries, debuggers, programming tools and applications

17

Applications

• Chemistry & Materials Science– GAMESS, Gaussian, Gromacs,

MOLPRO, NWChem, NAMD, VASP• Math

– maple, matlab, mathematica • Visualization

– idl, vmd• Other

– Subversion (client)