Benvenuto su VideoMakers.net
Iscriviti per condividere la tua passione sul principale sito web italiano dedicato al VideoMaking!

Gli eventuali inserti pubblicitari all'interno delle discussioni sono visibili solo se non hai eseguito l'accesso al forum; ricordati di eseguire l'accesso o, se non sei ancora registrato, fallo QUI

Clicca qui per leggere le regole del forum
Proiettori, Masterizzatori e Player DVD, LCD, Plasma, TV, Schede Audio e Video, Motherboards, Usb, HD, Firewire e tutte le discussioni inerenti i problemi e suggerimenti Hardware.

Moderatore: Moderatori

da eNnvi
#1233435
Buonasera a tutti,
ho visto che molta gente chiede "quale scheda video è meglio fra queste 2" oppure "quale scheda video devo prendere" o ancora "ha senso investire in una scheda video" quindi cerco di raggruppare tutte le informazioni e esperienze raccolte, nonchè gli studi fatti per cercare di presentarvi una guida più o meno completa sulla scelta delle schede video per quanto riguarda il nostro campo del video editing (più in generale encoding/decoding, cgi, editing e color grading).

(Posto in sezione hardware, i moderatori poi decideranno se tenere qui o portare in consigli per gli acquisti)
[MOD EDIT]: La sezione va bene, Consigli Per Gli Acquisti è soggetta a pruning ad intervalli regloari.

Premetto che conosco molto bene il campo nVidia sia professionale (serie quadro) che "consumer" (serie geForce) ma meno per quanto riguarda AMD (anzi quasi 0), quindi se qualcuno esperto di AMD (ex ATI) vorrà integrare volentieri.

Ok cominciamo :D

Partiamo col definire cos'è una scheda video, cosa fa e perchè è importante (e se è importante).

Una scheda grafica può essere quasi vista come un computer a sè stante, infatti al suo interno vi è un processore (GPU) della ram (VRAM) e una memoria che contiene il codice macchina (firmware) necessario a far funzionare in armonia tutte le parti che contiene.
Nei nostri computer però viene visto come un componente e, come ogni componente, si specializza in una funzione. In particolare una scheda video, di norma, fa 2 cose:
- elabora le informazioni relative al video (effetti, correzioni di colore, rendering di luci, poligoni, nurbs, ecc)
- gestisce tutto l'output ovvero gli schermi
sul secondo punto ci sarebbe da dire che questa è una capacità delle schede video, esistono infatti delle schede chiamate unità di elaborazione grafica (esempi come la tesla k20 di nVidia) il cui unico compito è quello di generare le informazioni e basta e non di visualizzarle. Queste unità vengono, in genere, utilizzate nelle render farm in quanto lì i server devono generare e salvare immagini, è inutile visualizzarle quindi la gestione dei monitor è inutile.


E' utile una scheda video?
questo è un punto particolare, infatti dovremmo prima parlare dei sistemi con la quale un'immagine viene generata.
Nel campo della grafica per pc (e anche dell'editing per riflesso) le immagini vengono generate tramite dei motori grafici, spesso anche per quanto riguarda elementi 2D. Questi motori si dividono in:
- proprietari (ovvero l'azienda ha creato il sistema e ne detiene i diritti e concede l'implementazione solo pagando) come DirectX (Microsoft) e elaborazione CUDA (nVidia)
- liberi (ovvero sviluppati in genere da comunità indipendenti e concessi senza pagamento di licenze) quali OpenCL e OpenGL

In pratica possiamo dire che l'uso di una scheda video o un'altra è vincolato non al lavoro che facciamo ma al software di editing, composing, sculpting, ecc che andiamo ad utilizzare.

E' da dire che le schede video sono studiate in modo da far funzionare meglio questi motori grafici e supportarne certe versioni. Per quanto, ad esempio le openCL, possano usare GPU o CPU indifferentemente, con le GPU avranno molta più velocità perchè il chip è stato studiato per svolgere quel compito nella maniera più veloce possibile, rispetto magari alla CPU il cui compito principale è un altro.


Abbiamo detto che quindi ogni scheda grafica supporta tecnologie proprietarie che non sono dettate solo dalla marca. Infatti nella serie quadro della nVidia vengono inserite tecnologie che nella serie consumer non sono messe (tecnologie sviluppate da nVidia stessa). Inoltre il supporto varia nel tempo, 10 anni fa c'erano le DirectX 9, ad oggi siamo alle DirectX 12 che implementano più comandi, più funzioni, performance migliori, discorso analogo per ogni tipo di motore grafico che si utilizzi (sia esso proprietario o libero).

Quindi a seconda del software che andiamo ad utilizzare dobbiamo inanzitutto scegliere la scheda grafica che sfrutti al meglio quegli standard.

Andiamo a vedere qualche software utilizzato di norma e che tecnologie sfrutta.
Edius Pro 8
Andando a leggere nelle specifiche di Edius leggo "Supporting higher resolution than 1024x768 32-bit. Direct3D 9.0c or later and PixelShader Model 3.0 or later is required".
Direct3D è un "sottoinsieme" di tutto ciò che riguarda DirectX. Sia AMD che nVidia supportano questa tecnologia e la versione 9 è abbastanza "vecchia" quindi scegliere una delle 2 marche non cambia il come vengono interpretate le istruzioni. Quindi si ridurrà il confronto alle sole specifiche tecniche delle schede (che vedremo dopo)

Adobe
La suite adobe (tutta) si basa su motore grafico OpenCL o CUDA, è un caso di doppio motore grafico.
Cuda è un sistema proprietario nVidia quindi per poter usare quel sistema di elaborazione dovremo per forza utilizzare una scheda grafica nVidia.
Per quanto riguarda le OpenCL il discorso è più complesso, nel senso che è un motore che permette di usare sia GPU che CPU, ma con GPU avremo performance molto migliori nonchè precisione dell'immagine molto maggiore per motivi tecnici (e ci vorrebbe un topic solo per spiegare quelli).
Il sistema OpenCL, alla data del post, non ha ancora performance paragonabili al sistema nVidia. Detta in spicci scegliere una scheda grafica AMD della stessa fascia di categoria di una scheda nVidia (ad oggi) produrrà risultati più lenti, perchè la tecnologia migliore la sfrutta, per questo software, nVidia, col tempo, però, le cose potrebbero andare ad eguagliarsi o addirittura invertirsi.
ATTENZIONE! come riportato da adobe stessa fa eccezione after effects. Per quando riguarda l'esportazione valgono le valutazioni qui sopra, mentre per quanto riguarda il raytracing è necessaria una scheda nVidia in quanto sfrutta unicamente i CUDA cores

Final Cut Pro X
Final Cut usa unicamente tecnologia OpenCL (Apple è un po' quella che ha lanciato questa tecnologia), quindi va bene una qualsiasi scheda video che supporti tale tecnologia. Di per sè OpenCL, come detto, supporterebbe anche la CPU, ma una GPU, come detto studiata per queste cose, aumentera di molto la potenza. https://support.apple.com/it-it/HT202239 quì c'è una lista di GPU che supportano openCL su mac.

DaVinci Resolve
DaVinci supporta (a loro dire) indifferentemente nVidia o AMD, tuttavia supportano a pieno solo le serie "pro" (quadro e firepro) di queste schede. Ma c'è da aspettarselo in quanto è un software nato per il grading, e per queste cose vengono usati schermi a 10bit e l'uscita a 10bit sulla displayport è presente solo in queste serie (ad eccezione delle nVidia su linux, infatti anche le geForce buttano fuori a 10bit). Anche qui si riduce al solo confronto di specifiche tecniche.
Credo che usino OpenGL essendo l'unico motore grafico che può funzionare indistintamente su linux, windows e mac e i loro software girano su tutti i SO. (ma è una mia opinione, per quanto ne posso sapere possono anche usare un motore inventato da loro quindi..)

NUKE
Questo software usa motore grafico OpenGL, sono supportate tutte le GPU che supportino OpenGL 2.0 o superiore. Loro consigliano comunque l'uso di schede nVidia quadro (e seguirei il loro consiglio, perchè con quello che costa, meglio usare le configurazioni consigliate da loro ;) )

Sony Vegas Pro 13 (e movie studio)
Usano OpenCL, valgono le stesse considerazioni di Final Cut e Adobe, tendo presente che il supporto su windows delle OpenCL è inferiore, ma sono garantite più schede video.

Avid Media Composer
Non ho certezze sul motore usato MA diversi forum riportano l'uso sia di OpenCL che di CUDA, quindi valgono le stesse considerazioni di Adobe. Tuttavia Avid consiglia l'uso di schede pro e non fa distinzioni tra AMD e nVidia, ma se fosse vero che usa le CUDA andrei per nVidia, chiedo di confermare da qualcuno che usa il software.



Abbiamo quindi visto in linea di massima che marca utilizzare in base al software scelto. Ma la marca è troppo generale, per un confronto simbolico motoristico per ora abbiamo detto "usa mercedes" o "usa bmw" ma all'interno di ogni casa ci sono vari modelli e, spesso, anche il singolo modello prevede alcune modifiche (optional, motorizzazione) quindi come orientarci in questo mare di schede?

Come abbiamo detto una scheda video è come un computer a sè stante, quindi il suo processore (GPU) avrà dei parametri molto simili ai processori normali, in particolare avremo una frequenza di funzionamento, un numero di core, tecnologie supportate e tipi di memoria supportati. Così vedremo che anche di VRAM ne esistono di vari tipi e velocità.

In linea di massima possiamo confrontare 2 schede video differenti in base a questi parametri (in ordine):
- Tecnologie supportate
- Frequenza dei processori (clock speed/frequency)
- Larghezza di banda della memoria
- Quantità di memoria
- Tipo di memoria

I più esperti avranno notato che ho tralasciato forse il parametro più importante ovvero il numero di processori.
Vediamo di chiarire meglio il concetto.

Il numero di processori (numero di cuda cores/stream processors) è una dato che non è paragonabile tra marche diverse.
Una scheda video in genere ha più compiti del semplice calcolo normale, infatti fa calcoli "specifici" quali texturing, antialiasing, raytracing, ecc..
Infatti sarebbe come paragonare un motore 1.5 diesel della audi contro un 1.5 diesel della fiat, per quanto abbiano stessa cilindrata hanno tecnologie diverse e quindi risultati diversi.
Prendendo un esempio sulle schede video AMD usa un sistema di "raggruppamento" ovvero va ad utilizzare più processori, ognuno da con più cores (in genere 64).
Diverso è invece per nVidia dove le loro GPU hanno i CUDA che sono più processori single core.
La differenza tra uno e l'altro è relativa, sfruttabile in certi casi non in altri.


Ma analizziamo ogni singolo parametro
Tecnologie supportate
come detto prima il mondo si sta dividendo tra OpenCL e CUDA, nel caso in cui il vostro software funzioni tramite CUDA è NECESSARIO usare nVidia. Come essere certi che il vostro software usi CUDA? Molto semplice, basta cercarlo qui: http://www.nvidia.com/object/gpu-applications.html
Come vedete nel link oltre al semplice "usa cuda si/no" viene indicato il perchè in quel software viene sfruttata la tecnologia CUDA. Se quelle features non vi interessano non è obbligatorio avere una nVidia (a meno che il software non giri unicamente con quella tecnologia..)
E nel caso invece il software usi OpenCL? In quel caso la scelta della scheda grafica propende per AMD.
https://www.khronos.org/conformance/ado ... cts#opencl
qui c'è una lista di schede video che supportano le OpenCL, come vedete le nVidia supportano la versione 1.2 e non l'attuale versione 2.0 (non che ci siano state modifiche enormi, ma quanto basta per rendere un software qul 7% più veloce, e su filmati lunghi o composizioni complesse si nota)

E se siamo all'interno della stessa marca?
beh in quel caso la scelta si basa sempre sulle tecnologie supportate in primis. Infatti nel corso del tempo le tecnologie si sono evolute, non possiamo paragonare le openGL di 10 anni fa con quelle di oggi, e un supporto hardware è necessario, quindi versioni più aggiornate vuol dire funzionalità maggiori native, quindi più potenza, sempre che il nostro software le sfrutti. Ad esempio nel caso di EDIUS vengono usate le DirectX 9, ad oggi siamo alla 12. La scelta di marca è indifferente ma a livello prestazionale se prendessimo 2 schede della stessa marca, identiche ma una con DirectX 9 ed una con DirectX 12 non vedremmo differenze come potenza.

Prima parlavo di schede graifche pro e consumer ed indovinate la differenza? sono proprio le tecnologie supportate :oops:
Molte tecnologie proprietarie sono quasi indispensabili per quanto riguada parametri professionali, ad esempio nVidia mette a diposizione questa tecnologia: http://www.nvidia.it/object/advanced-rendering-it.html
ed indovinate un po'? funziona solo su schede quadro :slurp:
è questo il motivo per cui costano di più

ricapitolando, fra schede della stessa marca, la prima cosa da fare è verificare quali tecnologie supporta, vedere se sono necessarie (ovvero se sono sfruttate dal nostro software). Se ovviamente il nostro software richiede quelle tecnologie per funzionare non potremo comprare schede che non supportano quella tecnologia, mentre se è un "plus" (vedi advanced rendering per mental ray) dovremo valutare se è veramente ciò che ci serve, ma la regola è "se non so se mi serve, adesso non mi serve" ;)


(ok è tardi, domani ho università quindi anche per stasera chiudo la puntata, domani spero di poter scrivere di più.. se intanto mi date consigli su cosa spiegare meglio, dubbi ecc provo a sistemare)
Ultima modifica di eNnvi il mer, 16 mar 2016 - 00:07, modificato 1 volta in totale.
da willyfan
#1233439
Aggiungerei alcune cose, ovvero i sw 3D di animazione o rendering (o entrambe).
Sia per modellare (un po' tutti) che per il rendering (ad esempio mental ray, uno dei motori usatissimi con Maya) le schede grafiche hanno il loro peso.
Invece, non sono certo che la suite Adobe lavori TUTTA sia in Cuda che openCL, perchè mi pare che se con Adobe si possono usare le schede nvidia o ati, per AE ad esempio mi risultava compatibilità solo con Nvidia
da eNnvi
#1233440
Adobe sfrutta il Mercury engine su tutta la suite, almeno ricordavo così. Domani verifico e aggiungo anche i software di modellazione, ma volevo fare un paragrafo a parte perché stanno sempre più usando motori grafici da gioco più che da editing
da willyfan
#1233441
Si, è vero, ma AE usa solo Nvidia per il rendering in raytracing, mentre van bene anche altre schede per l'uso "normale".
da eNnvi
#1233544
vero, ho controllato, per raytracing usa solo cuda, e nemmeno tutte. Intanto so che non è completa la guida ma se potete darmi consigli e dirmi cosa non è chiaro sistemo mentre vado avanti
da eNnvi
#1233556
Che io sappia solo AE é vincolato a CUDA

Sent by LG G4

Ho cercato informazioni a riguardo che mi hanno riportato a questa pagina
http://blogs.adobe.com/aftereffects/201 ... s-cs6.html
quindi è vero che per il raytracing 3D è necessaria una scheda nVidia, mentre per quanto riguarda tutto il resto può funzionare anche sotto OpenCL quindi con qualsiasi scheda grafica (che sia AMD, nVidia o Intel)
da Rider
#1234023
Complimenti eNnvi,
per la bella iniziativa e la conoscenza della materia che metti a disposizione :appl: :appl: :appl:
da eNnvi
#1234025
chiedo scusa se non sto andando avanti, c'è ancora lavoro da fare ma sto raccogliendo esperienze e test (vedi altri topic) e sono abbastanza preso con università ed altri problemi personali
#1234223
Preciso che Sony Vegas Pro può usare anche CUDA (che può dare prestazioni migliori di OpenCL).
Sony Catalyst Production Suite (composta da Sony Catalyst Prepare e Sony Catalyst Edit) sfrutta invece esclusivamente OpenCL e OpenGL.

Ciao
da LordYupa
#1234230
Aggiungo delle precisazioni anche io giusto per chiarezza:

After effect lavora con la gpu purtroppo raramente. solo per qualche effetto, il resto è ancora tutta cpu. Si può mettere in modalita di visualizzazione bozza veloce ed effettivamente va in opengl ma questa modalità non fa vedere bene gli effetti ed è praticamente inutile e non funziona in rendering.

DaVinci era fino a pochissimo tempo fa solo cuda tant'è vero che senza una scheda nvidia neanche partiva e dava errore cuda! Adesso sfrutta sia cuda per nvidia che opencl per ati. sulle ati non l'ho mai provato!

Manca Fusion che nel render 3d sfrutta a pieno le opengl
da willyfan
#1257085
Ho una domanda, che mi sembra attinente a questo vecchio topic.
Con Adobe in particolare, per avere i 10 bit in uscita occorre usare un quadro, che però in genere difetta di cuda per la potenza di calcolo (a pari costo).
In alternativa, funzionante anche con davinci, si può montare una scheda blackmagic ma si perde il desktop.
Mi facevo questa domanda: nessuno ha provato ad installare due GPU, ad esempio una quadro economica solo per l'output a 10 bit e un minimo di openGL, accanto a una Gforce? Se si, come è stata installata e come gestiti i driver?

Premetto che l'alternativa blackmagic va bene ma avrei anche l'uscita a 24 fps non certo a 60, almeno su molti monitor.
da LordYupa
#1257123
Ci ho provato io, ma ho avuto problemi con i driver. Secondo me lo fanno di proposito perché le quadro vanno affiancate alle tesla. Alla fine la soluzione con l'intensity shuttle a me va benissimo
  • 1
  • 2
  • 3
  • 4
  • 5
  • 13

Mi sono imbattuto in questo video alla ricerca di […]

Non c'è davvero niente di meglio sul web […]

Nota: non conosco i requisiti del mio pc. quind[…]

Sicuramente ci sarà un metodo più ve[…]