Como indicado em Kusalananda 's answer , nproc distingue entre o número de CPUs disponíveis para o processo atual e o número total de CPUs.
Nos sistemas Linux, as CPUs disponíveis para o processo atual, quando o OpenMP não está envolvido, são determinadas pela máscara de afinidade do processo. Para ver isso, execute taskset :
taskset -p $$
ou schedtool :
schedtool $$
( taskset é parte do pacote util-linux e deve ser instalado por padrão; schedtool é seu próprio pacote e talvez precise ser instalado se você quiser usá-lo.)
No seu caso, isso deve mostrar que seu shell está limitado a um único processador, e é por isso que nproc outputs 1 .