在Docker容器中使用所有可用CPU的不那么麻烦的方法:
我使用以下可怕的语法告诉docker容器使用主机上的所有CPU:在Docker容器中使用所有可用CPU的不那么麻烦的方法:,docker,Docker,我使用以下可怕的语法告诉docker容器使用主机上的所有CPU: docker run --cpuset-cpus="0-`python3 -c "from multiprocessing import cpu_count; print(cpu_count() -1)"`" ubuntu:latest /bin/bash 有更好的方法吗?您可以使用nproc返回CPU核心数 为了得到CPU核数-1,POSIX外壳中的算术是用$和双括号完成的 docker run --cpuset-cpus=
docker run --cpuset-cpus="0-`python3 -c "from multiprocessing import cpu_count; print(cpu_count() -1)"`" ubuntu:latest /bin/bash
有更好的方法吗?您可以使用
nproc
返回CPU核心数
为了得到CPU核数-1,POSIX外壳中的算术是用$
和双括号完成的
docker run --cpuset-cpus="0-$(($(nproc)-1))" ubuntu:latest echo "hi"
getconf\u-processor\u-ONLN
可能是最短的方法,我相信这是POSIX,应该可以在OS X和Linux上使用。如果要使用所有cpu,为什么选择cpu\u count()-1
而不是cpu\u count()
?