atomic.c

Directives
atomic
parallel

Notes

commonMaintain.f90   commonInModMaintain2.f90

Directives
parallel
parallel private
threadprivate

Notes

critical.f90

Directives
parallel
critical
threadprivate

Notes

module.f90

Directives
parallel
critical
parallel private

Notes

invertc.c

invertf.f90

Directives
omp parallel sections
sections

Notes

task.f90

Directives
omp parallel
task

Notes

module.f90

Directives
parallel
critical
parallel private

Notes

withoutcrit.f90

Directives
parallel

Notes

withcrit.f90

Directives
parallel
critical

Notes

withprivate.f90

Directives
parallel
private

Notes

omp_fft.f90

Directives
parallel do
private
schedule (runtime)

Notes

private.c

Directives
parallel for copyin() schedule()
private
threadprivate
critical

Notes

schedule.c

Directives
parallel for schedule(static,1)
parallel for schedule(static,2)
parallel for schedule(dynamic,1)
parallel for schedule(dynamic,2)
barrier

Notes

schedule.c

schedule.c

Directives
parallel for schedule(static,1)
parallel for schedule(static,2)
parallel for schedule(dynamic,1)
parallel for schedule(dynamic,2)
barrier

Notes

singleSubsectionc.c  singleSubsectionf.f90

Directives
omp parallel shared() default() private()
single
critical
Notes
Use single so an array only gets allocated one time
Shows how to do seudo loop level parallelizm without the for/do directive
show

sortc.c  sortf.f90

Directives
section
sections
threadprivate
Notes
Does a parallel recursive merge sort by handing out sections of the array to threads

openmp.pdf - a somewhat dated guide to OpenMP programming

makefile - Makefile for the Intel compilers

openmp.tar - a tar file with all of these files