Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este apéndice se resumen los comportamientos que se describen como "definidos por la implementación" en esta API. Cada comportamiento cuenta con una referencia cruzada a su descripción en la especificación principal.
Comentarios
Se requiere una implementación para definir y documentar su comportamiento en estos casos, pero la lista podría estar incompleta.
Número de subprocesos: si se encuentra una región paralela mientras está deshabilitado el ajuste dinámico del número de subprocesos, y el número de subprocesos solicitados para la región paralela es mayor que el número que el sistema runtime puede proporcionar, el comportamiento del programa está definido por la implementación (consulte la página 9).
En Visual C++, para una región paralela no anidada, se proporcionarán 64 subprocesos (el máximo).
Número de procesadores: el número de procesadores físicos que realmente hospedan los subprocesos en un momento dado está definido por la implementación (consulte la página 10).
En Visual C++, este número no es constante y está controlado por el sistema operativo.
Creación de equipos de subprocesos: el número de subprocesos de un equipo que ejecuta una región paralela anidada está definido por la implementación (consulte la página 10).
En Visual C++, este número viene determinado por el sistema operativo.
schedule(runtime): La decisión sobre la programación se aplaza hasta el tiempo de ejecución. El tipo de programación y el tamaño del fragmento se pueden elegir en tiempo de ejecución al establecer la variable de entorno
OMP_SCHEDULE. Si no se establece esta variable de entorno, la programación resultante está definida por la implementación (consulte la página 13).En Visual C++, el tipo de programación es
staticsin tamaño de fragmento.Programación predeterminada: en ausencia de la cláusula schedule, la programación predeterminada está definida por la implementación (consulte la página 13).
En Visual C++, el tipo de programación predeterminado es
staticsin tamaño de fragmento.ATÓMICA:Se define según la implementación si una implementación reemplaza o no todas las directivas
atomiccon las directivascriticalque tienen el mismo nombre único (consulte la página 20).En Visual C++, si los datos modificados por atomic no están en una alineación natural o si son de uno o dos bytes de longitud, todas las operaciones atómicas que satisfacen esa propiedad usarán una sección crítica. De lo contrario, no se usarán secciones críticas.
omp_get_num_threads: si el usuario no ha establecido explícitamente el número de subprocesos, el valor predeterminado es definido por la implementación (consulte la página 9).
En Visual C++, el número predeterminado de subprocesos es igual al número de procesadores.
omp_set_dynamic: El valor predeterminado para el ajuste dinámico de subprocesos es definido por la implementación.
En Visual C++, el valor predeterminado es
FALSE.omp_set_nested: Cuando se habilita el paralelismo anidado, el número de subprocesos usados para ejecutar regiones paralelas anidadas está definida por la implementación.
En Visual C++, el sistema operativo determina el número de subprocesos.
Variable de entorno OMP_SCHEDULE: el valor predeterminado de esta variable de entorno está definido por la implementación.
En Visual C++, el tipo de programación es
staticsin tamaño de fragmento.Variable de entorno OMP_NUM_THREADS: si no se especifica ningún valor para la variable de entorno
OMP_NUM_THREADS, o si el valor especificado no es un entero positivo, o si el valor es mayor que el número máximo de subprocesos que el sistema puede admitir, el número de subprocesos que se van a usar es definido por la implementación.En Visual C++, si el valor especificado es cero o menor, el número de subprocesos es igual al número de procesadores. Si el valor es mayor que 64, el número de subprocesos es 64.
Variable de entorno OMP_DYNAMIC: el valor predeterminado se define en la implementación.
En Visual C++, el valor predeterminado es
FALSE.