Download presentation
Presentation is loading. Please wait.
Published byLesley Ball Modified over 8 years ago
1
Defining the Competencies for Leadership- Class Computing Education and Training Steven I. Gordon and Judith D. Gardiner August 3, 2010
2
Introduction Educational competencies being developed under a contract from TeraGrid EOT Leadership-class computing –Petascale, exascale, and beyond –“The biggest computing of the day” Focused on skills common to all areas of computational science Builds on results of a 2009 survey 2
3
Overview Six major categories of competencies 3
4
Prerequisites Students should have introductory computational science skills (undergraduate level) –Introduction to modeling and simulation –An introductory programming class –Numerical methods –A discipline-oriented modeling and simulation course (Computational biology, chemistry, engineering, environmental science, physics, etc.) –Electives in parallel computing or scientific visualization 4
5
Draft Competencies We have created the first draft of competencies based on survey results and feedback from a small number of colleagues Will present the major categories of the competencies and their overall intent today Would like you to contribute your ideas by reviewing and commenting on the competencies through an online survey Will also provide you the opportunity to participate in future discussion groups on this topic 5
6
Example Competency/Questions 6
7
Computer Programming and Software Development Skills Programming skills –Choice of programming language –Write high-quality, readable code –Understand and add to existing code Data types and structures, object-oriented design Software engineering best practices –Requirements, design, source control, testing Basic debugging and serial program optimization Verification and validation principles 7
8
Advanced Programming and Parallel Programming – Traditional HPC Skills Parallel concepts and algorithms –SIMD, MIMD, SPMD –Data and functional parallelism –Concurrency issues (how to handle them properly) Application scaling Memory models –Shared and distributed –Memory hierarchy, cache MPI, OpenMP, hybrid MPI-OpenMP Load balancing 8
9
Advanced Programming and Parallel Programming – Emerging Topics Frameworks for large-scale parallel code development Many-core programming –CUDA, OpenCL Partitioned Global Address Space (PGAS) programming Data intensive computing Understanding of fault tolerance 9
10
Numerical Methods and Algorithms Number representation and numerical errors Mathematics & algorithms for scientific computing –Dense & sparse matrix representations, solvers –Eigenvalue techniques, interpolation & approximation –Fast Fourier transform (FFT) –Structured & unstructured grids Monte Carlo methods Multi-scale modeling How to match algorithms, applications, architectures 10
11
Numerical Libraries Familiarity with high quality libraries in student’s area of study Ability to use libraries effectively Ability to install an open-source library in their own directory 11
12
Debugging, Profiling, and Optimization Tools Debugging parallel programs –Parallel debuggers –Understanding of how concurrency issues manifest as bugs, plus how to find and correct them Profiling and performance improvement –Tools (e.g., gprof, TAU, Oprofile) –Understanding factors that affect parallel performance Benchmarking techniques –Measuring, interpreting, and reporting performance and speedup 12
13
Data Management Automating HPC workflows with scripts or special tools Efficient file formats Parallel I/O File compression Metadata 13
14
Scientific Visualization Concepts and practicalities of visualization Visualization tools and APIs Surface and volume rendering Bottlenecks to visualization Remote visualization 14
15
Feedback Solicited from the HPC Community Comments from this audience – have we missed any major categories? On-line survey available now Several virtual meetings planned with a representative cross-section of researchers 15
16
Take the Survey Please share your opinions by taking the survey www.surveymonkey.com/s/teragrid_competencies Will share the results in a series of online discussions –Refine the competencies –Come to consensus on the basic skills –Begin to connect that information with possible training and education programs 16
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.