Scientific Computing

Document Sample
Scientific Computing Powered By Docstoc
					 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,
• 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,
  Class 2: Study new computational
  tools + case studies / benchmarks
• In class 2 there is less emphasize on the
  scientific story
• Examples:
  – CFD, learn OpenFoam, such
    projects also include learning how to install the
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,
               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
• Do your project in “R”
• Do your project using MatlabMPI / pMatlab
• Performance tools: TAU (Tuning and Analysis
• 2D Ising Model Simulation
• DLA – Difussion Limited Aggregation
• Parallel Sorting algorithms
• Game: the sesmic duck in OpenMP:
• Open|SpeedShop,
    – A strong CS background is needed
The NAS Parallel Benchmark
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
   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
• Search for a Pattern/Optimization
• Parallel (MPI/OpenMP) or Distributed
• Classification of Data using Fuzzy Logic
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.
 Solving the Discrete Poisson Equation using

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

Shared By: