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


2.1 Формат директивы

Синтаксис директив OpenMP определяется грамматикой в формальной Приложение C#и неофициально следующим образом:

#pragma omp directive-name  [clause[ [,] clause]...] new-line

Запуске каждой директивы с omp #pragma, снизить вероятность конфликтов с другими (расширения non-OpenMP или поставщика в OpenMP) директивами pragma с теми же именами. Остальная часть директивы соблюдать соглашения стандартов c и C++ для директивы компилятора. В частности, пробелов можно использовать до и после **#**пробел, и иногда должен использоваться для разделения машинные слова в директиве. Ниже приведены маркеров предварительной обработки omp #pragma подлежит замена макроса.

Рекомендации с учетом регистра. Порядок, в котором выражения отображаются в директивы не учитываются. Предложения на директивах могут быть повторенны по мере необходимости для ограничений в перечисленных в описании каждого предложения. If список переменных появится в предложении, он должен указать только переменные. Только одно директивн-имя может быть указан в директиву. Например, следующая директива не разрешена.

/* ERROR - multiple directive names not allowed */
#pragma omp parallel barrier

Директивы OpenMP применяется значение по крайней мере одна преуспевая выписка, которая должна быть структурированным блоком.