これは、インターネット上で見つかったnproc
vsやその他のコマンドの出力です。nproc --all
私はまだなぜそれを理解していません。 CentOS 6.5 およびその他の CentOS 6.5 を実行する QEMU\KVM VM。
以下は他のコマンドの出力です。
[root@h1-nms ~]# nproc
1
[root@h1-nms ~]# nproc --all
3
[root@h1-nms ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 3
On-line CPU(s) list: 0-2
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 3
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 13
Stepping: 3
CPU MHz: 2194.710
BogoMIPS: 4389.42
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 4096K
NUMA node0 CPU(s): 0-2
[root@h1-nms ~]# getconf _NPROCESSORS_ONLN
3
[root@h1-nms ~]# cat /proc/$$/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 10485760 unlimited bytes
Max core file size unlimited unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 32000 32000 processes
Max open files 64000 64000 files
Max locked memory 65536000 65536000 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 191509 191509 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
[root@h1-nms ~]# grep "" /sys/devices/system/cpu/cpu*/online
/sys/devices/system/cpu/cpu1/online:1
/sys/devices/system/cpu/cpu2/online:1
[root@h1-nms ~]# uname -a
Linux h1-nms 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
[root@h1-nms ~]# cat /etc/*-release
CentOS release 6.5 (Final)
CentOS release 6.5 (Final)
CentOS release 6.5 (Final)
[root@h1-nms ~]#
ベストアンサー1
に示すように先行は達成するのが難しい~の回答、nproc
現在のプロセスで使用可能なCPUの数とCPUの総数を区別します。
Linux システムで OpenMP が関係していない場合、現在のプロセスで使用可能な CPU は、プロセスのアフィニティマスクによって決定されます。これを確認するには、以下を実行してくださいtaskset
。
taskset -p $$
またはschedtool
:
schedtool $$
(taskset
パッケージの一部util-linux
なので、デフォルトでインストールする必要があります。それはschedtool
それ自身のパッケージなので、使用するためにインストールする必要があるかもしれません。)
あなたの場合、これはシェルが単一のプロセッサに制限されていることを示します。これはnproc
出力です1
。