EXASCALE VISUALIZATION: GET READY FOR A WHOLE NEW WORLD Hank Childs, Lawrence Berkeley Lab & UC Davis April 10, 2011.

Slides:



Advertisements
Similar presentations
MEMORY MANAGEMENT Y. Colette Lemard. MEMORY MANAGEMENT The management of memory is one of the functions of the Operating System MEMORY = MAIN MEMORY =
Advertisements

Hank Childs Lawrence Berkeley National Laboratory /
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
A NOVEL APPROACH TO SOLVING LARGE-SCALE LINEAR SYSTEMS Ken Habgood, Itamar Arel Department of Electrical Engineering & Computer Science GABRIEL CRAMER.
A Dynamic World, what can Grids do for Multi-Core computing? Daniel Goodman, Anne Trefethen and Douglas Creager
WHAT IS AN OPERATING SYSTEM? An interface between users and hardware - an environment "architecture ” Allows convenient usage; hides the tedious stuff.
EXASCALE VISUALIZATION: GET READY FOR A WHOLE NEW WORLD Hank Childs, Lawrence Berkeley Lab & UC Davis July 1, 2011.
Parallel Research at Illinois Parallel Everywhere
The Challenges Ahead for Visualizing and Analyzing Massive Data Sets Hank Childs Lawrence Berkeley National Laboratory February 26, B element Rayleigh-Taylor.
GPU System Architecture Alan Gray EPCC The University of Edinburgh.
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
Petascale I/O Impacts on Visualization Hank Childs Lawrence Berkeley National Laboratory & UC Davis March 24, B element Rayleigh-Taylor Instability.
The Challenges Ahead for Visualizing and Analyzing Massive Data Sets Hank Childs Lawrence Berkeley National Laboratory & UC Davis February 26, B.
CMPE 421 Parallel Computer Architecture MEMORY SYSTEM.
PARALLEL PROCESSING COMPARATIVE STUDY 1. CONTEXT How to finish a work in short time???? Solution To use quicker worker. Inconvenient: The speed of worker.
Large Vector-Field Visualization, Theory and Practice: Large Data and Parallel Visualization Hank Childs Lawrence Berkeley National Laboratory / University.
(Quickly) Testing the Tester via Path Coverage Alex Groce Oregon State University (formerly NASA/JPL Laboratory for Reliable Software)
Reference: Message Passing Fundamentals.
System Design and Analysis
1: Operating Systems Overview
Efficient Parallelization for AMR MHD Multiphysics Calculations Implementation in AstroBEAR.
Challenges and Solutions for Visual Data Analysis on Current and Emerging HPC Platforms Wes Bethel & Hank Childs, Lawrence Berkeley Lab July 20, 2011.
The hybird approach to programming clusters of multi-core architetures.
Introduction to Systems Analysis and Design Trisha Cummings.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Computer System Architectures Computer System Software
Folklore Confirmed: Compiling for Speed = Compiling for Energy Tomofumi Yuki INRIA, Rennes Sanjay Rajopadhye Colorado State University 1.
Computing hardware CPU.
Experiments with Pure Parallelism Hank Childs, Dave Pugmire, Sean Ahern, Brad Whitlock, Mark Howison, Prabhat, Gunther Weber, & Wes Bethel April 13, 2010.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Hank Childs, Lawrence Berkeley Lab & UC Davis Workshop on Exascale Data Management, Analysis, and Visualization Houston, TX 2/22/11 Visualization & The.
So far we have covered … Basic visualization algorithms Parallel polygon rendering Occlusion culling They all indirectly or directly help understanding.
GPU in HPC Scott A. Friedman ATS Research Computing Technologies.
Nov. 14, 2012 Hank Childs, Lawrence Berkeley Jeremy Meredith, Oak Ridge Pat McCormick, Los Alamos Chris Sewell, Los Alamos Ken Moreland, Sandia Panel at.
Loosely Coupled Parallelism: Clusters. Context We have studied older archictures for loosely coupled parallelism, such as mesh’s, hypercubes etc, which.
4.2.1 Programming Models Technology drivers – Node count, scale of parallelism within the node – Heterogeneity – Complex memory hierarchies – Failure rates.
Directed Reading 2 Key issues for the future of Software and Hardware for large scale Parallel Computing and the approaches to address these. Submitted.
An Object-Oriented Approach to Programming Logic and Design Fourth Edition Chapter 5 Arrays.
CSE332: Data Abstractions Lecture 8: Memory Hierarchy Tyler Robison Summer
© David Kirk/NVIDIA and Wen-mei W. Hwu, ECE 498AL, University of Illinois, Urbana-Champaign 1 Basic Parallel Programming Concepts Computational.
Experts in numerical algorithms and High Performance Computing services Challenges of the exponential increase in data Andrew Jones March 2010 SOS14.
EXASCALE VISUALIZATION: GET READY FOR A WHOLE NEW WORLD Hank Childs, Lawrence Berkeley Lab & UC Davis April 10, 2011.
Introduction to Research 2011 Introduction to Research 2011 Ashok Srinivasan Florida State University Images from ORNL, IBM, NVIDIA.
1: Operating Systems Overview 1 Jerry Breecher Fall, 2004 CLARK UNIVERSITY CS215 OPERATING SYSTEMS OVERVIEW.
VAPoR: A Discovery Environment for Terascale Scientific Data Sets Alan Norton & John Clyne National Center for Atmospheric Research Scientific Computing.
Emerging Technologies for Games Deferred Rendering CO3303 Week 22.
EXASCALE VISUALIZATION: GET READY FOR A WHOLE NEW WORLD Hank Childs, Lawrence Berkeley Lab & UC Davis April 10, 2011.
Programmability Hiroshi Nakashima Thomas Sterling.
| nectar.org.au NECTAR TRAINING Module 4 From PC To Cloud or HPC.
Lecture 4 Page 1 CS 111 Online Modularity and Virtualization CS 111 On-Line MS Program Operating Systems Peter Reiher.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
HOW PETASCALE VISUALIZATION WILL CHANGE THE RULES Hank Childs Lawrence Berkeley Lab & UC Davis 10/12/09.
Background Computer System Architectures Computer System Software.
Meeting with University of Malta| CERN, May 18, 2015 | Predrag Buncic ALICE Computing in Run 2+ P. Buncic 1.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Operating Systems Overview: Using Hardware.
Fermi National Accelerator Laboratory & Thomas Jefferson National Accelerator Facility SciDAC LQCD Software The Department of Energy (DOE) Office of Science.
24/06/20161 Hardware Processor components & ROM. 224/06/2016 Learning Objectives Describe the function and purpose of the control unit, memory unit and.
VisIt Project Overview
Auburn University COMP8330/7330/7336 Advanced Parallel and Distributed Computing Parallel Hardware Dr. Xiao Qin Auburn.
Introduction to Parallel Computing: MPI, OpenMP and Hybrid Programming
VisIt Libsim Update DOE Computer Graphics Forum 2012 Brad Whitlock
Programming Models for SimMillennium
So far we have covered … Basic visualization algorithms
Ray-Cast Rendering in VTK-m
WHY THE RULES ARE CHANGING FOR LARGE DATA VISUALIZATION AND ANALYSIS
Presentation transcript:

EXASCALE VISUALIZATION: GET READY FOR A WHOLE NEW WORLD Hank Childs, Lawrence Berkeley Lab & UC Davis April 10, 2011

Need a supercomputing 101 slide  Should motivate arrival of petascale and emergence of exascale (international committee, etc)

Some history behind this talk…  “Architectural Problems and Solutions for Petascale Visualization and Analysis”

Some history behind this talk…  “Why Petascale Visualization Will Changes The Rules” NSF Workshop on Petascale I/O

Fable: The Boy Who Cried Wolf  Once there was a shepherd boy who had to look after a flock of sheep. One day, he felt bored and decided to play a trick on the villagers. He shouted, “Help! Wolf! Wolf!” The villagers heard his cries and rushed out of the village to help the shepherd boy. When they reached him, they asked, “Where is the wolf?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he felt bored and decided to play a trick on the villagers. He shouted, “Help! Wolf! Wolf!” The villagers heard his cries and rushed out of the village to help the shepherd boy. When they reached him, they asked, “Where is the wolf?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he needed funding and decided to play a trick on his funders. He shouted, “Help! Wolf! Wolf!” The villagers heard his cries and rushed out of the village to help the shepherd boy. When they reached him, they asked, “Where is the wolf?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he needed funding and decided to play a trick on his funders. He shouted, “Help! Big Big Data!” The villagers heard his cries and rushed out of the village to help the shepherd boy. When they reached him, they asked, “Where is the wolf?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he needed funding and decided to play a trick on his funders. He shouted, “Help! Big Big Data!” The funders heard his cries and sent lots of money to help the viz expert. When they reached him, they asked, “Where is the wolf?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he needed funding and decided to play a trick on his funders. He shouted, “Help! Big Big Data!” The funders heard his cries and sent lots of money to help the viz expert. When petascale arrived, they asked, “Where is the problem?” The shepherd boy laughed loudly, “Ha, Ha, Ha! I fooled all of you. I was only playing a trick on you.”

Fable: The Boy Who Cried Wolf  Once there was a viz expert who had to look after customers. One day, he needed funding and decided to play a trick on his funders. He shouted, “Help! Big Big Data!” The funders heard his cries and sent lots of money to help the viz expert. When petascale arrived, they asked, “Where is the problem?” The viz expert shrugged and said, “The problem isn’t quite here yet, but it will be soon.” This is NOT the story of this talk.

The message from this talk… Petascale Visualization Exascale Visualization I/O Bandwidth Data Movement Data Movement’s 4 Angry Pups

A weak effort at establishing credibility… Petascale Visualization Exascale Visualization I/O Bandwidth Data Movement Data Movement’s 4 Angry Pups Terascale Visualization X

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  The 5 Angry Pups

The terascale visualization strategy P0 P1 P3 P2 P8 P7P6 P5 P4 P9 Pieces of data (on disk) ReadProcessRender Processor 0 ReadProcessRender Processor 1 ReadProcessRender Processor 2 Parallel visualization program P0 P3 P2 P5 P4 P7 P6 P9 P8 P1 Parallel Simulation Code I refer to this technique as “pure parallelism”.

Pure parallelism  Pure parallelism is data-level parallelism, but…  Multi-resolution can be data-level parallelism  Out-of-core can be data-level parallelism  Pure parallelism: “brute force” … processing full resolution data using data-level parallelism  Pros:  Easy to implement  Cons:  Requires large I/O capabilities  Requires large amount of primary memory   requires big machines

Pure parallelism and today’s tools  VisIt, ParaView, & EnSight primarily employ a pure parallelism + client-server strategy.  All tools working on advanced techniques as well  Of course, there’s lots more technology out there besides those three tools:  Parallel VTK  VAPOR  VISUS  and more…

Outline  Terascale  Petascale  Exascale

I/O and visualization Pure parallelism is almost always >50% I/O and sometimes 98% I/O Amount of data to visualize is typically O(total mem) FLOPs MemoryI/O Terascale machine “Petascale machine” Two big factors: ① how much data you have to read ② how fast you can read it  Relative I/O (ratio of total memory and I/O) is key

Trends in I/O MachineYearTime to write memory ASCI Red sec ASCI Blue Pacific sec ASCI White sec ASCI Red Storm sec ASCI Purple sec Jaguar XT sec Roadrunner sec Jaguar XT sec Thanks!: Dave Pugmire, ORNL

Why is relative I/O getting slower?  I/O is quickly becoming a dominant cost in the overall supercomputer procurement.  And I/O doesn’t pay the bills.  Simulation codes aren’t as exposed. We need to de-emphasize I/O in our visualization and analysis techniques.

Multi-resolution techniques  Pros  Drastically reduce I/O & memory requirements  Confidence in pictures; multi-res hierarchy addresses “many cells to one pixel issue”  Cons  Not always meaningful to process simplified version of the data.  How do we generate hierarchical representations during dump? What costs do they incur (data movement costs, storage costs)?

In situ  In situ processing can mean multiple things  Will discuss this more later in the talk  Common perceptions of in situ  Pros: No I/O & plenty of compute  Cons: Very memory constrained Some operations not possible Once the simulation has advanced, you cannot go back and analyze it User must know what to look a priori Expensive resource to hold hostage!

Data Subsetting and Out-of-Core  Data Subsetting:  Examples: reducing data processed via meta-data, query-driven visualization  Pro: Less data to process (less I/O, less memory)  Con: Only applicable to some algorithms  Out-of-core  Pros: Lower requirement for primary memory Doesn’t require big machines  Con: Still paying large I/O costs (slow!)

Assertion: we are going to need a lot of solutions. All visualization and analysis work Multi-res In situ Out-of-core Data subsetting Do remaining ~5% on SC w/ pure parallelism

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  The 5 Angry Pups

Exascale assumptions  The machine will be capable of one exaflop.  The machine will cost < $200M.  The machine will use < 20MW.  The machine may arrive as early as 2018.

Swim Lanes  A swim lane is a visual element used in process flow diagrams, or flowcharts, that visually distinguishes responsibilities for sub-processes of a business process.  Should get a picture of swim lanes in a flow chart.  Two swim lanes:  IBM: BlueGene’s successor – some architectural merger of BlueGene, Power, and Cell  All others: GPGPU-based spinoff

Hurdle #1: memory bandwidth eats up the entire power budget c/o John Shalf, LBNL

The change in memory bandwidth to compute ratio will lead to new approaches.  Example: linear solvers  They start with a rough approximation and converge through an iterative process     Each iteration requires sending some numbers to neighboring processors to account for neighborhoods split over multiple nodes.  Proposed exascale technique: devote some threads of the accelerator to calculating the difference from the previous iteration and just sending the difference. Takes advantage of “free” compute and minimizes expensive memory movement.

Hurdle #2: memory capacity eats up the entire fiscal budget c/o John Shalf, LBNL

Hurdle #3: power requires slower clocks and greater concurrency c/o SciDAC Review 16, February 2010

The trade space for exascale is very complex. c/o A. White, LANL

Exascale: a heterogeneous, distributed memory GigaHz KiloCore MegaNode system ~3 c/o P. Beckman, Argonne

$200M is not enough…  The quote: “1/3 memory, 1/3 I/O, 1/3 networking … and the flops are free”  Budget stretched to its limit and won’t spend more on I/O.  Great idea: put SSDs on the node  Great idea for the simulations …  … scary world for visualization and analysis We have lost our biggest ally in lobbying the HPC procurement folks We are unique as data consumers.

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 5 Angry Pups

Summarizing exascale visualization  Hard to get data off the machine.  Hard to even move it around the machine.  And we can’t read it in if we do get it off.   Beneficial to process the data in situ.

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Pup #1: In Situ System Research

Summarizing flavors of in situ In Situ Technique AliasesDescriptionNegative Aspects Tightly coupled Synchronous, co-processing Visualization and analysis have direct access to memory of simulation code 1)Very memory constrained 2)Large potential impact (performance, crashes) Loosely coupled Asynchronous, concurrent Visualization and analysis run on concurrent resources and access data over network 1)Data movement costs 2)Requires separate resources HybridData is reduced in a tightly coupled setting and sent to a concurrent resource 1)Complex 2)Shares negative aspects (to a lesser extent) of others

What is the best in situ technique for the exascale machine?  Visualization could be a service in this system  (tightly coupled)  … or visualization could be done on a separate node located nearby dedicated to visualization/analysis/IO/etc.  (loosely coupled)  … or a combination of the two.  (hybrid)

 Visualization could be a service in this system…  How do visualization routines interact with the simulation?  How do we develop visualization SW that can be re- used across many simulations?  Are we prepared to run on nodes with 1000-way parallelism? Likely with no cache-coherency?  Are our algorithms ready to run on O(1M) nodes? What is the best in situ technique for the exascale machine?

 … or visualization could be done on a separate node located nearby dedicated to visualization/analysis/IO/etc.  OK, where exactly?  Likely still to be issues with running on the accelerator.  I personally think it is very unlikely we will need to run visualization algorithms at billion way concurrency. What is the best in situ technique for the exascale machine?

Possible in situ visualization scenarios Visualization could be a service in this system… … or visualization could be done on a separate node located nearby dedicated to visualization/analysis/IO/etc. Physics #1 Physics #2 Physics #n … Services Viz Physics #1 Physics #2 Physics #n … Services Viz Physics #1 Physics #2 Physics #n … Services Viz Physics #1 Physics #2 Physics #n … Services Viz Physics #1 Physics #2 Physics #n … Services Viz … Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services One of many nodes dedicated to vis/analysis/IO Accelerator, similar to HW on rest of exascale machine (e.g. GPU) … or maybe this is a high memory quad-core running Linux! Specialized vis & analysis resources … or maybe the data is reduced and sent to dedicated resources off machine! … And likely many more configurations Viz IMO, we still have systems research to do in this space. We will possibly need to run on: -The accelerator in a lightweight way -The accelerator in a heavyweight way -A vis cluster (?) & data movement is a big issue… We will possibly need to run on: -The accelerator in a lightweight way -The accelerator in a heavyweight way -A vis cluster (?) & data movement is a big issue…

Reducing data to results (e.g. pixels or numbers) can be hard.  Must to reduce data every step of the way.  Example: contour + normals + render Important that you have less data in pixels than you had in cells. (*) Could contouring and sending triangles be a better alternative?  Easier example: synthetic diagnostics Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services Physics #1 Physics #2 Physics #n … Services One of many nodes dedicated to vis/analysis/IO Specialized vis & analysis resources

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Pup #2: Programming Language

Message-passing remains important at the exascale, but we lose its universality Pax MPI ( ) MPI will be combined with other paradigms within a shared memory node (OpenMP, OpenCL, CUDA, etc.) Codes will not be hardware- universal again, until a lengthy evolutionary period passes c/o David Keyes, KAUST

Angry Pup #2: Programming Language  VTK: enables the community to develop diverse algorithms for diverse execution models for diverse data models  Substantial investment  Important benefit: “write once, use many”  Goal: the “next VTK” for exascale machines.  Will also be a substantial investment  Must be:  Lightweight  Efficient  Able to run in a many core environment OK, what language is this in? OpenCL? DSL? … not even clear how to start OK, what language is this in? OpenCL? DSL? … not even clear how to start

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Pup #3: Memory footprint

Memory efficiency  64 PB of memory for 1 billion cores means 64MB per core  (May be 10 billion cores and 6.4MB per core)  Memory will be the most precious resource on the machine.  There won’t be a lot left over for visualization and analysis.  Zero copy in situ is an obvious start  Templates? Virtual functions?  Stream data to ensure firm memory footprint?

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Pup #4: Exploration

Do we have our use cases covered?  Three primary use cases:  Exploration  Confirmation  Communication Examples: Scientific discovery Debugging Examples: Scientific discovery Debugging Examples: Data analysis Images / movies Comparison Examples: Data analysis Images / movies Comparison Examples: Data analysis Images / movies Examples: Data analysis Images / movies ? In situ

Can we do exploration in situ? Having a human in the loop may prove to be too inefficient. (This is a very expensive resource to hold hostage.) Having a human in the loop may prove to be too inefficient. (This is a very expensive resource to hold hostage.)

Enabling exploration via in situ processing  Requirement: must transform the data in a way that both reduces and enables meaningful exploration.  Subsetting  Typical subsetting approach: query-driven visualization User applies repeated queries to better understand data New model: produce set of subsets during execution  Multi-resolution  Old model: user looks at coarse data, but can dive down to original data.  New model: branches of the multi-res tree are pruned if they are very similar. (compression!)

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Under-represented topics

How does increased computing power affect the data to be visualized? Large # of time steps Large ensembles High-res meshes Large # of variables / more physics Your mileage may vary; some simulations produce a lot of data and some don’t. Thanks!: Sean Ahern & Ken Joy

Under-represented topics in this talk.  We will have quintillions of data points … how do we meaningfully represent that with millions of pixels?  Data is going to be different at the exascale: ensembles, multi-physics, etc.  The outputs of visualization software will be different.  Accelerators on exascale machine are likely not to have cache coherency  Do all of our algorithms work in a GPU-type setting?  We have a huge investment in CPU-SW. What now?  What do we have to do to support resiliency issue?

Outline  The Terascale Strategy  The Barriers to Petascale Visualization  An Overview of the Exascale Machine  Data Movement and the 4 Angry Pups  Conclusion

It is funny how this happens…  All of our techniques are still needed.  In situ: Data movement wolf  Out-of-core: Pup #3: memory efficiency  Multi-res: Pup #4: exploration  Data subsetting: Pup #4: exploration  Pure parallelism: experiences at massive concurrency will be critical

Summary  We are unusual: we are data consumers, not data producers, and the exascale machine is being designed for data producers  So the exascale machine will almost certainly lead to a paradigm shift in the way visualization programs process data.  Where to process data and what data to move will be a central issue.

Summary  Our algorithms will need to run:  in a light weight manner (e.g. on a few of the thousands of cores on the accelerator)  and/or using all the threads on an accelerator  and/or on machines that may not have accelerators at all.  In addition to the I/O “wolf”, we will now have to deal with a data movement “wolf”, plus its 4 pups: 1) In Situ System 2) Programming Language 3) Memory Efficiency 4) Exploration

Backup slides

Vis clusters  Today’s vis clusters are designed to be proportional to the “big iron”.  Typical rule of thumb is that the little iron should have 10% of the memory of the big iron.  (Most vis clusters have fallen short of the 10% rule for the last few years.)  Exascale machine = $200M, ~1/3 rd of which is for memory. Memory for proposed vis cluster = $6.7M.  I personally view it as unlikely that we will have 10%-sized vis clusters.  Additional issue with getting data off machine.