Parallel Programming & Cluster Computing Monte Carlo Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education Program’s.

Slides:



Advertisements
Similar presentations
PRAGMA – 9 V.S.S.Sastry School of Physics University of Hyderabad 22 nd October, 2005.
Advertisements

Supercomputing in Plain English Supercomputing in Plain English High Throughput Computing Henry Neeman, Director Director, OU Supercomputing Center for.
Supercomputing in Plain English High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education & Research Blue Waters Undergraduate.
High Performance Computing and CyberGIS Keith T. Weber, GISP GIS Director, ISU.
Parallel & Cluster Computing Distributed Cartesian Meshes Paul Gray, University of Northern Iowa David Joiner, Shodor Education Foundation Tom Murphy,
Introduction to Parallel Programming & Cluster Computing Applications and Types of Parallelism Josh Alexander, University of Oklahoma Ivan Babic, Earlham.
Dinker Batra CLUSTERING Categories of Clusters. Dinker Batra Introduction A computer cluster is a group of linked computers, working together closely.
1 Rare Event Simulation Estimation of rare event probabilities with the naive Monte Carlo techniques requires a prohibitively large number of trials in.
Monte Carlo Simulation Methods - ideal gas. Calculating properties by integration.
Parallel Programming & Cluster Computing High Throughput Computing Henry Neeman, University of Oklahoma Charlie Peck, Earlham College Tuesday October 11.
Supercomputing in Plain English Part IX: High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education & Research University.
CSE 160/Berman Programming Paradigms and Algorithms W+A 3.1, 3.2, p. 178, 6.3.2, H. Casanova, A. Legrand, Z. Zaogordnov, and F. Berman, "Heuristics.
Parallel Programming & Cluster Computing High Throughput Computing Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education.
Supercomputing in Plain English Applications and Types of Parallelism Henry Neeman, Director OU Supercomputing Center for Education & Research University.
Parallel Programming & Cluster Computing Applications and Types of Parallelism Henry Neeman, University of Oklahoma Charlie Peck, Earlham College Tuesday.
Student: Fan Bai Instructor: Dr. Sushil K. Prasad Csc8530 Spring 2012.
6. Markov Chain. State Space The state space is the set of values a random variable X can take. E.g.: integer 1 to 6 in a dice experiment, or the locations.
1 Reasons for parallelization Can we make GA faster? One of the most promising choices is to use parallel implementations. The reasons for parallelization.
Supercomputing in Plain English Supercomputing in Plain English High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education.
Independent Study of Parallel Programming Languages An Independent Study By: Haris Ribic, Computer Science - Theoretical Independent Study Advisor: Professor.
Parallel & Cluster Computing Clusters & Distributed Parallelism Paul Gray, University of Northern Iowa David Joiner, Shodor Education Foundation Tom Murphy,
Parallel & Cluster Computing Overview of Parallelism Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma SC08.
Paul Gray, University of Northern Iowa Henry Neeman, University of Oklahoma Charlie Peck, Earlham College Tuesday October University of Oklahoma.
Parallel & Cluster Computing MPI Basics Paul Gray, University of Northern Iowa David Joiner, Shodor Education Foundation Tom Murphy, Contra Costa College.
Supercomputing in Plain English Supercomputing in Plain English Applications and Types of Parallelism Henry Neeman, Director Director, OU Supercomputing.
1 Theoretical Physics Experimental Physics Equipment, Observation Gambling: Cards, Dice Fast PCs Random- number generators Monte- Carlo methods Experimental.
Montecarlo Simulation LAB NOV ECON Montecarlo Simulations Monte Carlo simulation is a method of analysis based on artificially recreating.
Supercomputing in Plain English High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma.
RNGs in options pricing Presented by Yu Zhang. Outline Options  What is option?  Kinds of options  Why options? Options pricing Models Monte Carlo.
Parallel Programming & Cluster Computing Applications and Types of Parallelism Henry Neeman, Director OU Supercomputing Center for Education & Research.
Parallel & Cluster Computing High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma.
Parallel & Cluster Computing Monte Carlo Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma SC08 Education.
For a new configuration of the same volume V and number of molecules N, displace a randomly selected atom to a point chosen with uniform probability inside.
Supercomputing in Plain English Applications and Types of Parallelism PRESENTERNAME PRESENTERTITLE PRESENTERDEPARTMENT PRESENTERINSTITUTION DAY MONTH DATE.
Supercomputing in Plain English Supercomputing in Plain English Applications and Types of Parallelism Henry Neeman, Director OU Supercomputing Center for.
Supercomputing in Plain English Applications and Types of Parallelism Henry Neeman, Director OU Supercomputing Center for Education & Research Blue Waters.
Introduction to Parallel Programming & Cluster Computing Applications and Types of Parallelism Joshua Alexander, U Oklahoma Ivan Babic, Earlham College.
Parallel Programming & Cluster Computing Overview of Parallelism Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education.
Author: B. C. Bromley Presented by: Shuaiyuan Zhou Quasi-random Number Generators for Parallel Monte Carlo Algorithms.
Vector/Array ProcessorsCSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Vector/Array Processors Reading: Stallings, Section.
Bayes’ Nets: Sampling [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available.
Supercomputing in Plain English Part VIII: High Throughput Computing Henry Neeman, Director OU Supercomputing Center for Education & Research University.
M ONTE C ARLO SIMULATION Modeling and Simulation CS
Multilevel Parallelism using Processor Groups Bruce Palmer Jarek Nieplocha, Manoj Kumar Krishnan, Vinod Tipparaju Pacific Northwest National Laboratory.
Parallel & Cluster Computing N-Body Simulation and Collective Communications Henry Neeman, Director OU Supercomputing Center for Education & Research University.
Parallel Programming & Cluster Computing MPI Collective Communications Dan Ernst Andrew Fitz Gibbon Tom Murphy Henry Neeman Charlie Peck Stephen Providence.
Supercomputing in Plain English An Introduction to High Performance Computing Part VI: Distributed Multiprocessing Henry Neeman, Director OU Supercomputing.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 14 From Randomness to Probability.
Molecular Modelling - Lecture 2 Techniques for Conformational Sampling Uses CHARMM force field Written in C++
Supercomputing in Plain English Part VII: Applications and Types of Parallelism Henry Neeman, Director OU Supercomputing Center for Education & Research.
CSCI-455/552 Introduction to High Performance Computing Lecture 6.
Parallel Programming & Cluster Computing N-Body Simulation and Collective Communications Henry Neeman, University of Oklahoma Paul Gray, University of.
You could end up with a broken bone! Even though bones are very strong, sometimes accidents happen and bones break. Can you guess where this broken bone.
MPI implementation – collective communication MPI_Bcast implementation.
Parallel & Cluster Computing Transport Codes and Shifting Henry Neeman, Director OU Supercomputing Center for Education & Research University of Oklahoma.
Scaling Conway’s Game of Life. Why do parallelism? Speedup – solve a problem faster. Accuracy – solve a problem better. Scaling – solve a bigger problem.
G. Cowan Lectures on Statistical Data Analysis Lecture 9 page 1 Statistical Data Analysis: Lecture 9 1Probability, Bayes’ theorem 2Random variables and.
Concurrency and Performance Based on slides by Henri Casanova.
Parallel Programming & Cluster Computing Linear Algebra Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education Program’s.
MONTE CARLO TRANSPORT SIMULATION Panda Computing Week 2012, Torino.
Computational Physics (Lecture 10) PHY4370. Simulation Details To simulate Ising models First step is to choose a lattice. For example, we can us SC,
AP Statistics From Randomness to Probability Chapter 14.
Computational Physics (Lecture 10)
Saturday November 12 – Tuesday November
Supercomputing in Plain English High Throughput Computing
Supercomputing in Plain English Applications and Types of Parallelism
By Brandon, Ben, and Lee Parallel Computing.
Supercomputing in Plain English Distributed Multiprocessing
Parallel Programming & Cluster Computing Transport Codes and Shifting
Presentation transcript:

Parallel Programming & Cluster Computing Monte Carlo Henry Neeman, University of Oklahoma Paul Gray, University of Northern Iowa SC08 Education Program’s Workshop on Parallel & Cluster computing Oklahoma Supercomputing Symposium, Monday October

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Embarrassingly Parallel An application is known as embarrassingly parallel if its parallel implementation: 1.can straightforwardly be broken up into roughly equal amounts of work per processor, AND 2.has minimal parallel overhead (e.g., communication among processors). We love embarrassingly parallel applications, because they get near-perfect parallel speedup, sometimes with modest programming effort. Embarrassingly parallel applications are also known as loosely coupled.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Monte Carlo Methods Monte Carlo is a European city where people gamble; that is, they play games of chance, which involve randomness. Monte Carlo methods are ways of simulating (or otherwise calculating) physical phenomena based on randomness. Monte Carlo simulations typically are embarrassingly parallel.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Monte Carlo Methods: Example Suppose you have some physical phenomenon. For example, consider High Energy Physics, in which we bang tiny particles together at incredibly high speeds. BANG! We want to know, say, the average properties of this phenomenon. There are infinitely many ways that two particles can be banged together. So, we can’t possibly simulate all of them.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Monte Carlo Methods: Example Suppose you have some physical phenomenon. For example, consider High Energy Physics, in which we bang tiny particles together at incredibly high speeds. BANG! There are infinitely many ways that two particles can be banged together. So, we can’t possibly simulate all of them. Instead, we can randomly choose a finite subset of these infinitely many ways and simulate only the subset.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Monte Carlo Methods: Example Suppose you have some physical phenomenon. For example, consider High Energy Physics, in which we bang tiny particles together at incredibly high speeds. BANG! There are infinitely many ways that two particles can be banged together. We randomly choose a finite subset of these infinitely many ways and simulate only the subset. The average of this subset will be close to the actual average.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Monte Carlo Methods In a Monte Carlo method, you randomly generate a large number of example cases (realizations) of a phenomenon, and then take the average of the properties of these realizations. When the realizations’ average converges (i.e., doesn’t change substantially if new realizations are generated), then the Monte Carlo simulation stops.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October MC: Embarrassingly Parallel Monte Carlo simulations are embarrassingly parallel, because each realization is completely independent of all of the other realizations. That is, if you’re going to run a million realizations, then: 1.you can straightforwardly break up into roughly 1M / N p chunks of realizations, one chunk for each of the N p processors, AND 2.the only parallel overhead (e.g., communication) comes from tracking the average properties, which doesn’t have to happen very often.

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Serial Monte Carlo Suppose you have an existing serial Monte Carlo simulation: PROGRAM monte_carlo CALL read_input(…) DO realization = 1, number_of_realizations CALL generate_random_realization(…) CALL calculate_properties(…) END DO CALL calculate_average(…) END PROGRAM monte_carlo How would you parallelize this?

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October Parallel Monte Carlo PROGRAM monte_carlo [MPI startup] IF (my_rank == server_rank) THEN CALL read_input(…) END IF CALL MPI_Bcast(…) DO realization = 1, number_of_realizations CALL generate_random_realization(…) CALL calculate_realization_properties(…) CALL calculate_local_running_average(...) END DO IF (my_rank == server_rank) THEN [collect properties] ELSE [send properties] END IF CALL calculate_global_average_from_local_averages(…) CALL output_overall_average(...) [MPI shutdown] END PROGRAM monte_carlo

SC08 Parallel & Cluster Computing: Monte Carlo Oklahoma Supercomputing Symposium, October To Learn More

Thanks for your attention! Questions?