Partilhar via


1.4 Conformidade

Uma implementação da API C/C++ OpenMP é compatível com OpenMP se ele reconhece e preserva a semântica de todos os elementos desta especificação, como apresentado nos capítulos 1, 2, 3, 4 e apêndice c. Os apêndices A, B, D, E e f são somente para fins informativos e não fazem parte da especificação. Implementações que incluam apenas um subconjunto da API não são compatíveis com OpenMP.

O OpenMP C e C++ API é uma extensão para o idioma base que é suportado por uma implementação. Se o idioma base não oferece suporte a uma construção de linguagem ou a extensão que aparece neste documento, a implementação OpenMP não é necessário para oferecer suporte a ele.

Todas as funções de biblioteca de c e C++ padrão e funções internas (ou seja, funções das quais o compilador não tem conhecimento específico) deve ser thread-safe. Não sincronizado uso das funções de thread–safe por threads diferentes dentro de uma região paralela não produzem um comportamento indefinido. No entanto, o comportamento pode não ser os mesmos que em uma região serial. (Uma função de geração de número aleatório é um exemplo).

A API do C/C++ OpenMP Especifica que o comportamento específico é definidos na implementação. Uma implementação em conformidade do OpenMP é necessária para definir e documentar o seu comportamento nesses casos. Consulte Apêndice E, 97, para obter uma lista dos comportamentos definidos na implementação de página.