- Cos'è l'intelligenza artificiale?
- Mito o realtà dell'intelligenza della rete neurale?
- Protezione dell'accesso alle informazioni
- La vita nella nuvola
- Cloud computing
- Anonymizer come mezzo per proteggere la moneta elettronica
- Creazione di un blog aziendale
- Virus sui siti web
- Infinite distese di Internet. E-mail.
- Introduzione a OpenCL
- Sicurezza delle informazioni di una piccola organizzazione
- Sistemi di videoconferenza
Kretov Nikolai Nikolaevich: Introduzione a OpenCL
Lo sviluppo è guidato dal famigerato Khronos Group. Quello che promuove OpenGl e OpenAL. Inoltre, OpenGL e OpenCL provengono essenzialmente dalla stessa infrastruttura software e possono interagire in modo molto stretto.
L'essenza dell'idea è che non ci interessa assolutamente: il processore di fronte a noi o la scheda video. Estraiamo dalla piattaforma in quanto tale e consideriamo di avere N dispositivi informatici. OpenCL come standard descrive le regole per l'elaborazione su questi dispositivi. Pertanto, otteniamo un unico codice che sarà assolutamente portabile su qualsiasi piattaforma. AMD o Intel hai un processore, una scheda video nVidia o ATI o un server Blade con Cell-core: non importa affatto. L'applicazione funzionerà ovunque i dispositivi supportino lo standard OpenCL.
Vale la pena notare che stiamo parlando di calcolo parallelo sulle istruzioni SIMD.
OpenCL è un'estensione del linguaggio C. Abbiamo un'applicazione host e un'applicazione OpenCL. L'host prepara un set di dispositivi disponibili per l'uso e passa l'attività alla parte OpenCL per l'esecuzione. Successivamente, OpenCL soddisfa e restituisce il risultato all'host.
Il codice OpenCL viene archiviato in file *.cl e compilato in fase di esecuzione per una determinata architettura. Ciò garantisce la portabilità dell'applicazione.
Apple ha fatto un ulteriore passo avanti rilasciando il supporto a livello di kernel per OpenCL nel suo sistema operativo Snow Leopard, ottenendo significativi miglioramenti delle prestazioni.
A cosa serve?
OpenCL mangia bene gli algoritmi SIMD. Questo è ciò per cui è stato creato. E questa è crittografia varia, vari effetti di post-elaborazione, elaborazione del suono e vari modelli matematici, codifica video.
Per gli sviluppatori
Al momento sono disponibili versioni di nVidia OpenCL SDK e AMD OpenCL SDK. Puoi sempre scaricarli dai siti Web ufficiali di queste società.
Nei prossimi articoli ti spiegherò come utilizzare in pratica questa tecnologia nelle tue applicazioni.