Как правило, реализации OpenMP достаточно умны, чтобы обеспечить хорошее значение по умолчанию для количества потоков.Например:
- Если вы запускаете программу OpenMP без каких-либо настроек
OMP_NUM_THREADS
и MPI вообще не существует, OpenMP обычно определяет количество ядер и использует их все. - Если есть MPI и процессы MPI связаны с подмножеством машины посредством закрепления процессов, например, один ранг на сокет процессора, OpenMP унаследует это подмножество, и реализация автоматически будет использовать только это подмножество.
Во всех этих случаях и в большинстве других случаев вам вообще не нужно устанавливать OMP_NUM_THREADS
.
Если вы можете поделиться более подробной информацией о том, чего вы пытаетесь достичь, можно предоставить более подробную информацию.подробный ответ о том, что вам нужно сделать.