110 likes | 227 Views
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 30 th , 2010. Outline. What is an Engineer’s Job High Performance Computing
E N D
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