2010-07-15 2 views
28

Mit dem Vorstoß in Richtung multimedialer Mobilgeräte scheint dies ein logischer Weg zu sein, um die Leistung auf diesen Plattformen zu steigern, während allgemeine Software leistungsfähig bleibt. Ich habe mich für die IPad-Hardware als Entwicklungsplattform für UI und Datenanzeige/-Eintrag interessiert. Aber bin gespannt wie viel Verarbeitungsfähigkeit das Gerät selbst hat. OpenCL würde es zu einer JUICY-Hardwareplattform machen, auch wenn die Lizenzierung irgendwie stinkt.Sind das IPad oder IPhone zu OpenCL fähig?

Antwort

21

OpenCL ist noch nicht Teil von iOS.

Die neueren iPhones, iPod Touches und das iPad verfügen jedoch alle über GPUs, die OpenGL ES 2.0 unterstützen. Mit 2.0 können Sie eigene programmierbare Shader erstellen, die auf der GPU ausgeführt werden können, sodass Sie leistungsstarke parallele Berechnungen durchführen können. Obwohl Sie nicht so elegant wie OpenCL sind, können Sie möglicherweise viele der gleichen Probleme lösen.

Darüber hinaus brachte iOS 4.0 die Accelerate framework mit, die Ihnen Zugriff auf viele gängige vektorbasierte Operationen für Hochleistungsrechnen auf der CPU bietet. Weitere Informationen dazu finden Sie unter Session 202 - Das Accelerate-Framework für das iPhone OS unter WWDC 2010 videos.

+0

Gibt es ein Update über den Status von OpenCL in Zukunft iOS Versionen? Ich habe solche Beiträge aus dem Jahr 2008 gesehen und wir versuchen zu entscheiden, ob wir ein Vision-Framework in OpenCL aufbauen wollen, weil wir es auf iPhone und Android laufen lassen wollen. Also, irgendwelche Neuigkeiten? – twerdster

+1

@twerdster - Wie bei allem von Apple ist es eine Vermutung, was die Zukunft bringen wird. Warte bis zum 6. Juni, um herauszufinden, was im nächsten Jahr kommt.Ehrlich gesagt, würde ich anfangen, Ihr Bildverarbeitungssystem mit generischen OpenGL ES 2.0 Shadern zu implementieren, anstatt auf OpenCL auf iOS und Android zu warten. –

+0

Danke für Ihre Eingabe. Leider wird OpenGL ES 2.0 noch nicht von Android unterstützt. Aber ich nehme an, dass es uns 6 Monate dauern wird und wir in der Zwischenzeit auf iOS aufbauen können, vielleicht werden dann Dinge verfügbar sein. – twerdster

1

OpenCL? Noch nicht. Eine gute Möglichkeit, die nächsten öffentlichen Frameworks in iOS zu erraten, ist das Private Frameworks-Verzeichnis. Wenn Sie dort sehen, was Sie suchen, dann gibt es Chancen. Wenn nicht, warten Sie auf die nächste Veröffentlichung und schauen Sie erneut in das Private-Zeug. Ich denke, CoreImage kommt zuerst, weil OpenCL zu niedrig ist;) Wie auch immer, das ist nur eine Vermutung

8

Vorsicht! Diese Frage wird von Google als zweites Ergebnis eingestuft. Die meisten Antworten hier (einschließlich meiner) sind jedoch veraltet. Personen, die an OpenCL auf iOS interessiert sind, sollten mehr Einträge mit aktuellem Update wie diesem - https://stackoverflow.com/a/18847804/443016 - besuchen.


http://www.macrumors.com/2011/01/14/ios-4-3-beta-hints-at-opencl-capable-sgx543-gpu-in-future-devices/

iPad2 GPU ist PowerVR SGX543 von OpenCL fähig.

abwarten und sehen lassen, welche iOS Release OpenCL APIs uns bringen :)

+1

Gibt es Updates zu diesem Thema? Unterstützt das iPad 2 OpenCL? – Diego

6

von nacho4d Folgende:.

Es ist in der Tat ein OpenCL.framework in iOS5s privaten Frameworks Verzeichnis, also würde ich iOS6 annehmen ist derjenige, auf den OpenCL zu achten hat.

Eigentlich habe ich es in OpenGL-bezogenen Crash-Logs für mein iPad 1 gesehen, obwohl das könnte nur CPU sein (die Umsetzung von Teilen des Grafik-Stack vielleicht, wie auf OSX).

+0

Wo ist es? Ich sehe es nicht [hier] (https://github.com/mattlawer/iOS5-Private-Frameworks). – LaC

+0

@LaC Bisher nur in Absturzprotokollen sichtbar, z. B. http://stackoverflow.com/questions/7976805/application-not-running-in-ios-5 und http://freetime.com/forum/threads/24320 -OpenCL-in-iOS5 –

+0

@AdamDavis danke für die Informationen! – LaC

3

Sie können OpenCL-Code unter iOS mit dem privaten OpenCL-Framework kompilieren und ausführen, aber Sie erhalten wahrscheinlich kein Projekt in den App Store (Apple möchte nicht, dass Sie private Frameworks verwenden).

Hier ist, wie es zu tun: https://github.com/linusyang/opencl-test-ios