the simulation pipeline
play

The Simulation Pipeline phenomenon, process etc. Scientific - PDF document

The Simulation Pipeline phenomenon, process etc. Scientific Computing I modelling v mathematical model Conclusion and Outlook a numerical treatment l i numerical algorithm Michael Bader d a implementation t


  1. The Simulation Pipeline phenomenon, process etc. Scientific Computing I ✲ modelling ❄ v mathematical model Conclusion and Outlook a ✲ numerical treatment l ❄ i numerical algorithm Michael Bader d a ✲ implementation t Lehrstuhl Informatik V ❄ i simulation code o Winter 2005/2006 n visualization ❄ results to interpret ✟ ❍❍❍ ✟ ✟ embedding ✙ ✟ ❥ ❍ statement tool Target Architectures Monoprocessors workstation Part I mobile computing (laptop, PDA) Implementation embedded computing vs. Parallel Computing cluster of workstations low- to medium-cost parallel computer supercomputer (BlueGene, ALTIX) CPU & Memory Parallel Architectures – Classification SIMD vs. MIMD Current Trends: ( single/multiple instruction, multiple data ) RISC, load/store architecture UMA ( Uniform Memory Access , shared memory) superscalar processors, multi-core architecture NORMA ( No Remote Memory Access , distributed memory) pipelining, vectorization NUMA ( Non-Uniform Memory Access , virtually memory gap: CPU performance grows faster than shared memory) speed of memory Clusters of workstations multilevel cache hierarchies vs. dedicated parallel computers Performance may drop to (considerably) less than 10% communication hardware (Ethernet, Myrinet, of peak performance, if such aspects are not considered. Infiniband, vendor solution, . . . ) topologies (bus, ring, hypercube, crossbar, . . . )

  2. Parallel Programming, Parallel Methods Parallel Performance Criteria for parallel performance: are there inherently sequential parts in the code? vector computing, vectorization 1 Amdahls law: speedup ≤ shared memory computing (OpenMP) seq speed/amount of (slow) communication message passing (MPI): explicite communication between processors load balance and load balancing domain decomposition: Characterization: partitioning of the computational domain speedup: S = sequential runtime compute and combine solution on separate parallel runtime partitions (numerical method) S efficiency: E = # processors Twelve Ways to Fool the Masses Twelve Ways to Fool the Masses (2) (selection) (continued) Scale up the problem size with the number of Quote performance in terms of processor utilization, processors, but omit any mention of this fact parallel speedups or MFLOPS per dollar Compare your results against scalar, unoptimized Measure parallel run times on a dedicated system, code on Crays but measure conventional run times in a busy When direct run time comparisons are required, environment compare with an old code on an obsolete system If all else fails, show pretty pictures and animated If MFLOPS rates must be quoted, base the operation videos, and don’t talk about performance count on the parallel implementation, not on the best sequential implementation Visualization visual/graphical/optical representation of large sets of data Part II data from experiments or measurements: satellite images, tomography in medicine, microsopy, . . . Visualization data from simulations: with resolution of space (and time): fluid mechanics, structural mechanics, quantum physics, . . . without spatial resolution: vehicle dynamics, optimal control, . . . methods from image processing, computer graphics, virtual/augmented reality

  3. Image Processing Computer Graphics geometric: zoom, rotation, . . . point-to-point: false colours, geometric modelling (representing 3D objects) local: averaging, filtering, edge detection, . . . graphical representation/rendering ensemble processing (perspective, illumination, shading) (different images of the same scene) animation domain processing (Fourier/cosine transform, wavelet transform, tomography) Visualisation of Simulation Data 13 Ways to Say Nothing with Scientific Visualization Common Techniques: (selection) (ortho-) slices, projection Never include a colour legend contour lines, isosurfaces Avoid annotation streamlines, streaklines/-bands When in doubt, smooth particle tracing Avoid providing performance data Never learn anything about the data or scientific discipline 13 Ways to Say Nothing with Scientific Visualization (continued) Part III Never compare your results with other visualization techniques Embedding Avoid visualization systems Claim generality but show results from a single data set use viewing angle to hide blemishes if viewing angle fails, try specularity or shadows “this is easily extended to 3D”

  4. Embedding Computational Steering step 2: step 1: Computational steering: From numerical methods to software packages steering of an entire development cycle usability interactive w.r.t. interfaces to tools for model (assembly components; physical model) modelling (e.g. CAD) simulation parameters libraries (BLAS, LAPACK, . . . ) visualization technique visualization . . . short feedback-loop between development and maintenance of software simulation results ⇒ Software Engineering requires integration of data structures, software components, etc.

Recommend


More recommend