Sono interessato a eseguire il calcolo con accelerazione GPU in iOS (per iPhone 3G e 4). Sfortunatamente, nessuno dei due dispositivi supporta OpenCL, quindi sembra che l'unica scelta sia quella di esprimere i dati del programma come dati grafici e utilizzare gli shader programmabili OpenGL ES 2.0 (vertice e frammento) per eseguire il lavoro. Qualcuno può raccomandare risorse che potrebbero essere utili? Il codice di esempio è il Santo Graal.Risorse per eseguire il calcolo con accelerazione GPU (GPGPU) su iPhone?
risposta
Ho un semplice progetto che potrebbe aiutarti a iniziare la programmazione della tua GPU. È comunque in GLSL.
Lo scopo del mio progetto è creare un piccolo framework per testare diversi shader GLSL. Tutto quello che dovete fare è modificare i file shaders, non c'è bisogno di preoccuparsi di creare l'installazione OpenGL gasdotto & OpenGL UIView compatibile, ecc
Il pronti contro termine è qui https://github.com/torinnguyen/Ripple
Ci sono diversi modi per farlo questo ormai. Se si desidera supportare dispositivi meno recenti, è necessario attenersi agli shader OpenGL ES 2.0. Ci sono i quadri GPUImage e ogles_gpgpu per questo. Quest'ultimo supporta anche i sistemi Android.
Ho anche scritto una tesi di master su questo argomento: Parallel Computing for Digital Signal Processing on Mobile Device GPUs.
Ora puoi fare cose GPGPU più avanzate con OpenGL ES 3.0. Controlla ad esempio this post. Apple ora ha anche la "Metal API" che consente ancora più operazioni di calcolo della GPU. Entrambi, OpenGL ES 3.xe Metal sono supportati solo dai nuovi dispositivi con chip A7.
upvoted per la tua tesi di master essendo una lettura interessante –