Qual é a diferença entre renderizar vídeo em um processador high-end e um processador low-end?

27

Atualmente, estou fazendo renderização de vídeo e uma coisa que me deixa totalmente confuso é se alguém usa um laptop barato para renderizar vídeos.

  1. O vídeo renderizado em um laptop i7 high-end parece melhor do que o vídeo renderizado em um laptop dual-core? (Os gráficos Intel HD são importantes, os quais são usados ​​em ambos?)

  2. A renderização de vídeo prejudica o desempenho do processador após um período de tempo (indo 100% por minutos)?

Anirudha Gupta
fonte
Uma CPU mais poderosa pode realmente piorar a saída de vídeo (ligeiramente) se a renderização de vídeo da GPU incorporada for usada, em vez de uma solução de software pura.
Ignacio Vazquez-Abrams
2
@ IgnacioVazquez-Abrams Então ... qual é a diferença entre o seu HD4400 em uma i5-4210U e o HD4400 em uma i7-4600U? Resposta: A velocidade / data da CPU não tem nada a ver com a existência de uma GPU integrada (tornando-a APU, efetivamente) ou não. Por exemplo, meu i7-5820k não oferece uma GPU integrada - e certamente não é menos poderoso que meu i5-4210U.
Flolilo 04/07/19
@flolilolilo: Pode, não faz. Obviamente, isso não é considerado quando uma GPU integrada não está presente.
Ignacio Vazquez-Abrams
2
@ IgnacioVazquez-Abrams bem, então é como dizer "Uma CPU menos poderosa pode realmente ...". O que se trata: a data de lançamento da CPU e / ou quão poderosa ela não tem nada a ver com o uso de um software a (algumas vezes) GPU disponível no chip e a disponibilidade de uma GPU na matriz da CPU não têm nada a ver com o uso ou não do software. (Bem, exceto pelo fato de que, se não houver GPU, ele não poderá ser usado. Mas, novamente, isso não ajuda a responder à questão de saber se uma CPU Atom fornece renderização de qualidade superior à CPU Core X ou vice-versa.)
flolilo
1
@ IgnacioVazquez-Abrams: Acho que você está falando sobre codificação de vídeo por hardware , egh264 com o Intel Quick Sync, em vez de um codificador de software de alta qualidade como x264 . A última vez que verifiquei, havia uma notável diferença de qualidade por taxa de bits entre os codificadores HW e x264 -preset slower; Para vídeos que serão compactados uma vez, mas enviados pela Internet várias vezes ou mantidos em disco para sempre, gastar tempo / eletricidade extras na CPU deve compensar a longo prazo. Mas isso é parte da renderização em 3D.
Peter Cordes

Respostas:

42

O i7 gera melhor qualidade de imagem que o dual core (os gráficos Intel HD são importantes nos dois)?

Não, não faz. Ambos renderizam com a qualidade que você pede, no entanto, renderizar é uma tarefa realmente computacionalmente pesada; portanto, renderizar com um i7 será muito mais rápido que renderizar com um processador dual-core de baixo custo .
E não, o Processador gráfico interno ( Intel HD Graphics , neste caso) não importa, pois a renderização usa apenas a CPU. No entanto, alguns aplicativos para renderização podem usar seu IGP (Intel HD) ou GPU (sua placa gráfica discreta, se houver alguma) para renderizar uma imagem, o que levará a um resultado completamente diferente. A maioria das CPUs de nível de consumidor é melhor na renderização do que as GPUs comuns e muito, muito melhor do queIGP s (tanto em qualidade [devido a melhores algoritmos computacionais] quanto em velocidade, no entanto, isso não se aplica a este caso). Portanto, lembre-se disso, pois varia de aplicativo para aplicativo. (crédito a @CliffArmstrong pela sugestão)


O processador é degradado após um curto período de tempo porque eu os uso para renderizar vídeos? (os vídeos usam 100% da CPU por minutos)

Não, os processadores não se degradam. Eles são fabricados para que você não precise alterá-los regularmente. Verifique esta resposta para obter informações mais detalhadas.


Se o aplicativo que está sendo renderizado no momento fizer uso de multithreading , os processadores mais novos que também possuem uma contagem de núcleos mais alta poderão executar a mesma tarefa muito mais rapidamente.
Por exemplo, digamos que temos um processador i7 de 8 núcleos mais novo e um processador dual core regular mais antigo e digamos que cada núcleo possui 2 threads . Isso os torna um processador com 16 threads e um processador com 4 threads . Teoricamente, se o aplicativo utilizasse todos os núcleos e especificássemos que a imagem era de qualidade 1080p (Full HD), o processador i7 renderizaria teoricamente a imagem4 vezes mais rápido que o processador de núcleo duplo (se todos os núcleos funcionarem na mesma frequência nos dois processadores). No entanto, a qualidade da imagem ainda seria 1080p, então eles renderizarão a mesma qualidade de imagem, mas em momentos diferentes.

E enquanto os processadores recebem tarefas tão pesadas, eles começam a produzir muito mais calor , o que pode ser perigoso . O resfriamento adequado é essencial para a execução de tarefas, como o @Tetsujin mencionado em sua resposta, ou sua CPU pode começar a se acelerar para reduzir o calor.

Fanatique
fonte
5
O processamento com um processador de última geração será mais rápido, portanto, você poderá obter uma qualidade mais alta ao mesmo tempo. Se você tiver um prazo apertado, isso pode significar que um processador mais rápido se traduz em melhor qualidade. Quanto ao processador "degradante", os processadores Intel mais novos não fazem overclock, contanto que a sala de calor permita? Executar 100% por minutos não danificaria o processador, mas reduziria a velocidade do processador depois de um tempo para evitar problemas, o que é uma espécie de degradação do desempenho em comparação com uma tarefa mais curta.
21918 ilkkachu
3
se a comparação for de 10 núcleos versus 1 núcleos, teoricamente a redução de tempo poderá ser no máximo dez vezes maior (geralmente consideravelmente menor). Apenas
nitpicking :)
15
Todos os materiais semicondutores dopados sofrem degradação térmica ao longo do tempo, mas deve levar muito tempo até que uma CPU falhe devido a ela, mesmo que funcione com carga máxima contínua (dentro de suas especificações elétricas e térmicas), certamente mais do que a CPU precisa para se tornar no tópico sobre retrocomputação .
David Foerster
3
Vale ressaltar que, dependendo do software de transcodificação / renderização usado, ele pode mudar para o uso de recursos de transcodificação integrados da GPU / IGP em hardware onde está disponível ... o que resulta em perda de qualidade visual. A maioria dos bons softwares de renderização / transcodificação evita isso por padrão ... pois esses recursos de renderização de hardware destinam-se à reprodução com desempenho ... não à renderização.
Cliff Armstrong
2
Fora executar , sim. Porém, a maioria das CPUs de nível consumidor com IGPs e GPUs discretas usa matemática menos precisa para seus cálculos. Isso tornará os quadros mais rápidos ... mas eles perderão a qualidade nessa precisão de cores, o desbloqueio, etc. será menos correto do que se você estivesse usando um algoritmo mais preciso. Não é perceptível para o usuário médio ... mas é significativo para os criadores de conteúdo.
Cliff Armstrong
22

Enquanto a máquina puder se manter fria o suficiente, a única diferença será o tempo gasto.

Ao renderizar vídeo mesmo em um Xeon de 12 núcleos, eu intencionalmente acelero os fãs até o máximo. Embora a máquina seja perfeitamente capaz de se manter fria, ela considera "frio o suficiente" como 1 ° C em 'procHot', que é a temperatura máxima especificada pela Intel para o processador [98 ° C para esse processador em particular, você precisa verifique os números da Intel por conta própria].

Eu só gosto de dar um pouco mais de espaço, mas talvez seja apenas eu sendo um pouco paranóica.

Por outro lado, se não conseguir se manter em procHot, acabará causando falhas / BSODs a curto prazo ou até danos a longo prazo.

O resfriamento é primordial ao executar tarefas intensivas.

Tetsujin
fonte
3
A CPU reduzirá a frequência e a tensão do relógio ("aceleração") se atingir níveis perigosos de temperatura. É claro que isso prejudica o desempenho, mas não prejudica a CPU. Geralmente, é realmente difícil matar CPUs e GPUs modernas com superaquecimento. Teoricamente, altas temperaturas são ruins para a vida útil do silício, mas eu não vi nenhum número sobre o quão ruim é realmente (ou seja, estamos falando de 3 semanas ou 3 anos até a falha durante a execução, por exemplo, a 90 ° C continuamente?).
Michael
3
Prefiro não arriscar, tbh. Eu conheço a teoria, mas os fãs são baratos, os Xeons também não ;-) Eu também nunca perdi um fã ou PSU, em pelo menos 10 anos.
Tetsujin
4
@ Michael A regra geral que ouvi sobre circuitos integrados (não especificamente sobre CPUs) é que você pode reduzir a vida útil pela metade para cada 10C extra. Mas apenas a Intel sabe em que número de temperatura / vida útil devemos começar.
mbrig
A vida útil na metade dos negócios é específica para capacitores eletrolíticos, eles têm um líquido interno que pode secar ou degradar. As tampas eletrolíticas são usadas apenas na placa de circuito impresso onde é necessária uma grande quantidade de capacitância de baixo custo, elas não estão na ou mesmo muito próximas à CPU. A vida útil da CPU não é alterada significativamente até que você atinja um limite de alta temperatura (geralmente acima de 80-90c, depende do modelo) que faz com que os elétrons nos materiais isolantes dancem mais rápido do que em algum nível crítico ou se for usada uma tensão maior do que a projetada. (quer gatilhos "degradação" elétrico, geralmente irreversíveis)
Max Power
@ Michael Eu queimei um núcleo no meu i7 6700k depois de um ano, então não acho que seja impossível. A Intel foi ótima com RMA! Além disso, o sistema operacional deve estar ciente e acelerar a CPU, o ESXi nem sempre faz isso, por exemplo, motivo pelo qual mudei para o KVM.
FreeSoftwareServers
13

Ao executar exatamente o mesmo codificador de software (programa) com exatamente as mesmas opções e configurações em dois processadores diferentes, você obterá exatamente o mesmo resultado. A única diferença será o tempo necessário para a codificação.

Usar exatamente o mesmo programa, exatamente a mesma configuração e exatamente a mesma entrada deve fornecer a mesma qualidade de saída quando executado em um processador Xeon, i7, i3 ou mesmo Celeron.

Se você usar codificadores ou decodificadores de vídeo de hardware embutidos, poderá obter resultados diferentes, pois eles podem ser configurados ou otimizados de maneira diferente entre as gerações do processador e o hardware mais recente pode suportar recursos mais novos. Da mesma forma que o uso de uma cópia de 5 anos do ffmpeg pode ser mais lento ou produzir resultados ligeiramente diferentes para uma determinada configuração que uma versão mais recente, os diferentes codificadores de vídeo de hardware podem ser considerados equivalentes a diferentes versões do "software", embora versões que não possam ser atualizadas sem substituir o hardware.

O processador em si provavelmente não se degradará, mas como o processador fica mais quente, os ventiladores ficam mais difíceis, a fonte de alimentação funciona mais e, em geral, o sistema funciona mais e mais quente do que seria se você não estivesse fazendo a codificação. Em teoria, esse trabalho extra pode ser um esforço extra para o seu sistema, mas, na prática, seu sistema deve ser projetado bem o suficiente para que a diferença entre você usá-lo dessa maneira e não usá-lo de maneira alguma signifique que a vida útil de o sistema será o mais próximo possível do que não faz diferença.

Se você tiver uma fonte de alimentação ou sistema de refrigeração que não seja projetado ou especificado o suficiente para corresponder à carga do seu sistema, poderá causar uma falha mais cedo do que deveria.

A execução de tarefas exigentes em uma PSU com pouca potência pode causar superaquecimento e queima de componentes dentro da PSU, ou pode "escurecer" causando instabilidade no sistema. A menos que você tenha comprado uma máquina pré-fabricada de porão de barganha ou a montada com o menor suprimento possível, você pode achar que isso não deve ser o caso.

Mokubai
fonte
Olá @Mokubai, estou usando o binário de compilação do ffmpeg em ffmpeg.org no windows plateform, verifique se o comando em execução no ffmpeg usa codificação de hardware.
Anirudha Gupta 04/07
2
A menos que sua linha de comando mencione especificamente "nvenc" (nvidia), libmfx (Intel) ou um dos outros codificadores de hardware mencionados em trac.ffmpeg.org/wiki/HWAccelIntro , acredito que usará o codificador libx264 do software. O Ffmpeg assume como padrão a codificação de software. Nesse caso, você deve obter o mesmo resultado nas plataformas. Uma vez que você começar permitindo hardware codificadores a codificação pode ser muito mais rápido, mas os resultados irão variar.
Mokubai
Na verdade não; x264, por exemplo, pode produzir uma saída não determinística ao usar mais de 1 thread, e também há uma chance de uma degradação muito pequena da qualidade / tamanho ao usar mais de 1 thread, o que aumenta com mais threads, mas é apenas teoria, não vale a pena se preocupar. ainda assim, os arquivos não serão exatamente os mesmos no nível do fluxo de bits. Portanto, se alguém está usando um codificador determinístico, isso é verdade, mas nem todos os codificadores multithread são determinísticos.
Sarge Borsch
3

Em um laptop, geralmente não. No entanto, muitos laptops não são fabricados para durar. A CPU pode não se degradar, mas algo o fará. É abusivo usar um laptop dessa maneira, mesmo um laptop de "jogos".

A sobrecarga de tensão e as taxas de clock excedidas reduzirão a vida útil de muitos componentes de estações de trabalho e desktops. Isso se aplica também às placas gráficas. Isso não é necessariamente uma degradação para uma CPU, mas uma falha.

Uma GPU pode sair da fábrica com problemas latentes e trabalhar com eles pode revelar os defeitos. é por isso que temos agora ECC Ram em placas gráficas. Não vou mencionar nenhuma marca, mas há uma razão para haver uma garantia.

mckenzm
fonte
Por curiosidade, esses "problemas latentes" estão relacionados ao "erro 43"?
Mehrdad
Na verdade, o motivo da RAM do ECC é que as pessoas fazem muita computação em GPU hoje em dia, e diferentemente dos gráficos em que ninguém percebe um erro de bit (quase ninguém percebe quando a matemática de ponto flutuante tem vários bits de precisão ou quando as derivadas são calculadas incorretamente), ao executar tarefas de computação, você quer um pouco mais de confiabilidade. Embora eu concorde com sua posição geral de que certamente há desgaste nos processadores quando eles executam com 100% de carga, especialmente em laptops.
Damon
-2

Isso dependerá de quanto da computação acontece na CPU e quanto acontece na GPU.

Em geral, as CPUs realizam mais o trabalho serial, onde muitas ramificações ocorrem e as GPUs realizam mais o trabalho que executa a mesma operação em uma grande quantidade de dados (ou seja, em cada pixel).

Além disso, a quantidade de núcleos ajuda apenas se a renderização usar vários núcleos. Muitos aplicativos não utilizam totalmente todos os núcleos. Portanto, um processador de 8 núcleos (ou quadcore com hyperthreading) quase nunca dará um aumento de 8 vezes na velocidade.

Um aplicativo que não é otimizado para multithreading nem sequer acelera.

Para responder suas perguntas:

  1. Não, será exatamente o mesmo, pois as mesmas operações são executadas.

  2. Considerando o que escrevi acima, depende se a temperatura da sua CPU aumentar acima de um certo limite, o que fará com que a CPU se ajuste para não aumentar mais a temperatura. Portanto, se a CPU estiver fazendo muito trabalho, ela diminuirá a velocidade após algum tempo de carga total, especialmente em laptops (gabinete pequeno, resfriamento ruim). Se por degradação você quer dizer degradação a longo prazo, consulte as respostas acima (tl dr; elas não se degradam muito).

Dorian Appeldoorn
fonte
2
sua resposta não responde à pergunta da OP, em particular haverá perda de qualidade. Não é uma pergunta sobre velocidade.
Ahmed Masud