我通过指定cpuset到1个核心启动了一个Docker容器:
通过指定cpuset为4个核心,可以创建第二个实例:
我注意到两个容器的执行时间没有改善(没有加速)。您有任何想法为什么没有改善吗?4核容器应该比1核容器运行得更快,对吧?注意:使用top命令查看1核容器。
我通过指定cpuset到1个核心启动了一个Docker容器:
docker run --cpuset-cpus="0"...
通过指定cpuset为4个核心,可以创建第二个实例:
docker run --cpuset-cpus="0-3"...
我在每个容器中启动了一个负载进程,并监控了两个容器的 CPU 消耗情况。
负载进程类似于:
ffmpeg input > output
我注意到两个容器的执行时间没有改善(没有加速)。您有任何想法为什么没有改善吗?4核容器应该比1核容器运行得更快,对吧?注意:使用top命令查看1核容器。
CPU0%=100%
CPU1%=0
CPU2%=0
CPU3%=0
使用4核容器时,Docker会随机选择其中一个核心来启动进程。有时这会影响每个核心的30%性能。
CPU0%=0 CPU0%=30% CPU0%=0
CPU1%=100% or CPU0%=30% or CPU0%=0
CPU2%=0 CPU0%=30% CPU0%=0
CPU3%=0 CPU0%=30% CPU0%=100%
ffmpeg input.avi ouput.mp3
- staticx