ProcessorCount
ProcessorCount(var)
Определить количество процессоров/ядер и сохранить значение в ${var}
Присваивает переменной с именем ${var} количество физических ядер, доступных на машине, если эту информацию можно определить. В противном случае ей присваивается значение 0. В настоящее время эта функция реализована для AIX, cygwin, FreeBSD, HPUX, IRIX, Linux, Mac OS X, QNX, Sun и Windows.
Гарантируется, что эта функция вернет положительное целое число (>=1), если она выполнится успешно. Она возвращает 0, если возникла проблема с определением количества процессоров.
Пример использования в скрипте ctest -S dashboard:
include(ProcessorCount)
ProcessorCount(N)
if(NOT N EQUAL 0)
set(CTEST_BUILD_FLAGS -j${N})
set(ctest_test_args ${ctest_test_args} PARALLEL_LEVEL ${N})
endif()
Эта функция предназначена для приблизительного определения количества вычислительных ядер, доступных на текущей машине, чтобы вы могли использовать это значение для параллельной сборки и параллельного тестирования. Она предназначена для того, чтобы помочь использовать как можно больше ресурсов машины, насколько это представляется разумным. Конечно, при принятии решения о том, следует ли запрашивать полную мощность машины только для себя, следует учитывать, что еще может работать на машине одновременно.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.12/module/ProcessorCount.html