Il cuore di tutti i sistemi informatici risiede nell'unità di elaborazione centrale. Questo processore per uso generico gestisce la maggior parte delle attività ed è limitato ai calcoli matematici di base. Le attività complicate possono richiedere combinazioni che si traducono in tempi di elaborazione più lunghi. Una varietà di attività, tuttavia, può rallentare il processore centrale di un computer.
Le schede grafiche con un'unità processore grafico sono uno dei processori specializzati che le persone hanno installato nei loro computer. Queste schede gestiscono calcoli complicati relativi alla grafica 2D e 3D. Questi sono così specializzati che rendono alcuni calcoli migliori del processore centrale. Ecco alcuni dei modi in cui le GPU stanno diventando importanti per qualcosa di più della grafica.
Accelerazione del video
La prima applicazione al di fuori della grafica 3D con cui le GPU sono state progettate per gestire è il video. I flussi video ad alta definizione richiedono la decodifica di dati compressi per produrre immagini ad alta risoluzione. Sia ATI che NVIDIA hanno sviluppato un software che consente al processore grafico di gestire questo processo di decodifica anziché alla CPU.
La scheda grafica aiuta a transcodificare il video da un formato grafico a un altro, ad esempio convertendo un file della videocamera per masterizzarlo su un DVD. Il computer deve prendere un formato e renderizzarlo nuovamente nell' altro formato. Questo processo utilizza molta potenza di calcolo. Il computer può completare il processo di transcodifica più velocemente che se si affidasse alla CPU utilizzando le capacità video del processore grafico.
Linea inferiore
SETI@Home era un'applicazione per computer distribuita chiamata pieghevole che consentiva al progetto Search for Extra-Terrestrial Intelligence di analizzare i segnali radio. Ha anche sfruttato la potenza di calcolo extra fornita dalla GPU di un computer. I motori di calcolo avanzati all'interno della GPU le hanno permesso di accelerare la quantità di dati elaborati in un determinato periodo di tempo rispetto all'utilizzo della sola CPU. SETI@Home potrebbe farlo con le schede grafiche NVIDIA utilizzando CUDA o Compute Unified Device Architecture. CUDA è una versione specializzata del codice C che può accedere alle GPU NVIDIA.
Adobe Creative Suite e Creative Cloud
L'ultima applicazione di grande nome che sfrutta l'accelerazione GPU è Adobe Creative Suite, a partire da CS4 e proseguendo attraverso la moderna suite di applicazioni. Ciò include molti dei prodotti di punta di Adobe, tra cui Photoshop e Premiere Pro. In sostanza, qualsiasi computer con una scheda grafica OpenGL 2.0 con almeno 512 MB di memoria video può essere utilizzato per accelerare varie attività all'interno di queste applicazioni.
Perché aggiungere questa funzionalità alle applicazioni Adobe? Photoshop e Premiere Pro, in particolare, hanno un gran numero di filtri specializzati che richiedono matematica di alto livello. Il tempo di rendering per immagini di grandi dimensioni o flussi video può essere completato più rapidamente utilizzando la GPU per scaricare molti di questi calcoli. Alcune persone potrebbero non notare alcuna differenza, mentre altre noteranno notevoli guadagni di tempo a seconda delle attività che utilizzano e della scheda grafica che utilizzano.
Linea inferiore
Il metodo standard per acquisire valute virtuali è attraverso un processo chiamato mining di criptovalute. In esso, usi il tuo computer come un relè per l'elaborazione degli hash di calcolo per gestire le transazioni. Una CPU può farlo a un livello. Tuttavia, una GPU su una scheda grafica offre un metodo più veloce. Di conseguenza, un PC con una GPU può generare valuta più velocemente di uno senza di essa.
OpenCL
Lo sviluppo più degno di nota nell'uso delle schede grafiche per prestazioni aggiuntive arriva con il rilascio delle specifiche OpenCL, o Open Computer Language. Questa specifica riunisce una varietà di processori per computer specializzati oltre a una GPU e una CPU per accelerare l'elaborazione. Tutti i tipi di applicazioni possono potenzialmente trarre vantaggio dall'utilizzo di un mix di processori diversi per aumentare la quantità di dati elaborati.
Cosa trattiene le GPU?
I processori specializzati non sono una novità per i computer. I processori grafici sono uno degli elementi di maggior successo e ampiamente utilizzati nel mondo informatico. Il problema è rendere questi processori specializzati accessibili ad applicazioni al di fuori della grafica. Gli autori di applicazioni devono scrivere codice specifico per ciascun processore grafico. Tuttavia, con la spinta verso standard più aperti, i computer utilizzeranno le loro schede grafiche più che mai.