Cosa causa la saturazione della CPU quando la transcodifica hardware e l’IA video vengono eseguite insieme?

Eva Wong è la Technical Writer e smanettatrice residente di ZimaSpace. Una geek da sempre con una passione per homelab e software open-source, si specializza nel tradurre concetti tecnici complessi in guide accessibili e pratiche. Eva crede che l'auto-ospitare debba essere divertente, non intimidatorio. Attraverso i suoi tutorial, dà potere alla comunità di demistificare le configurazioni hardware, dalla costruzione del loro primo NAS al dominio dei container Docker.

La saturazione della CPU si verifica perché la transcodifica hardware e l'AI video condividono ancora il supporto alla decodifica lato host, la preparazione dei fotogrammi, le copie in memoria, l'audio e le attività di pianificazione.

Un server domestico può mostrare un encoder hardware attivo mentre l'utilizzo della CPU raggiunge il cento per cento dopo l'avvio dell'AI della telecamera o dell'analisi multimediale. I blocchi codec accelerano le operazioni di decodifica o codifica supportate, non l'intera pipeline. Demuxing, profili non supportati, ridimensionamento, conversione dello spazio colore, trasferimento dei fotogrammi, pre-elaborazione per il rilevamento degli oggetti, tracciamento, audio, sottotitoli, rete e archiviazione possono competere per gli stessi core e la stessa larghezza di banda della memoria.

Lo scaricamento parziale sull'hardware lascia importanti fasi alla CPU

Il percorso multimediale analizza i contenitori, decodifica il video, filtra i fotogrammi, codifica l'output, gestisce l'audio e scrive i pacchetti di trasporto. Il supporto hardware può coprire solo determinati codec, profondità di bit, risoluzioni o filtri; le fasi non supportate ricadono sul software.

La panoramica sullo scaricamento parziale della transcodifica distingue i percorsi di decodifica e codifica supportati dai filtri e dai profili che possono ricadere sulla CPU. Il segnale caratteristico è un motore hardware attivo insieme a thread software per filtri, audio, sottotitoli o decodifica alternativa.

Un badge di transcodifica hardware non dimostra lo scaricamento end-to-end. Esamina la selezione di codec e filtri per ogni fase prima di attribuire la saturazione esclusivamente all'AI. Questa distinzione resta visibile durante i successivi test domestici.

L'AI video aggiunge decodifica, copie e pre-elaborazione

Il rilevamento degli oggetti richiede fotogrammi selezionati in un formato di input del modello. Il sistema può decodificare un secondo flusso, copiare le superfici dalla GPU alla CPU, ridimensionare, normalizzare, convertire i colori, creare batch di tensori e tracciare i risultati anche quando l'inferenza viene eseguita su un acceleratore.

Una panoramica sulla pre-elaborazione per la computer vision spiega perché il ridimensionamento, la normalizzazione, la conversione dei colori e altre trasformazioni precedono l'inferenza di computer vision. Queste fasi possono caricare i core dell'host anche quando il modello viene eseguito su un acceleratore. Il risultato intermedio deve restare ispezionabile prima di procedere con l'automazione.

Se ridurre la frequenza dei fotogrammi dell'AI diminuisce l'utilizzo della CPU mentre l'utilizzo del dispositivo di inferenza resta simile, è probabile che prevalgano la pre-elaborazione o il tracciamento. Se la CPU diminuisce solo dopo la modifica del profilo del codec, il ricorso alla decodifica software è più probabile. Questo confine deve essere misurato separatamente in condizioni operative realistiche.

La larghezza di banda della memoria condivisa e la pianificazione amplificano la contesa

GPU integrate, motori codec, core della CPU e acceleratori AI possono condividere la RAM di sistema. Le copie simultanee dei fotogrammi e le superfici di grandi dimensioni aumentano i cache miss e la pressione sulla memoria, mentre numerosi thread di lavoro creano cambi di contesto e contesa nelle code.

La matrice del supporto all'accelerazione dei codec mostra che il supporto all'accelerazione dipende dal codec, dal profilo, dalla profondità di bit e dalla generazione hardware. I formati o i trasferimenti non corrispondenti possono riportare il lavoro sulla CPU e sulla memoria condivisa. La conseguenza pratica emerge quando più sorgenti competono per un contesto limitato.

Il confine del problema è rappresentato da un utilizzo elevato della CPU causato da scansioni non correlate, miniature o crittografia dell'archiviazione durante la stessa finestra temporale. Metti in correlazione i thread per processo e le fasi della pipeline invece di usare solo l'utilizzo totale della CPU. Questa dipendenza deve restare esplicita nell'interfaccia finale.

-15% OFF

Crea un profilo della CPU e delle copie delle superfici per ogni fase

Riproduci file multimediali e clip della telecamera fissi registrando demuxing, motore di decodifica, ricorso al software, grafo dei filtri, ridimensionamento, conversione dello spazio colore, copie delle superfici, codifica, audio, sottotitoli, frequenza dei fotogrammi dell'AI, pre-elaborazione, inferenza, tracciamento, larghezza di banda della memoria, coda di esecuzione, archiviazione e utilizzo della CPU per processo.

Usa il test dei colli di bottiglia della CPU per classificare i limiti di CPU, memoria, rete e archiviazione. Testa la sola transcodifica, la sola AI, entrambe insieme, i percorsi a copia zero e una frequenza ridotta dei fotogrammi dell'AI senza modificare le clip sorgente. Il risultato deve quindi essere verificato rispetto alle prove originali.

Correggi la fase che cresce solo nell'esecuzione combinata. Usa formati supportati, evita decodifiche e copie duplicate, limita i worker di pre-elaborazione oppure pianifica i carichi di lavoro; acquistare una CPU più veloce è prematuro quando un singolo filtro non supportato forza il ricorso al software.

Hub Tecnologico e AI

Altro da leggere

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.