Vediamo il termine “OpenCL” in molte notizie relative alle schede grafiche, ma sapete di cosa si tratta? In questo articolo ti daremo tutte le chiavi e perché è così importante nelle attuali schede grafiche. Sia nei giochi che per gli sviluppatori.
OpenCL nata nel 2008 dalla mano di Khronos Group, ma si trattava di una proposta iniziale di diversi colossi della tecnologia, tra cui il nome di Intel, NVIDIA, AMD e IBM, ad esempio. È nato come standard, ma siamo sicuri che non tutti sanno cosa sia veramente.
Cos’è OpenCL
Fare riferimento a “Apri linguaggio informatico“Ed è un standard aperto per multipiattaforma, cioè per il calcolo parallelo. Con multipiattaforma, ci riferiamo a software che possono funzionare su diversi sistemi operativi. Per questo motivo, il primo sistema operativo a supportarlo è stato Leopardo delle nevi.
OpenCL era un file proposta iniziale fatto da Manzana in collaborazione con i team tecnici di AMD, IBM, Qualcomm, Intel, NVIDIA e Khronos Group. Quindi è stato originariamente sviluppato da Apple, ma ora è gestito dal Khronos Group. Vale la pena ricordare che questo standard è stato successivamente migliorato da AMD e NVIDIA.
Diventa un file API (Application Programming Interface) che consente ai programmi di accedere a più processori simultaneamente per il calcolo parallelo. Tra i “processori” citati ci sono GPU e CPU, oltre a DSP e FPGA.
Pertanto, OpenCL aumenta l’efficienza di elaborazione per migliorare le prestazioni del programma. Dal 2008 è ampiamente utilizzato per accedere al GPU per eseguire attività di calcolo (GPGPU): ottieni il vantaggio della potenza di elaborazione della GPU per assistere la CPU nell’esecuzione di determinati calcoli.
Il spiegazione tecnica di OpenCL sarebbe che si tratta di un’estensione dei diversi linguaggi esistenti che permette di scegliere un pezzo di codice che viene eseguito più volte per differenziarlo dall’intero codice. Questo codice può essere eseguito su più processori.
Quindi, è un’estensione che integra le lingue C, C ++, Pitone, Giava, eccetera. OpenCL è utilizzato in server cloud e supercomputer, così come su personal computer e smartphone. Ad oggi, questa API ha servito numerosi settori professionali: medicina, mondo scientifico, formazione sulle reti neurali, ecc.
Come aumentate le prestazioni di elaborazione?
Spiegato in modo breve e semplice: meno mani, meno lavoro. La premessa della divisione del lavoro funziona allo stesso modo nel mondo dei computer, e per renderlo più visivo faremo un esempio.
Devi eseguire un calcolo matematico che consiste nell’aggiungere 3000 numeri.
Chi finirà per primo l’operazione? 500 persone o 2 matematici esperti?
Se ascoltiamo la logica, le 500 persone possono dividere il compito e, quindi, finire prima. Pensa al lavoro che devono fare i 2 esperti di matematica di fronte alle 500 persone.
Questo esempio cerca di illustrare l’equivalenza, ad esempio, di a processore dual core (i 2 esperti) e il processore più core (500 persone). Per questo stesso motivo, vediamo come le schede grafiche equipaggiano molti processori (chiamati processori stream), che sono piccoli, ma lavorando tutti insieme offrono una grande potenza finale.
AMD e NVIDIA hanno la propria API
Probabilmente hai sentito parlare di Vulkan e CUDA, verità? CUDA (Compute Unified Device Architecture) è un file API costruita sulla stessa premessa di OpenCL– Calcolo parallelo efficiente, ideale per accelerare i processi di elaborazione GPU. Quindi, vediamo nelle specifiche di ciascuna scheda grafica NVIDIA, i cosiddetti “CUDA cores”.
Nel caso di AMD, Vulkan è anche un file API sviluppata da Khronos Group. Vedrai che molti videogiochi usano questa API nelle loro impostazioni grafiche, specialmente quando usiamo un AMD. Detto questo, Vulkan è supportato anche da NVIDIA. Come dettaglio da menzionare, Khronos ha lanciato Estensioni finali del Ray Tracing di Vullkan il 23 novembre 2020.
Rimozione di AMD e NVIDIA, Intel continua a scommettere su OpenCL per la tua grafica Iris Xe integrata. In effetti, potremmo vedere questa API sulle schede grafiche di gioco che Intel vuole introdurre.
Dal rilascio di OpenCL nel 2008, Khronos non ha avuto molta fortuna, poiché le versioni 2.0 non sono state elogiate dalla critica. Il 13 ottobre 2020, OpenCL 3.0 stava lanciando in un altro tentativo di assumere il controllo dei sistemi operativi.