Download presentation
Presentation is loading. Please wait.
1
Programming Systems for a Digital Human Kathy Yelick EECS Department U.C. Berkeley
2
The 20+ Year Vision Imagine a “digital body double” –3D image-based medical record –Includes diagnostic, pathologic, and other information Used for: –Diagnosis –Less invasive surgery-by-robot –Experimental treatments Digital Human Effort –Lead by the Federation of American Scientists
3
Organ Simulation Cardiac cells/muscles –SDSC, Auckland, UW, Utah, Cardiac flow –NYU,… Lung transport –Vanderbilt Lung flow – ORNL Cochlea –Caltech, UM Kidney mesh generation – Dartmouth Electrocardiography –Johns Hopkins,… Skeletal mesh generation Brain –ElIisman Just a few of the efforts at understanding and simulating parts of the human body
4
Programming Systems Challenges Programmability of parallel machines –Machines more complex than ever –Titanium: Java for high performance Performance on memory hierachies –Automatic performance tuning –BeBOP: Berkeley Benchmarking & Optimization Programming tools –Race detection, load balancing, communication Scalable scientific algorithms
5
Heart Simulation Source: www.psc.org Animation of lower portion of the heart
6
Cochlea Simulation Embedded structures are –Elastic membranes –Shell model –Variable elasticity Capture shape of cochlea Shown here is a plate –Implemented in a few weeks within Titanium code Source: Titanium simulation on a T3E
7
Titanium Overview Object-oriented language based on Java with: Scalable parallelism –SPMD model with global address space Multidimensional arrays –points and index sets as first-class values Immutable classes –user-definable non-reference types for performance Operator overloading –by demand from our user community Semi-automated memory management –uses memory regions for high performance
8
Automatic Performance Tuning Problem: –Increasing memory/processor gap –Increasing complexity of memory systems State of the art –Hand tuning of important kernels –Why: because even when analysis can be done, the performance models are too complex for compilers BeBOP approach –Identify and generate a space of implementations Instruction mixes, data structures, memory access patterns, and mathematical formulations –Search for the fastest one, by running them –Examples: PHiPAC, ATLAS, Sparsity, FFTW, Spiral,…
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.