goto


Home

Free Source Code

Fact Sheet

Workshops

Email us


Purple Sage Computing Solutions, Inc.

Parallelization Workshop

Home --> Fact Sheet --> Workshops --> Parallelization Workshop

Parallelization Workshop

Is one colleague praising "automatic parallelization while another curses a message passing scheme? Or vice versa? Do you know how to parallelize your application? How much time will the effort require?

Our Parallelization Workshop can help you understand which parallelization paradigm is best for you and your application. Our workshop reviews the pros and cons of the various methods available to help you decide on the strategy that meets your goals and priorities. We're not going to try to tell you what strategy to take, but rather to help you decide which strategy meets your needs.

The major difference between the traditional single scalar or vector processor and the new multiptrocessors isn't simply the number of processors (although, of course, that is an issue!), it's the organization of the memory. Traditional vector computers, for example, had large, flat memories. Today's processors support several levels of caches. Their main memories may be physically shared, logically shared, or distributed. Thinking through your applications memory usage is a key aspect of parallelization. Our workshop can help you understand the questions you need to ask about how your application is organized to enable you to take best advantage of whatever new computer you will using.

The lecture is followed by working on your programs in the lab with the help of the instructor. The participant should expect to understand how to choose from among the techniques presented during the lecture to the programs the participant maintains, and how to implement the chosen technique to the program.

The duration of the workshop can be tuned to the participant's needs primarily by adjusting the amount of lab time the instructor spends with the participants.

Back to the Top

The outline of the lecture follows below.

  1. Themes
    1. Need Code with Large & Small Test Cases
    2. Understand the Memory System
    3. Watch the Return on Time Spent
  2. Hardware Issues
    1. Single Processors
    2. Shared Memory Multiprocessors
    3. Non-Uniform Memory Access Multiprocessors
    4. Distributed Memory Multiprocessors
  3. Software Issues
    1. Resources & Overhead
    2. Amdahl's Law
    3. Gustavson's Law
    4. Global Data v. Local Data
  4. Approaches to Parallelism
    1. Computation, Communication and Synchronization
    2. Parallel Libraries
    3. SMP- Threading
    4. SMP- OpenMP
    5. DMP- Message Passing
    6. Mixed SMP & DMP
  5. Parallelization Examples
    1. Parallel Libraries
    2. Thread Libraries
    3. Directive Based Schemes
    4. Message Passing Schemes
    5. Co-array Fortran

Back to the Top

For more information, please email us at dnagle@erols.com.


Home - Fact Sheet - Free Source Code - Fortran Links - Email us

Back to the Top