80 likes | 89 Views
Explore programming API's (compilers, PVM, MPI, OpenMP) and programming tools (debuggers, performance tuning) for high performance computing. Discuss the current status, future opportunities, and available options.
E N D
ProgrammingEnvironment David N. Lombard MSC.Software, HPC January 10, 2002
From 0th Meeting • Programming API’s (eg. Compilers, PVM, MPI, OpenMP) • OpenMP - used for on-a-node SMP programming. Not open source. We could go with the demo version of the PGI OpenMP compiler on the “disk”. • Compilers - Must work with MPI and PVM. EGCS plus commercial compilers (PGI, KAI, Intel, Compaq, etc).
From 0th Meeting(cont’d.) • Programming API’s (eg. Compilers, PVM, MPI, OpenMP) • Message Passing - MPI and PVM. • This exposes the interconnect. • Which MPI? MPI-LAM or MPIch? Do we have to pick one? If the mpi.h files are compatible, we can probably switch between different MPI shared libraries without changes to application binaries. • MPI-lam has some MPI-2 and true MPMD support.
From 0th Meeting(cont’d.) • Programming tools (eg. Debuggers, performance tuning). • Debugger - What open source debugger are people using? Printf. Totalview is a defacto standard parallel debugger --- but its not open source. We could go with a demo version on the “disk”. • performance monitoring - upshot, MPICL, ?
Current Status • Programming API • gcc et al are bound to the distribution. • Freely redistributable OpenMP-capable compiler not available. Intel? • In addition to MPICH and PVM, LAM/MPI was added. • No support for application-layer networks in parallel libraries.
Current Status(cont’d.) • Progamming Tools • TotalView not freely redistributable. • ddd • Nice tool. • Open source • No parallel support, but, this could be an opportunity for OSCAR. • Performance tools as delivered by MPICH, PVM, and LAM/MPI.
Future • ddd • Integrate parallel library tools to ddd? • Message passing trace? • Intel Compiler (OpenMP) • Will this ever be freely redistributable? • PGI • Commercial. Reduced version?
Future(cont’d.) • Atlas • Build on actual host v. multiple packages. • Redistribution? • What else?