Scientific Computing
Shared by: fjzhangxiaoquan
-
Stats
- views:
- 2
- posted:
- 2/25/2012
- language:
- pages:
- 21
Document Sample


Scientific Computing
Topics for Final Projects
Dr. Guy Tel-Zur
Version 2, 15-05-2011
Best option
• Find a computational challenge in your field of
research (Math, CS, Biology, Chemistry,
Physics…)
• Think Parallel or Distributed
• Use advanced Visualization
In the next slides are topics which can
candidates for the Final Projects
Class 1: Science topic + a
computational tools
• Examples:
– Map-Reduce Paradigm,
http://hadoop.apache.org/core/
Class 2: Study new computational
tools + case studies / benchmarks
• In class 2 there is less emphasize on the
scientific story
• Examples:
– CFD, learn OpenFoam,
http://www.opencfd.co.uk/openfoam/ such
projects also include learning how to install the
tool
Class 3: Porting a scientific problem to
another new software
• Examples:
– Program the “Game of Life” in Erlang, UPC,
Chapel, Fortress
– Port the “Game of Life” to GPGPU
– “Game of Life” in Microsoft’s Axum,
http://msdn.microsoft.com/en-
us/devlabs/dd795202.aspx
More topics
• Develop distributed code for Grid
Mathematica or Maple
• Run your project on Amazon’s EC2 Cloud
• Find a CPU intensive problem like parameter
sweep or Monte Carlo and solve it using
Condor
• Do your project in “R”
• Do your project using MatlabMPI / pMatlab
Cont’
• Performance tools: TAU (Tuning and Analysis
Utilities),
http://www.cs.uoregon.edu/research/tau/ho
me.php
• 2D Ising Model Simulation
• DLA – Difussion Limited Aggregation
• Parallel Sorting algorithms
• Game: the sesmic duck in OpenMP:
http://home.comcast.net/~arch.robison/seism
ic_duck.html
• Open|SpeedShop,
http://www.openspeedshop.org/wp/
– A strong CS background is needed
The NAS Parallel Benchmark
http://www.nas.nasa.gov/Software/NPB/
Parallel Numerical Libraries: Scalapack
1. Download packages.
2. Write an example program.
3. Make benchmarks (speedup & efficiency)
• Ref: ScaLAPACK: a portable linear algebra for distributed memory
computers – design issues and performance. J.Choi et al. Computer
Physics Communications 97 (1196) 1-15
• http://oscinfo.osc.edu/training/parlib/parlib.ls.pdf
Parallel Genetic Algorithms
A genetic algorithm (GA) is a search procedure that
optimizes some objective function f by maintaining a
population P of candidate solutions and employing
operations inspired by genetics (called crossover and
mutation) to generate a new population from the
previous one. Generally, the candidate solutions are
encoded as bit strings.
Simulated Annealing (SA)
Metropolis Algorithm
Example: TSP - Traveling Salesman Problem
12 – פרוייקט גמר
Fractal Dimension Calculation
Using the “Box Counting” Method
Neural Networks
• Parallel (MPI/OpenMP) or Distributed
(Condor)
• Search for a Pattern/Optimization
Clustering
• Parallel (MPI/OpenMP) or Distributed
(Condor)
• Classification of Data using Fuzzy Logic
DLA
The Diffusion-Limited Aggregation (DLA) is a
growth model based on diffusing particles.
The growth is started with a single seed
A random walker travels about a square
lattice; when the walker reaches a site
adjacent to the growing cluster it sticks
N-Body Problem
Using the Barnes-Hut Algorithm
An O(n log n) algorithm based on a hierarchical
octree representation of space in three dimensions.
It computes interactions between distant particles by
means of the first order approximation.
Multi-Grids
Solving the Discrete Poisson Equation using
Multigrid
Divide-and-Conquer Method
Ising Model
Spins interactions
The Monte Carlo code should be
parallel in the sense that each
processor will perform work on
a separate region of the lattice.
Root - Proof
• http://people.web.psi.ch/feichtinger/doc/pro
of_examples.html
Get documents about "