High-Performance Computing and OpenSolaris

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    3 Favorites

    High-Performance Computing and OpenSolaris - Presentation Transcript

    1. High-Performance Computing and OpenSolaris
      • Silveira Neto
      • Sun Campus Ambassador
      • Federal University of Ceará
      • ParGO - Paralellism, Graphs, and Combinatorial Optimization Research Group
    2. Agenda
      • Why programs should run faster?
      • How programs can run faster?
      • High Performance Computing
        • Motivating
        • Computer Models
        • Approachs
      • OpenSolaris
        • What is, Advantages and Tools.
    3. Aplication Area Share
        • stats fromTop500.org Application area share for November/2007
    4. Computational fluid dynamics
    5. Finite Element Analysis
    6. Serial Computation problem instructions CPU
    7. Serial Computation
      • Single computer, single CPU.
      • Problem broken into discrete series of instructions.
      • One instruction per time.
      instructions CPU
    8. Parallel Computing problem CPU CPU CPU parts instructions
    9. Parallel Computing
      • Simultaneous use of multiple compute resources to solve a computational problem.
      • Compute resources can include
        • Single computer with multiple processors
        • Multiple computers connected by a network
        • or both
    10. Flynn's Taxonomy
      • Instruction or Data
      • Single or Multiple
      SISD S ingle I nstruction, S ingle D ata SIMD S ingle I nstruction, M ultiple D ata MISD M ultiple I nstruction, S ingle D ata MIMD M ultiple I nstruction, M ultiple D ata
    11. SISD
      • Single Instruction, Single Data
      LOAD A LOAD B C = A+B STORE C CPU
    12. SIMD
      • Single Instruction, Multiple Data
      LOAD A[0] LOAD B[0] C[0] = A[0]+B[0] STORE C[0] LOAD A[1] LOAD B[1] C[1] = A[1]+B[1] STORE C[1] LOAD A[n] LOAD B[n] C[n] = A[n]+B[n] STORE C[n] CPU 1 CPU 2 CPU n
    13. MISD
      • Multiple Instruction, Single Data
      LOAD A[0] C[0] = A[0] *1 STORE C[0] LOAD A[1] C[1] = A[1] *2 STORE C[1] LOAD A[n] C[n] = A[n] *n STORE C[n] CPU 1 CPU 2 CPU n
    14. MIMD
      • Multiple Instruction, Multiple Data
      LOAD A[0] C[0] = A[0] *1 STORE C[0] X=sqrt(2) C[1] = A[1] *X method(C[1]); something(); W = C[n]**X C[n] = 1/W CPU 1 CPU 2 CPU n
    15. Parallel Programming Models
      • Shared Memory
      • Threads
      • Message Passing
      • Data Parallel
      • Hybrid
    16. Threads Model Memory CPU CPU CPU CPU
    17. Threads Model
    18. Message Passing Model Memory CPU Memory CPU Memory CPU Memory CPU x=10
    19. Hybrid Model x=10 Memory CPU Memory CPU Memory CPU CPU Memory CPU CPU
    20. Amdahl's Law fraction of code that can be parallelized
    21. Amdahl's Law parallel fraction number of processors serial fraction
    22. Integration CPU CPU a b c
    23. Pi calculation
      • Madhava of Sangamagrama (1350-1425)
      CPU CPU
    24. MPI
      • Message Passing Interface
      • A computer specification
      • An implementation that allows many computers to communicate with one another. It is used in computer clusters.
    25. MPI Simplest Example $ mpicc hello.c -o hello $ mpirun -np 5 hi
    26. MPI_Send
    27. MPI_Recv
    28. OpenMP
      • Open Multi-Processing
      • Multi-platform shared memory multiprocessing programming in C/C++ and Fortran on many architectures
      • Available on GCC 4.2
      • C/C++/Fortran
    29. Creating a OpenMP Thread $ gcc -openmp hello.c -o hello $ ./hello
    30. Creating multiples OpenMP Threads
    31. Pthreads
      • POSIX Threads
      • POSIX standard for threads
      • Defines an API for creating and manipulating threads
    32. Pthreads g++ -o threads threads.cpp -lpthread ./threads
    33. Java Threads
      • java.lang.Thread
      • java.util.concurrent
    34. What is OpenSolaris?
      • Open development effort based on the source code for the Solaris Operating System.
      • Collection of source bases (consolidations) and projects.
    35. Opensolaris
      • ZFS
      • Dtrace
      • Containers
      • HPC Tools
      • opensolaris.org/os/community/hpcdev/
        • Dtrace for Open MPI
    36. Sun HPC ClusterTools
      • Comprehensive set of capabilities for parallel computing.
      • Integrated toolkit that allows developers to create and tune MPI applications that run on high performance clusters and SMPs.
      • sun.com/clustertools
    37. Academy, industry and market
    38. References
      • Introduction to Parallel Computing, Blaise Barney, Livermore Computing, 2007. https://computing.llnl.gov/tutorials/parallel_comp
      • Flynn, M., Some Computer Organizations and Their Effectiveness, IEEE Trans. Comput., Vol. C-21, pp. 948, 1972.
      • Top500 Supercomputer sites, Application Area share for 11/2007, http://www.top500.org/charts/list/30/apparea
      • Wikipedia's article on Finite Element Analysis, http://en.wikipedia.org/wiki/Finite_element_analysis
      • Wikipedia's article on Computational Fluid Dynamics, http://en.wikipedia.org/wiki/Computational_fluid_dynamics
      • Slides An Introduction to OpenSolaris, Peter Karlson.
      • Wikipedia's article on OpenMP, http://en.wikipedia.org/wiki/Openmp
    39. References
      • Wikipedia's article on MPI, http://en.wikipedia.org/wiki/Message_Passing_Interface
      • Wikipedia's article on PThreads, http://en.wikipedia.org/wiki/Pthreads
      • Wikipedia's article on Madhave of Sangamagrama, http://en.wikipedia.org/wiki/Madhava_of_Sangamagrama
      • Distributed Systems Programming, Heriot-Watt University http://www.macs.hw.ac.uk/~hamish/DSP/topic29.html
    40. Thank you! José Maria Silveira Neto Sun Campus Ambassador [email_address] http://silveiraneto.net “ open” artwork and icons by chandan: http://blogs.sun.com/chandan

    + José Maria Silveira NetoJosé Maria Silveira Neto, 2 years ago

    custom

    1924 views, 3 favs, 1 embeds more stats

    What is high performance Computing, examples of Ope more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1924
      • 1818 on SlideShare
      • 106 from embeds
    • Comments 0
    • Favorites 3
    • Downloads 61
    Most viewed embeds
    • 106 views on http://silveiraneto.net

    more

    All embeds
    • 106 views on http://silveiraneto.net

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories