Upload
trevor-merritt
View
220
Download
3
Tags:
Embed Size (px)
Citation preview
HPC - High Performance Productivity Computing and
Future Computational Systems: A Research Engineer’s
Perspective
Dr. Robert C. Singleterry Jr.
NASA Langley Research Center
HPC User Event
October 30th, 2010
Outline
What is an Engineer’s Job High Performance Computing High Performance Computation? High Productivity Computation Future of Computation Summary
What is an Engineer’s Job
Example: Space Radiation Engineer• Keep astronauts safe (<3% excess fatal cancer)• Predict, measure, analyze space exposure• Research what to predict, measure, and analyze
Things to Consider• Materials• Vehicle design• Human biology• Electronic design and operation• Mass, cost, and feasibility• Physics, chemistry, mathematics• Computational aspects
High Performance Computing
Utilization of computers to solve a problem• Enable the fastest execution of a computer
program to get an answer (usually LINPACK)• Time spent optimizing computer program to
computer hardware (not counted in above)• Usually one algorithm based somewhat in first
principles science with appropriate mathematical approximations
• Computer hardware and algorithm usually not highly compatible unless written especially for that hardware (CM-2 versus x86 cluster code)
• Can be very labor intensive and expensive but not counted in the performance calculation
High Performance Computation?
Analysis of (space radiation example)• Materials (carbon or aluminum)• Vehicle designs (runabout or capsule)• Human biology (shielding or pharmaceuticals) • Electronic designs (shielding or resistance)• Mission (cost and integrated performance)• Basic science parameters
Each analysis is not a single algorithm that fits a single hardware architecture
Can be linked to analyze an astronaut’s trip but what is most important to this process?
High Performance Computation?
Creativity, analysis, and humans• Ex: Vehicle design
• Creativity of what it looks like and how it operates• Objectives of mission planners• Requirements generation from engineers• CAD creation of human ideas and objectives• Analysis for space radiation protection (and others!)• Iterate until all requirements are met
High Performance Computation is a small part of this entire task
High Productivity Computation
Different than high performance computing! How can the computer, as a tool, increase
productivity in completing tasks? First Question: computer?
• Can 1 computer or computer architecture solve all computational needs? Probably not!
Second Question: Do the varied algorithms needed fit the hardware available? No!
Third Question: Will the computer be operated for needed throughput? Depends!
So what happens next?
Future of Computation
Caveat: Predictions more than 3 to 5 years in the computer field are subjective at best
By 2016, NASA should have a million powerful and tightly coupled cores (x86?) in its main computer system
IBM is looking at 10-100 million cell phone cores to get exa-scale computing soon
Floating point operations is what is needed What could be in the future?
• This opinion is highly debatable by the way!!!
Future of Computation
Compiler and compiler tools to help generate code that will fit the computer• Better language• Better distributed memory utilization• Better floating point throughput (10-10000000x)
Research algorithms to better fit the computer architecture• Cellular automata to replace finite elements• Hybrid Monte Carlo and deterministic methods
Key word: BETTER and not perfect• Don’t need 100% utilization of the computer• Better utilization than what is available now
Future of Computation
Last, but not least: Computer Operations• A time share machine?• A capability machine?• Multiple machines?• Is a desktop is faster than a cluster?
Coherent strategy for computation needed by the organization to fit the work being done by the scientists and engineers
Flexibility of the strategy to meet needs• New computers• New algorithms
Summary
PRODUCTIVITY over PERFORMANCE Coherent computational strategy to match
user needs: engineers, operations, research Better
• Language• Distributed memory utilization• Floating point throughput• Algorithms to fit architecture• Computer operations to fit user needs
Ease of use of computers to fit overall tasks• Computers are just one of many tools utilized