Поделиться через


Содержимое

1. Введение

Область 1,1

Определение терминов 1,2

1,3 Модель выполнения

1,4 Совместимость

1,5 Нормативные ссылки

Организация 1,6

2. Директивы

Директивы формат 2,1

2,2 Условная компиляция

Параллельной конструкции 2,3

2,4 Рабочий-совместно с помощью конструктора

2.4.1 для конструирования

2.4.2 раздела конструкции

Одна конструкция 2.4.3

Параллельные конструкции 2,5 объединенных с помощью Рабочий-совместно

Параллельный 2.5.1 для конструирования

Конструкция 2.5.2 параллельная разделов

2,6 Рекомендации и синхронизации образца

Конструкция 2.6.1 master

Критическая конструкция 2.6.2

Директива 2.6.3 барьеров

Атомарная конструкция 2.6.4

Общая рекомендация 2.6.5

2.6.6 упорядоченная конструкция

2,7 Среда данных

Директива 2.7.1 threadprivate

2.7.2 Данные-Совместно Использовать предложения атрибута

2.7.2.1 закрытое

Firstprivate 2.7.2.2

Lastprivate 2.7.2.3

2.7.2.4 совместно используемый

Значение по умолчанию - 2.7.2.5

Снижение 2.7.2.6

Copyin 2.7.2.7

Copyprivate 2.7.2.8

2,8 Директивная привязка

Директива вложение 2,9

3. Функции библиотеки времени выполнения

3,1 Функциям среды выполнения рабочих процессов

3.1.1 omp_set_num_threads функция

Функция 3.1.2 omp_get_num_threads

3.1.3 omp_get_max_threads функция

Функция omp_get_thread_num 3.1.4

3.1.5 omp_get_num_procs функция

Функция 3.1.6 omp_in_parallel

Omp_set_dynamic функция 3.1.7

Omp_get_dynamic функция 3.1.8

3.1.9 omp_set_nested функция

3.1.10 omp_get_nested функция

3,2 Функции блокировки

3.2.1 функции omp_init_lock и omp_init_nest_lock

3.2.2 функции omp_destroy_lock и omp_destroy_nest_lock

3.2.3 функции omp_set_lock и omp_set_nest_lock

3.2.4 функции omp_unset_lock и omp_unset_nest_lock

3.2.5 функции omp_test_lock и omp_test_nest_lock

3,3 Подпрограммы времени

Функция 3.3.1 omp_get_wtime

Функция 3.3.2 omp_get_wtick

4. Переменные среды

4,1 OMP_SCHEDULE

4,2 OMP_NUM_THREADS

4,3 OMP_DYNAMIC

4,4 OMP_NESTED

A. Примеры

A.1, выполняющего простой цикл в параллельном режиме

A.2 указав условной компиляции

A.3 с помощью параллельных области

A.4 с использованием предложения nowait

A.5 с помощью критическую директива

A.6 использование предложения lastprivate

A.7, используя предложение снижения

A.8 определения параллельных секций

A.9 с помощью отдельные рекомендации

A.10 указав последовательное упорядочивание

A.11 указав фиксированное число потоков

Использование директивы атомарного A.12

A.13 использование директивы экземпляров, записанных на диск со списком

A.14 использование директивы экземпляров, записанных на диск без списка

A.15 указав количество используемых потоков

A.16 с помощью блокирует

A.17 с помощью Nestable блокирует

A.18 вложенных для директив

Примеры A.19, указывающий неверное вложение Рабочий-совместно с помощью директив

Привязка A.20 директив барьера

Переменные области A.21 с закрытым предложением

A.22 по умолчанию с помощью предложения (нет)

Примеры A.23 упорядоченной рекомендации

Пример A.24 закрытого предложения

Примеры A.25 предложения атрибута данных copyprivate

A.26 использование директивы threadprivate

Использование массивов переменной длины A.27 C99

Использование предложения num_threads A.28

Использование A.29 Рабочий-Совместно Использовать конструкции в критической конструкции

Использование A.30 Reprivatization

Потокобезопасные функции блокировки A.31

Б. Заглушки для функций библиотеки времени выполнения

В. Грамматика OpenMP c# и C++

Нотация C.1

Правила C.2

Г. Использование предложения расписания

Восточно- Реализация-Определенные расширения функциональности в OpenMP C/C++

Е. Новые функции и пояснения в версии 2.0

См. также

Основные понятия

API OpenMP C и C++