Translation(s): English - Français - Italiano


ATI Stream è la libreria OpenCL per schede grafiche AMD/ATI. Viene ora commercializzata come APP (Accelerated Parallel Processing, elaborazione parallela accelerata).1 Utilizza la GPU della scheda video per eseguire calcoli paralleli ad alte prestazioni. Il codice OpenCL per indirizzare l'hardware è comunque funzionale senza l'hardware adatto ed è possibile lo sviluppo, ad esempio, su un laptop non troppo recente con una scheda Intel.

Installazione

Il SDK (Software Development Kit) AMD non è software libero, i pacchetti binari per amd64 e i386 sono forniti direttamente a monte e possono essere installati facilmente, seppur la procedura risulti noiosa. Le librerie OpenCL per eseguire i binari sono ora (cioè a partire dalla versione 11.11 di Catalyst / fglrx) distribuite anche con il driver del produttore per le schede grafiche. Debian offre tutti i driver di AMD in una serie di pacchetti separati per architettura; la libreria APP/Stream è distribuita come amd-libopencl1. Per cui per ottenere OpenCL eseguire sulla propria macchina un semplice

apt-get install amd-libopencl1

dovrebbe essere sufficiente. Per il supporto completo all'accelerazione è solo necessario anche il driver grafico non-libero fglrx di AMD come descritto alla pagina dei driver ATI proprietari.

Per i rilasci precedenti di fglrx, qualche buon'anima chiamata nou aveva preparato dei pacchetti Debian esterni chiamati amd-app per fornire le librerie Stream AMD e la loro API2 che avevano il vantaggio di installare librerie sia a 32 bit sia a 64, mentre la amd-libopencl1 di Debian fornisce solo quelle per le rispettive piattaforme. Ora che Debian sta adottando la tecnologia [Multiarch|multi-architettura] nel pacchetto di dpkg in experimental, questo non è più necessario. Quindi per eseguire le librerie OpenCL a 32bit su una piattaforma a 64bit:

sudo apt-get install multiarch-support fglrx-glx-ia32
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install amd-libopencl1:i386

Alcuni ulteriori suggerimenti per risparmiare tempo si trovano nel wiki non ufficiale dei driver Linux per i processori AMD3.

Sviluppo

Sviluppando le proprie applicazioni OpenCL, i pacchetti esterni amd-app precedenti4 avevano il loro pacchetto -dev, questo non è richiesto per i pacchetti Debian. È possibile condividere il pacchetto opencl-headers con le librerie prima menzionate; nessun -dev separato è necessario, dopotutto si tratta di uno standard.

Contribuire a BOINC

Quando si esegue BOINC (o qualsiasi binario esterno) con il proprio hardware magnifico, e lo si fa solo per testare le impostazioni, considerare che, ad esempio, il progetto Primegrid fornisce un reale binario OpenCL a 64 bit. Albert è a 32 bit e perciò non funziona su amd64 con la libreria a 64 bit di Debian con un messaggio di errore "file non trovato". Si può testare la piattaforma eseguendo ldd /var/lib/boinc/project/nomeprogetto/nomebinario, che dovrebbe trovare il binario OpenCL.

Riferimenti