我有一台高階 HPE ProLiant DL325 G10 伺服器,配備 AMD EPYC 7401P 24 核心/48 執行緒 CPU、128GB DDR4 RAM 和 Intel P4800x PCIe NVMe。我嘗試運行 ffmpeg 將視訊 (MKV) 轉換為 MP4 以進行線上串流傳輸,但它並未利用所有 24 個核心。根據 ,在編碼過程中,它使用大約 10% 的 CPU top
。下面是頂部輸出的範例。
我在 stackexchange 網站上讀過類似的問題,但都沒有得到解答,而且都是 6-8 歲的問題。我嘗試在選項 0、24、48 和其他選項-threads
之前和之後添加參數,但它似乎忽略了此輸入。-i
我也不縮放影片。
我也在 H.264 編碼。以下是我使用過的一些指令。我無法弄清楚我做錯了什麼或瓶頸到底是什麼。
有什麼建議我可以如何解決這個問題嗎?
使用的命令:
ffmpeg -threads 24 -i input.mkv -c:v libx264 -preset medium -c:a copy -vf subtitles=input.mkv output.mp4
我也使用了-sws_flags fast_bilinear
&-x264-params sliced-threads=1
但兩者都沒有太大變化。我確實注意到-tune zerolatency
某些核心的 CPU 使用率略有增加,但整體 CPU 使用率低於 15%。
頂部輸出:
top - 16:14:13 up 57 min, 2 users, load average: 2.65, 0.59, 0.50
Tasks: 509 total, 1 running, 280 sleeping, 1 stopped, 0 zombie
%Cpu0 : 5.7 us, 0.7 sy, 12.2 ni, 80.4 id, 0.0 wa, 0.0 hi, 1.0 si, 0.0 st
%Cpu1 : 2.6 us, 0.3 sy, 4.6 ni, 92.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu2 : 6.2 us, 0.3 sy, 6.9 ni, 86.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu3 : 4.0 us, 0.0 sy, 1.7 ni, 94.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu4 : 2.0 us, 0.0 sy, 13.9 ni, 84.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu5 : 2.3 us, 0.0 sy, 3.3 ni, 94.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu6 : 6.6 us, 0.3 sy, 8.2 ni, 84.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu7 : 8.1 us, 0.0 sy, 12.8 ni, 79.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu8 : 1.7 us, 0.3 sy, 31.5 ni, 66.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu9 : 21.6 us, 0.0 sy, 2.6 ni, 75.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu10 : 15.3 us, 0.7 sy, 9.6 ni, 74.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu11 : 12.3 us, 0.0 sy, 10.3 ni, 77.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu12 : 1.3 us, 0.3 sy, 26.4 ni, 71.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu13 : 3.3 us, 0.0 sy, 12.0 ni, 84.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu14 : 4.0 us, 0.0 sy, 7.7 ni, 88.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu15 : 2.0 us, 0.3 sy, 20.3 ni, 77.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu16 : 4.0 us, 0.3 sy, 29.7 ni, 66.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu17 : 2.3 us, 0.3 sy, 21.7 ni, 75.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu18 : 11.6 us, 0.0 sy, 22.8 ni, 65.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu19 : 6.0 us, 0.0 sy, 20.4 ni, 73.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu20 : 6.0 us, 0.0 sy, 26.3 ni, 67.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu21 : 0.3 us, 0.3 sy, 44.5 ni, 54.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu22 : 0.0 us, 0.3 sy, 26.1 ni, 73.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu23 : 20.1 us, 0.0 sy, 15.7 ni, 64.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu24 : 7.6 us, 0.7 sy, 5.0 ni, 86.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu25 : 3.0 us, 0.3 sy, 14.9 ni, 81.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu26 : 0.3 us, 0.0 sy, 16.6 ni, 83.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu27 : 3.0 us, 0.7 sy, 0.0 ni, 96.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu28 : 0.7 us, 0.0 sy, 0.3 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu29 : 8.3 us, 0.0 sy, 0.7 ni, 91.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu30 : 6.7 us, 0.3 sy, 9.7 ni, 83.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu31 : 4.0 us, 0.3 sy, 22.3 ni, 73.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu32 : 1.0 us, 0.0 sy, 24.6 ni, 74.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu33 : 10.6 us, 0.3 sy, 9.9 ni, 79.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu34 : 5.4 us, 0.0 sy, 2.7 ni, 91.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu35 : 6.6 us, 0.0 sy, 4.6 ni, 88.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu36 : 4.3 us, 0.0 sy, 17.1 ni, 78.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu37 : 5.6 us, 0.3 sy, 3.3 ni, 90.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu38 : 2.3 us, 0.0 sy, 8.6 ni, 89.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu39 : 2.3 us, 0.0 sy, 22.0 ni, 75.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu40 : 1.7 us, 0.0 sy, 17.4 ni, 80.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu41 : 6.0 us, 0.3 sy, 3.3 ni, 90.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu42 : 4.7 us, 0.3 sy, 15.7 ni, 79.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu43 : 7.9 us, 0.7 sy, 24.2 ni, 67.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu44 : 7.0 us, 0.3 sy, 28.3 ni, 64.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu45 : 29.1 us, 1.0 sy, 13.9 ni, 56.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu46 : 0.0 us, 0.0 sy, 45.3 ni, 54.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu47 : 0.0 us, 0.0 sy, 48.5 ni, 51.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
ffmpeg 訊息:
ffmpeg version 3.4.4-0ubuntu0.18.04.1 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 7 (Ubuntu 7.3.0-16ubuntu3)
configuration: --prefix=/usr --extra-version=0ubuntu0.18.04.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --disable-stripping --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-librsvg --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libopencv --enable-libx264 --enable-shared
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
libpostproc 54. 7.100 / 54. 7.100
烏班圖版本:
Linux ubuntu 4.15.0-46-generic #49-Ubuntu SMP Wed Feb 6 09:33:07 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
最後,這是編碼過程中輸出的片段:
frame=34048 fps=316 q=-1.0 Lsize= 119840kB time=00:23:40.03 bitrate= 691.3kbits/s dup=2 drop=0 speed=13.2x