Parallel Programming with OpenMP培训
Introduction
Multi-Threading Programming
Syntax and constructs
Clauses and sections
Offloading Support
Directives and target data
If, device, and map clauses
Thread Safety and Sharing
Atomicity
Constructs, locks, and directives
Shared clauses
Preparing the Development Environment
Installing and configuring OpenMP
Installing and configuring VMWare
Setting up an HPC with VMWare
Parallel Programming in OpenMP
Creating a hello world code example and demonstration
Worksharing constructs
Working with for loops
Using sectional parallelism
Using fractals
Adding vectors
Vector Programming and SIMD Extensions
Vectorizing loops
Annotating user-defined functions
Using functions that support SIMD annotation
Generating a vector function
Registering vector return values
Fortran in OpenMP
Worksharing constructs
Synchronizing constructs
Using data scope attribute clauses and other clauses
Working with OpenMP-Runtime Library
Parallel Blocks
Specifying the number of threads
Executing parallel statement blocks
Distinguishing the running threads in a parallel block
Using omp critical directives
Summary and Conclusion