如何允许程序在运行 Debian 的虚拟机中使用更多的 CPU?

如何允许程序在运行 Debian 的虚拟机中使用更多的 CPU?

我在 Debian Linux 上进行音频处理,发现只有一个核心的虚拟机将音频编码为 OGG 或 AAC 的速度与八个 CPU 核心的速度几乎一样快。

由于我缺乏系统的计算机科学教育,我错过了有关分配 CPU 资源的部分,而且我在 Linux 中尝试过的方法似乎是一个死路,所以我就不多说了。

简而言之,有没有办法可以启动编码器,例如德卡克(非免费)或奥根克这样它就能使用系统尽可能多的 CPU 了?

答案1

为了充分利用多个 CPU 核心,您使用的编码器程序应该以特殊方式编写(使用线程)。但 并非如此oggenc。您可以尝试使用支持线程的编码器,例如mencoder.mencoder有一个threads参数您应该将其设置为 8(其默认值为 1,表示没有线程)。

另一种可能性(通常是首选)是同时编码多个文件,同时运行多个编码器实例。在这种情况下,编码器本身不需要线程支持,因为操作系统会负责将编码器进程调度到可用的 CPU 核心。

相关内容