High Performance Computing at SCEC

Slides:



Advertisements
Similar presentations
CyberShake Project and ShakeMaps. CyberShake Project CyberShake is a SCEC research project that is a physics-based high performance computational approach.
Advertisements

By Bethany Brewer. What is an earthquake? Earthquakes are the sudden shock of the earth’s surface. They are the Earth's natural means of releasing stress.
Faults in Focus: Earthquake Science Accomplishments Thomas H. Jordan Director, Southern California Earthquake Cente r 28 February 2014.
Chapter 19 Review Earthquakes.
Test 2 mean: 75, median: 79 multiple choice: 42 questions, 2 points each short answer: 4 questions, 4 points each 100 total: circled number inside front.
1 High Performance Computing at SCEC Scott Callaghan Southern California Earthquake Center University of Southern California.
Spaced-based measurements (VLBI and GPS) show that PAC-NA motion in CA is ~50 mm/yr.
6.2 earthquakes and seismic waves By Kate, Josh, Cam, Mark, and Emily.
Earthquakes.
Earthquakes And Faults.
BY ADVIK THE SCIENCE OF EARTHQUAKES WHERE DO EARTHQUAKES USUALLY HAPPEN? Fault Lines around the World such as the San Andreas fault in California and.
1 The SCEC Broadband Ground Motion Simulation Platform Paul Somerville, Scott Callaghan, Philip Maechling, Robert Graves, Nancy Collins, Kim Olsen, Walter.
Earthquake Hazard Session 1 Mr. James Daniell Risk Analysis
“Earthquakes” I. Causes of Earthquakes: A. Why do earthquakes take place? 1. Rocks act the same way rubber bands work. 2. Applying stress to a rock will.
Earthquakes (Chapter 13). Lecture Outline What is an earthquake? Seismic waves Epicenter location Earthquake magnitude Tectonic setting Hazards.
Chapter 4 Earthquakes Map is from the United States Geological Survey and shows earthquake hazard for the fifty United States.
1 SCEC Broadband Platform Development Using USC HPCC Philip Maechling 12 Nov 2012.
1.UCERF3 development (Field/Milner) 2.Broadband Platform development (Silva/Goulet/Somerville and others) 3.CVM development to support higher frequencies.
IT253: Computer Organization
Earthquakes: What are they and what causes them to happen?
Estimation of Future Earthquake Annualized Losses in California B. Rowshandel, M. Reichle, C. Wills, T. Cao, M. Petersen, and J. Davis California Geological.
SEISMIC HAZARD. Seismic risk versus seismic hazard Seismic Hazard is the probability of occurrence of a specified level of ground shaking in a specified.
Fig. 1. A wiring diagram for the SCEC computational pathways of earthquake system science (left) and large-scale calculations exemplifying each of the.
Earthquakes Chapter 16 In Textbook. What Is An Earthquake? What Is An Earthquake? An earthquake is the vibration of Earth produced by the rapid release.
Newton’s Laws Inertia What is a Force?  The idea the forces caused motion was professed by Aristotle in the 4 th century B.C.  Force – a push or pull.
CHAPTER 8 EARTHQUAKES. EARTHQUAKES Earthquakes result from sudden motions along breaks in Earth’s crust and can affect landforms and societies. An entire.
Earthquakes & Volcanoes
Southern California Earthquake Center CyberShake Progress Update 3 November 2014 through 4 May 2015 UGMS May 2015 Meeting Philip Maechling SCEC IT Architect.
19.4 – Earthquakes & Society. Damages  Death and injuries  Collapse of buildings  Landslides  Fires  Explosions  Flood waters.
UCERF3 Uniform California Earthquake Rupture Forecast (UCERF3) 14 Full-3D tomographic model CVM-S4.26 of S. California 2 CyberShake 14.2 seismic hazard.
1 1.Used AWP-ODC-GPU to run 10Hz Wave propagation simulation with rough fault rupture in half-space with and without small scale heterogeneities. 2.Used.
Southern California Earthquake Center CyberShake Progress Update November 3, 2014 – 4 May 2015 UGMS May 2015 Meeting Philip Maechling SCEC IT Architect.
EARTHQUAKES. Earthquake Causes The bending and breaking of wooden craft sticks are similar to how rocks bend and break When a force is first applied to.
Understanding Earthquakes and Tsunamis. Concepts Earthquake Stress Strain Elastic Rebound Theory Epicenter Foreshocks, aftershocks P, S and Surface.
National Center for Supercomputing Applications University of Illinois at Urbana-Champaign Recent TeraGrid Visualization Support Projects at NCSA Dave.
What is an Earthquake? Goal 
Earthquakes USGS Earthquake Hazards Program Earthquake Basics
What are earthquakes? Stresses in the crust cause rock to move suddenly The sudden movement causes vibrations that travel as waves inside the Earth and.
Seismic Hazard Analysis Using Distributed Workflows
High Performance Computing at SCEC
Earthquakes Chapter 19.
Scott Callaghan Southern California Earthquake Center
CyberShake Study 16.9 Discussion
High-F Project Southern California Earthquake Center
Philip J. Maechling (SCEC) September 13, 2015
Understanding Earth Chapter 13: EARTHQUAKES Grotzinger • Jordan
Earthquakes.
Earthquakes.
DO NOW Pick up notes..
8.1 – What is an Earthquake?.
19.4 – Earthquakes & Society
Chapter 12 Section 2 Earthquakes.
Forces Within Earth Earthquakes are natural vibrations of the ground caused by movement along fractures in Earth’s crust, or sometimes, by volcanic eruptions.
Earthquakes Science.
VII. Earthquake Mitigation
“Earthquakes” I. Causes of Earthquakes:
Seismology A shaky science
Seismology A shaky science
UNIT 4 The theory of plate tectonics explains Earth’s geological processes
Do Now Describe the last earthquake you can remember. (location, strength, time of day, how it felt, etc.) Where do earthquakes occur? Why do earthquakes.
An____________is a movement of Earth’s lithosphere that occurs when rocks in the lithosphere suddenly shift, releasing stored energy. The energy released.
Chapter 19 Earth Science Riddle
E a r t h q u a k e s.
Earthquakes.
rvGAHP – Push-Based Job Submission Using Reverse SSH Connections
Earthquakes.
Forces Within Earth Earthquakes are natural vibrations of the ground caused by movement along fractures in Earth’s crust, or sometimes, by volcanic eruptions.
Southern California Earthquake Center
Chapter 19 – Earthquakes.
Do Now: Answer the question below on the back of your exit slip 1
Presentation transcript:

High Performance Computing at SCEC Scott Callaghan Southern California Earthquake Center University of Southern California

Outline Who am I? What is High Performance Computing? How is it useful to SCEC? How does high performance computing work? How does it work at SCEC? How do we know if we’re doing it right? What kind of simulations has SCEC run?

Why did I choose to do this? I like math, science, programming A little programming experience in high school, not a lot Computer science for a research group brings together my interests Work with smart people in many fields Work on real problems with useful applications Advance science research I get to ‘dabble’ in science

What is High Performance Computing? Using large computers with many processors to do simulations quickly Used by many fields, such as: Chemistry Aerospace Genomics Climate Cosmology Serves as the (controversial) “third pillar” of science Theory Simulation Experiment

How is HPC useful to SCEC? Earthquakes are really, really complicated Many of these pieces can be simulated Don’t have to wait for a real earthquake Can perform “experiments” to test theories Can try to look into future Fault rupture Origin time Response time  minute hour day year decade ------ Aftershocks ------------------------------------------------------------------- Surface faulting Seismic shaking Landslides Liquifaction Stress transfer Disease Fires Structural & nonstructural damage to built environment Human casualties Slow slip transients Socioeconomic aftereffects Nucleation Tectonic loading Stress accumulation Seafloor deformation Tsunami Dynamic triggering ----- Foreshocks ----- Anticipation time month day year decade century week 6

HPC provides “best estimate” Magnitude 8, San Andreas Produced without simulation Produced with HPC simulation

Simulating has its own challenges Large range of scales Faults rupture over 100s of kilometers Friction acts over millimeters Want to understand shaking over large regions Need access to large, powerful computers Need efficient software Must make sure you’re getting the right answer Like all good science, must be reproducible

How does it work? Start with a physical phenomenon Write down the physics equations that govern it Discretize it, since computers only work in discrete increments Create an algorithm based on these equations Break the algorithm into pieces for each processor Run it Analyze the results Add additional complexity to be more accurate

Wait, what? Let’s simulate the velocity v(t) of a falling object over time, with air resistance Introductory physics time! kv(t) Gravity: F = mg Air resistance: F = kv(t) F = ma = mg – kv(t) mv’(t) = mg – kv(t) Need to discretize. Could do this many ways, but will take the simplest: (v(t+d) – v(t))/d = g – k/m*v(t) v(t+d) – v(t) = dg – dk/m*v(t) v(t+d) = dg + (1 – dk/m)v(t) Could have replaced v’(t) with (v(t) – v(t-d))/d, (v(t+d/2)-v(t-d/2))/d, etc. Pull up spreadsheet and try different values of d. mg

Now that we’ve got the equation v(t+∆) = ∆g + (1-∆k/m)*v(t) We can write an algorithm: v = 0, delta=0.1, g=10, k=0.1, m=1 for timestep=1 to timestep=100: v = delta*g + (1-delta*k/m)*v Now you could use this to run a simulation Later we could add more complexity to be more accurate Non-zero initial velocity, g and k vary with altitude, determine k from cross-section, other forces, etc. Spreadsheet

But wait! We forgot a step Break the algorithm into pieces, right? In HPC, speedup comes from doing work in parallel Each processor works on small subset of job Results are combined Usually, calculations are repeated some number of times Final results are saved Most commonly, divide work up into subsets based on data Let’s look at matrix multiplication as example

Matrix Multiplication 1 2 -4 7 1 1 3 -5 4 9 1 2 1 X = -7 -6 6 1 2 -2 5 -1 8 2 1 1 2 -4 7 X 1 2 = (1x0)+(2x1)+ (-4x0)+(7x2)= 16 12 4 -6 13 2 7 3 5 -8 -19 21 -3 Can give each row/column pair to a different processor

3 phases in simulation Calculation - actually doing the numerical calculation Input/output (I/O) - reading and writing numbers from/to the paper Communication Passing out sheets (send out pieces of the problem) Telling me what your results were (send results back) As in this example, calculation is usually the fastest of the phases To speed up performance, must optimize all phases

What do we at SCEC need? Wave propagation code Velocity model Simulates the movement of seismic energy through the volume, like ripples in a pond Constructed from first principles wave physics Velocity model Speed of the earthquake waves at all points in the earth that you’re simulating – relates to rock density Calculated from boreholes, analyzing past earthquakes Earthquake description The forces experienced as an earthquake starts at a hypocenter and moves along a fault surface – initial condition Constructed from historic earthquakes, physics

Simulating Large Earthquakes Run wave propagation simulation Material properties, wave moves through volume Break up the work into pieces by geography Give work to each processor Run a timestep Communicate with neighbors Repeat As number of processors rises, harder to get good performance

How do we know if we’re doing it right? Must be able to trust science results Just because it runs doesn’t mean it’s right… Verification Does this code behave as I expect it to? Was it programmed correctly? Validation Does this code accurately model a physical phenomenon in the real world? Can compare results against real earthquakes Can run multiple codes on same problem and compare results

Comparison against real events Comparison of data (black) to two simulations (red, blue) using alternative earth structural models for the 2008 Mw5.4 Chino Hills earthquake. 0.1-0.5Hz goodness-of-fit for simulated earthquakes relative to data from same earthquake. Colors indicate which structural model is a better fit.

Comparison between codes

Comparison with past good code

What kind of simulations does SCEC run? Two main types of SCEC HPC projects What kind of shaking will this one earthquake cause? What kind of shaking will this one location experience? The first: “Scenario simulations” The second: “Seismic hazard analysis” Complimentary – answering different key questions

SCEC Scenario Simulations Simulations of individual earthquakes Determine shaking over a region caused by a single event (usually M > 7) Peak ground velocities for a Mw8.0 Wall-to-Wall Scenario on the San Andreas Fault (1Hz) calculated using AWP-ODC on NICS Kraken.

Simulation Results (N->S) W2W (S-N)

Simulation Results (S->N)

SCEC Simulation Growth Year Number of points in mesh (simulation size) Number of timesteps Peak speed Number of processors 2004 1.8 billion 22,768 0.04 Tflops 240 2007 14 billion 50,000 7.3 Tflops 32,000 2009 31 billion 60,346 50.0 Tflops 96,000 2010 440 billion 160,000 220.0 Tflops 223,074 2013 859 billion 2,000 (benchmark) 2330.0 Tflops 16,384 GPUs Since it’s harder to write fast software for lots of processors, looking at new exotic solutions (GPUs, coprocessors, etc.)

Seismic Hazard Analysis The second kind of simulation Builders ask seismologists: “What will the peak ground motion be at my new building in the next 50 years?” Different question – don’t care which earthquake, care about this one location Seismologists answer this question using Probabilistic Seismic Hazard Analysis (PSHA) PSHA results used in building codes, insurance California building codes impact billions of dollars of construction yearly

Probability of exceeding 0.1g in 50 yrs PSHA Reporting PSHA information is relayed through Hazard curves (for 1 location) Hazard maps (for a region) 2% in 50 years 0.6 g Curve for downtown LA Probability of exceeding 0.1g in 50 yrs

How do you do PSHA? Pick a location of interest. Determine what future earthquakes might happen which could affect that location. Estimate the magnitude and probability for each (using UCERF!)

And now the interesting part… 4. Determine the shaking caused by each earthquake at the site of interest. Can calculate with ‘attenuation relationships’ – extrapolate from historical data. Roughly, based on how far, what magnitude. Very quick, but (too?) simple.

Alternatively We can use a physical approach to simulate each earthquake SCEC does this in the “CyberShake” project For each site (like USC) Run 2 wave propagation simulations, like the scenarios Determine shaking from ~415,000 earthquakes Since it is a 3D simulation, includes more complexity Earth structure Rupture direction Different kind of HPC – many earthquakes, each one cheap to run

To complete PSHA 5. Combine the levels of shaking with probabilities to produce a hazard curve. Repeat for multiple locations for a hazard map. For the Los Angeles area, we need about 200 locations for a good map.

Does the approach make a difference? Higher Attenuation Higher CyberShake Attenuation Hazard Map CyberShake Hazard Map

Some numbers M8 simulation CyberShake (Feb-March 2014) 600 TB output 436 billion mesh points 223,074 processors for 24 hours CyberShake (Feb-March 2014) 1144 sites 57 TB output files 100 million tasks executed 46,700 CPUs + 225 GPUs for 14 days Onward and upward!

In summary High performance computing SCEC uses HPC Is hard But interesting! Provides a technique for solving big problems in many fields Opportunities to problem-solve and expand horizons SCEC uses HPC To determine the shaking from one big earthquake To determine the hazard at one location To support experiments and theory