Unterstützt openCL boolesche Variablen? Ich verwende derzeit JOCL (Java), um meinen OpenCL-Aufrufcode zu schreiben, und ich sehe nichts über Booleans.Unterstützt Opencl boolesche Variablen?
7
A
Antwort
17
Ja; aber die Größe eines Bool ist nicht definiert. Daher hat es keinen zugeordneten API-Typ (wie groß der Wert sein sollte, ist geräteabhängig).
Siehe Abschnitt 6.1.1 Integrierter skalarer Datentyp der OpenCL 1.1-Spezifikation für eine Liste der unterstützten Skalartypen.
Aus Abschnitt 6.8.k
Argumente Funktionen in einem Programm __kernel können nicht mit dem eingebauten in skalaren Typen Bool, halb, size_t, ptrdiff_t, intptr_t und uintptr_t deklariert werden. Die Größe in Bytes dieser Typen außer der Hälfte sind implementierungsdefiniert und zusätzlich können auch für das OpenCL-Gerät und den Host-Prozessor unterschiedlich sein, was es schwierig macht, Pufferobjekte als Argumente an einen als Kernel deklarierten Kernel zu übergeben Diese Typ
Verwandte Themen
- 1. Unterstützt NVidia OpenCL SPIR?
- 2. Unterstützt Android OpenCL?
- 3. Warum unterstützt OpenCL keine Rekursion?
- 4. Unterstützt eine GPU, die CUDA unterstützt, auch OpenCL?
- 5. Boolesche Variablen sind standardmäßig nicht immer falsch?
- 6. Boolesche Überprüfungen auf lokale Variablen extrahieren
- 7. Unterstützt Laravel Variablen dauerhaft?
- 8. Unterstützt Go volatile/nichtflüchtige Variablen?
- 9. Java: string.replace unterstützt keine Variablen?
- 10. OpenCL fake bitfield
- 11. OpenCL: Typkonvertierungs-Overhead
- 12. PHP Faule Boolesche Auswertung
- 13. Vergleiche boolesche WHERE-Prädikate gegen boolesche Werte
- 14. Werden Variablen in Logrotate-Konfigurationsdateien unterstützt?
- 15. Haben Batch-Dateien mehrzeilige Variablen unterstützt?
- 16. Unterstützt Julia statische Variablen mit Funktionsumfang?
- 17. Unterstützt die DOT-Sprache Variablen/Aliase?
- 18. Unterstützt JavaScript keine Verschlüsse mit lokalen Variablen?
- 19. Boolesche Rekursionsmethode
- 20. Boolesche Typen
- 21. Primitive boolesche Größe in C#
- 22. Boolesche Ausdruck Auswertung in Java
- 23. OpenCL Performance Optimization
- 24. Speicherverwaltung in OpenCL
- 25. OpenCL-Kernel Arbeitsgruppegröße Einschränkung
- 26. Debugger für OpenCL
- 27. OpenCL benutzerdefinierte Inline-Funktionen
- 28. OpenCL Kernel Error -11
- 29. OpenCL/AMD: Tief
- 30. mit clEnqueueNativeKernel in OpenCL
Ich bin verwirrt, es gibt einen Bool-Typ, aber ich kann es nicht verwenden? – smuggledPancakes
Sie können es _in_ einem Kernel verwenden, aber nicht für Übertragungen oder Zugriffe zwischen dem Host und dem OpenCL-Code auf einem Compute-Gerät, da die Größe nicht portabel definiert ist. – grrussel