[Moscow.pm] CPUs

Anton Yuzhaninov citrin на citrin.ru
Пт Июн 28 03:07:00 PDT 2013


On 06/28/13 10:50, Alessandro Gorohovski wrote:
> Подскажите, пожалуйста,
> существует ли более менее надежный способ определения
> количества ядер (физических/логических) процессора в системе
> из perl-сценария

Из С во многих unix-like OS можно получить через
sysconf(_SC_NPROCESSORS_ONLN)

В перле функция sysconf есть в модуле POSIX, но _SC_NPROCESSORS_ONLN там почему 
то нет :(

$ perl -MPOSIX -E 'say POSIX::sysconf( &POSIX::_SC_NPROCESSORS_ONLN )'
_SC_NPROCESSORS_ONLN is not a valid POSIX macro at -e line 1

Хотя другие параметры в этом модуле есть, например:

$ perl -MPOSIX -E 'say POSIX::sysconf(&POSIX::_SC_PAGESIZE)'
4096

Можно напрямую указать численную константу:
$ perl -MPOSIX -E 'say POSIX::sysconf(58)'
4
но подозреваю, что это не портабельно...


Подробная информация о списке рассылки Moscow-pm