Робота над ділянкою трубки . Я біг відео через FFmpeg на Linux виділеного сервера для перетворення в mp4 .
Характеристики сервера:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 8
On-line CPU(s) list: 0-7
Thread(s) per core: 2
Core(s) per socket: 4
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Stepping: 3
CPU MHz: 3491.749
BogoMIPS: 6983.49
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 8192K
NUMA node0 CPU(s): 0-7
Проблема під час тестування полягає в тому, що навіть роблячи 4-5 одночасно, сервер завантажується в середньому приблизно в 36. Це лише одна людина. Я думаю, що коли це відкриється, багато людей одразу завантажуватимуть.
Здається, ffmpeg намагається використати всі доступні ресурси за конверсію.
Я чув, що є параметр-нитки, який можна змінити, але я не можу його знайти. У мене є 8 процесорних серверів. Він використовується лише для конверсій, тому я чув, що найкраще налаштування було б від 2 до 4. Я можу перевірити його.
Але як я можу змінити цей параметр? Все, що я бачу в Інтернеті, обговорює цей параметр, але не кроки щодо його зміни.
-threads
перед введенням ви застосовуєте цю опцію вхід (декодер). Узагальнене використання єffmpeg [global options] [input options] -i input [output options] output
.