所以我在tar中使用pigz
tar --use-compress-program=pigz
Run Code Online (Sandbox Code Playgroud)
这可行,但它不使用我的所有处理器,我想确保它是递归(-r)和使用(-9压缩级别).
我通过使用多核来读取tar + gzip/bzip压缩/解压缩,但它没有注意到在那个格式中添加额外的命令,并且我在手册页中找不到任何程序用于额外的swithed.
谢谢,Cam
我通过将 cpuset 指定为 1 个内核来启动一个 docker 容器:
docker run --cpuset-cpus="0"...
Run Code Online (Sandbox Code Playgroud)
第二个通过将 cpuset 指定为 4 个内核:
docker run --cpuset-cpus="0-3"...
Run Code Online (Sandbox Code Playgroud)
我在每个容器内启动了一个加载进程,并监控了两个容器的 CPU 消耗。
加载过程如下:
ffmpeg input > output
Run Code Online (Sandbox Code Playgroud)
我观察到两个容器之间的执行时间没有改善(没有加速)。
你知道为什么没有改进吗?具有 4 个核心的容器应该比 1 个核心容器运行得更快,对吗?
注意:对 1core 容器使用 top
CPU0%=100%
CPU1%=0
CPU2%=0
CPU3%=0
Run Code Online (Sandbox Code Playgroud)
使用 top 作为 4core 容器,docker 随机选择 4 个内核之一来启动进程。有时它会影响每个核心的 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%
Run Code Online (Sandbox Code Playgroud)