teaching courses in scientific computing 30 september 2010 roger bielefeld director, advanced...
TRANSCRIPT
Teaching Courses in Scientific Computing
30 September 2010
Roger Bielefeld
Director, Advanced Research Computing
FINDING THE FIT BETWEEN HPC AND ACADEMICS
THREE MATH COURSES AT CWRU
CWRU Math course(minimally aligned with HPC)
MATH 330: Introduction to Scientific Computing An introductory survey on scientific computing from
principles to applications. Topics include solution of linear systems and least squares, approximation and interpolation, solution of nonlinear systems, numerical integration and differentiation, and numerical solution of differential equations. NEW LAST FALL
CWRU Math course (somewhat aligned with HPC)
MATH 331: Intro to Parallel Scientific ComputingDesign and implementation of parallel computational
algorithms. The course will be developed in conjunction with the High Performance Computing Cluster at CWRU. We envision that this course will provide students the knowledge and skills required to embark on research projects that involve parallel computations. The course will have a hands-on training component related to learning how to write efficient parallel code. NEW THIS FALL
CWRU Math course(minimally aligned with HPC)
MATH 473: Intro to Mathematical Image Processing and Computer VisionIntro to fundamental mathematics techniques for image processing and computer
vision for upper level undergraduate and graduate students in math, sciences, engineering and medicine. Topics include image denoising, contrast enhancement, image compression, image segmentation and pattern recognition. Main tools are discrete Fourier analysis and wavelets, plus some statistics, optimization, calculus of variation, and partial differential equations. Students gain a solid theoretical background in IPCV modeling and computing, and master hands-on application experiences. Students will gain a clear understanding of classical methods, which will help them develop new approaches for imaging problems arising in a variety of fields. Prerequisites: some coursework in scientific computing and ability to program in a language such as Matlab or C/C++. NEW THIS FALL
Other CWRU courses(potential alignment with HPC)
EECS 466: Computer Graphics
MATH 431, 432: Introduction to Numerical Analysis
WHAT ARE THE OBSTACLES AND CHALLENGES?
Partnering with an academic department
CWRU EECS department has little interest in HPC or parallel algorithms
CWRU science and engineering departments mainly want to run packages to get results
CWRU math department has recently developed an interest in parallel computing but the partnership is weak (so far)
Being more than a computer center
CWRU: most departments just want compute cycles
CWRU: most faculty don’t want to collaborate (with HPC staff)
CWRU: the math chair is open, but her faculty less so
We are missing the “hands on” parts
Not crossing the staff/faculty boundary
Need to have people with academic credentialsDoctorateTeaching and research experience
Get adjunct or research appointments (if possible)
Have prior collaborative research experience with the faculty
Even this may not be enough
Subject matter taught at HPC centers
Probably acceptable: workshops, boot camps, traininggetting an account, logging in, batch scriptsavailable software, policiesusing compilers, scientific libraries, MPI libraries
More challenging:how to develop parallel algorithmsanything that touches an area of science or engineeringanything involving academic credits
Need to frame the questions
What are the overall objectives?
What skills do your users need to meet those objectives?
Where can they get those skills?
What is the role of HPC center staff?
How to match HPC staff and those roles?
How to get started?