Kürzlich möchte ich die Parallel-Computing-Anwendung auf Android-Verwendung OpenCL entwickeln. Soweit ich weiß, Android-System enthält nicht "libopencl.so", aber es gibt immer noch einige Websites oder Blogs zeigen OpenCL-Entwicklung auf Android. Unterstützt Android OpenCL? Wenn ja, was sollte ich tun, um OpenCL auf Android zu entwickeln?Unterstützt Android OpenCL?
Antwort
Sie können Referenz nehmen unter der
Linkshttps://software.intel.com/en-us/android/articles/opencl-basic-sample-for-android-os
http://arrayfire.com/getting-started-with-opencl-on-android/
http://developer.sonymobile.com/2013/10/29/boost-the-performance-of-your-android-app-with-opencl/
denke, vorerst gibt es Adreno oder Mali GPU Unterstützung mobile OpenCL, nicht alle Handys, es ist eine schlechte Nachricht für mich. –
Schön zu sehen, dass sich die Dinge in letzter Zeit geändert haben. Die meisten der kürzlich Mid- bis High-End-Telefone mit Ausnahme von Google unterstützen OpenCL. Gute Neuigkeiten für OpenCL-Entwickler. –
Streng genommen Android nicht OpenCL unterstützen. Das ist Googles (schlechte) Wahl. Sie können jedoch OpenCL-Anwendungen auf Ihrem Android-Gerät ausführen, wenn Sie dafür eine OpenCL-Bibliothek erhalten können. Von den Links, die Kirtan anbietet, würde ich die Sony-Route empfehlen, da sie am einfachsten ist (d. H. Die Telefone sind bereits mit OpenCL ausgestattet), was ich glaube, dass es sich um die Adreno-GPU von Qualcomm handelt.
Die einzige Imagination OpenCL Verfügbarkeit, die ich kenne, ist auf this dev board. Es hat einen SGX544, so dass Sie möglicherweise die Treiber von diesem Board nehmen und auf Ihr Gerät übertragen können. Es kann funktionieren .....
Als Nebenaspekt: OpenGL ES 3.1 unterstützt GL compute Shader und wird auf Android unterstützt, so kann eine Option von Ihnen sein, etwas mit der GPU für Computing zu versenden.
-Update am 20. Mai 2016
Für alle Geräte mit arm64-v8a
ABI, die OpenCL-Bibliothek kann auch in lib64
Ordner.
Also, wenn Sie die OpenCL-Bibliothek überprüfen, stellen Sie sicher, dass Sie auch die entsprechenden lib64
Ordner überprüfen (wenn Sie arm64-v8a
als erstes ABI für Ihre Anwendung bevorzugen, sollten Sie zuerst lib64
Ordner überprüfen).
Zum Beispiel: /system/vendor/lib64/libOpenCL.so
Die ursprüngliche Antwort:
Seit 2014 gibt es mehr Handys OpenCL unterstützen.
Die folgenden sind die Lage der Bibliothek OpenCL:
Qualcomm Adreno:
/system/vendor/lib/libOpenCL.so
or /system/lib/libOpenCL.so (older devices)
ARM Mali:
/system/vendor/lib/egl/libGLES_mali.so
or /system/lib/egl/libGLES_mali.so
PowerVR:
/system/vendor/lib/libPVROCL.so
Sie verwenden können OpenCL-Z Android, um die verfügbaren und Funktionen von OpenCL auf Android-Geräten zu überprüfen.
Intel-basierte Android-Geräte sollten es auch an der gleichen Stelle wie Adreno haben: '/ system/vendor/lib/libOpenCL.so' – Lrdx
@Lrdx, danke für das Hinzufügen von Informationen. gut zu wissen. –
@Lrdx, Intel-basierte Geräte können GPUs anderer Hersteller verwenden. Ich habe ein Tablet Samsung Tab 3 3G, mit einem Intel Atom Z2560. Allerdings ist die GPU ein PowerVR SGX544MP2: /system/vendor/lib/libPVROCL.so – mdew
- 1. Unterstützt Opencl boolesche Variablen?
- 2. Unterstützt NVidia OpenCL SPIR?
- 3. Warum unterstützt OpenCL keine Rekursion?
- 4. Unterstützt eine GPU, die CUDA unterstützt, auch OpenCL?
- 5. Opencl Integration mit Android
- 6. OpenCL fake bitfield
- 7. Unterstützt Android Studio Maven?
- 8. Unterstützt Android JSR 82?
- 9. Unterstützt Android Videoschnitt?
- 10. Unterstützt Android 4.0.3 SIP?
- 11. Unterstützt Android WebView HSTS?
- 12. Android: Wird JDBC in Android-Geräten unterstützt?
- 13. Android App: Unterstützt alle Bildschirmgrößen
- 14. Wird if_freenameindex auf Android unterstützt?
- 15. Welche Sprachen Android-Spracherkennung unterstützt
- 16. Unterstützt die Android-Plattform SpatiaLite?
- 17. OpenCL Performance Optimization
- 18. Speicherverwaltung in OpenCL
- 19. OpenCL-Kernel Arbeitsgruppegröße Einschränkung
- 20. Debugger für OpenCL
- 21. OpenCL benutzerdefinierte Inline-Funktionen
- 22. OpenCL Kernel Error -11
- 23. OpenCL/AMD: Tief
- 24. mit clEnqueueNativeKernel in OpenCL
- 25. OpenCL-Ereignisse und Befehlswarteschlangen
- 26. OpenCL: Typkonvertierungs-Overhead
- 27. Löschen von OpenCL-Pipes
- 28. OpenCL-Puffer ist leer
- 29. Blitzen mit OpenCL
- 30. OpenCL global memory holt
Für ARM nur Link gegen 'libGLES_mali.so'. Für Qualcomm denke ich, dass Sie 'libOpenCL.so' haben.Manchmal sind sie jedoch nicht im Pfad, also suchen Sie nach ihnen in "/ system/vendor/lib" – DarkZeros
In meinem Android-Handy gibt es nicht die libOpenCL.so, wo kann ich die Datei finden? Mein androider GPU-Typ ist Imagination PowerVR SGX544. –
Dies kann helfen: http://community.imgtec.com/developers/powervr/ Ich arbeite mit ARM und Qualcomm nie mit Imagination – DarkZeros