Upload
rachel-moody
View
214
Download
1
Embed Size (px)
Citation preview
OU Supercomputing
Symposium1
Education issues in HPC
HPC Education in the Undergraduate Curriculum
OU Supercomputing
Symposium2
A bit about myself.
The University of Northern Iowa is a primarily-undergraduate institution (PUI) Our clusters are small, very small
(Departmental category in Addison's talk) Our computer labs are ubiquitous
I hang drywall Ph.D. Applied Mathematics, MSU
◊ Parallel solutions of complex, coupled, nonlinear, time-dependent solutions of partial differential equations.
◊ Postdoc on parallel computing environments◊ “At home” teaching
OU Supercomputing
Symposium3
The other allegiance
National Computational Science Institute (NCSI) Parallel Computing Education Working Group Tom Murphy, Contra Costa College Charlie Peck, Earlham College Dave Joiner, Kean University
OU Supercomputing
Symposium4
What we do
We do workshops on HPC education We drink coffee, a lot of coffee We evangelize the goodness of HPC in our
curriculum
OU Supercomputing
Symposium5
What I do
I do the Bootable Cluster CD, BCCD, perhaps you've heard of it.
The BCCD is a tool for HPC education, aimed at the undergraduate level.
Spillover is wonderful – High schools, graduate programs, and things that I would have never imagined.
Like UNI, most places have few or small clusters, many open and unused labs.
OU Supercomputing
Symposium6
Obligatory tangent
The BCCD is no more Moving toward the “Better Cluster CD” This project will be called BCCD, and
unapologetically referred to as the “Bootable Cluster CD”
New features ...all of the old ones grid aware automated installation to hard disk hardware savvy no longer rolled completely from scratch
OU Supercomputing
Symposium7
Here's why I/we do this
As educators, we're charged with the responsibility of molding the fresh new minds of students during their tenure within our programs. At the culmination of their degrees, they should be prepared to task on the current and future challenges in the frontiers of science.
Students Future challenges
OU Supercomputing
Symposium8
Stages of education
High school levels. Undergraduate courses Undergraduate programs Graduate courses Graduate programs Graduate training
Our Focus
Our coverage/impact
OU Supercomputing
Symposium9
Undergraduate Courses
“Courses” in HPC issues at the undergraduate level are very problematic, inasmuch as the exposure of students to HPC issues earlier in their tenure is vastly unknown. Have they been exposed to threading models?
◊ If so, have they been exposed to concurrency issues? If so, were they at all relevant?
Have they been exposed to the “Tyranny of the Storage Hierarchy?”
Providing classes is hard, providing programs is harder.
OU Supercomputing
Symposium10
Once upon a time...
Programmers unrolled their own loops Wrapping every three lines of code into a
separate function call of its own was perceived to be bad programming style.
Applications effectively, purposefully and intentionally leveraged cache.
Compilers compiled, and didn't do optimizations “for you.”
Programmers coded spaghetti in Fortran and the world ate it up (with chopsticks).
OU Supercomputing
Symposium11
...and Now...
The big push (in Grids) is virtualization – totally removing the architecture/platform from the application programmer's domain
More programs are written for a virtual machine (JVM) than are developed for specific machines (e.g. sse, sse2).
Even though (CS) students deal with Java, they don't understand issues of concurrency, threads, and the property tauted by the language: distributed applications.
OU Supercomputing
Symposium12
Perhaps it's just me?
80 core desktops < 5 years (Stephen's talk)http://news.com.com/2100-1006_3-6119618.html?part=rss&tag=6119618&subj=news
Pathscale, PGI, Intel? Where are all of the compiler folks? GNU Fortran 95 is a sight for sore eyes, but what about openMP? HPF?
According to XXXXX from Sun Microsystems, engineers could put any number of cores into a CPU now. But there aren't libraries available that leverage the locality so why bother?
OU Supercomputing
Symposium13
And then there's Grid Computing
You know, the standard that changes in such a way that revisions are typically incompatible with previous versions. That's pretty amenable to teaching, right?
Grid computing is more than just services. Grid computing is more than just Condor
(not to imply that Condor is bad, mind you).
Don't worry though, that's what virtualization is for.
Dr. Apon in the adjacent talk has it “right.”
OU Supercomputing
Symposium14
My Advice
Work toward a “curriculum” rather than a course Have fun. Make it visual Include science – or even, <gasp!>
Mathematics! Motivate the problems Makethe science accessible Stay away from queues if possible (at least early
on) Take students to places where HPC is making a
difference. Take them to OU!
OU Supercomputing
Symposium15
Have Fun Illustrating Principles of Parallelism Using
People (IPoPUP) Students need to be deprogrammed
◊ To my students here, you didn't hear me say that. Using students/faculty/peple as processors can
give insight into distributed algorithms. Variations give rise to discussion. Discussion
gives rise to insight. Insight gives rise to next-generation, cutting-edge research.
Henry's approach to education is very simple (and very accurate): To be effective, use “lore” and “analogy.” Analogies for teaching parallel computing for inexperienced programmers. (SIGCSE)
OU Supercomputing
Symposium16
Make it visual
This term, I gave a long lecture on a short topic which compared various implementation of BLAS.
Written by me LAPACK ATLAS Goto
Watching the slow, slow, slow output from my code pass by the screen compared to the blazing-fast output (of the same algorithm) coded by K. Goto makes an impact. (Albeit a “Hans and Franz” moment, perhaps.)
OU Supercomputing
Symposium17
Include Science – or even, <gasp!> Mathematics
HPC exists because of two things: ◊ Scientists want to solve bigger problems◊ Scientists want to solve problems faster
But problems == science:◊ Scientists want to solve bigger science◊ Scientists want to solve science faster
Extending science by extending HPC's ability to do both of these.
◊ I would mention the importance of integration linear algebra differential equations (ODEs and PDEs)
◊ but I had better not. There are students around. Science makes the computation relevant.
OU Supercomputing
Symposium18
Make the science accessible
Give the students the tools to work In the next talk, Charlie Peck will talk
about The Bootable Cluster CD LittleFe, the “Little Iron” for HPC and Grid
education. Start small, think big. Think “Big Iron.”