OpenCL Image2D mit CL_LUMINANCE/CL_FLOAT

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • OpenCL Image2D mit CL_LUMINANCE/CL_FLOAT

    He, wir haben noch gar keine Rubrik für OpenCL. Ist glaub ich auch die erste Frage hier :) Also:

    Ich brauche ein Bild-Objekt von CL_LUMINANCE mit CL_FLOAT Elementen (CL_R oder CL_INTENSITIES würde es auch tun...). Leider sagt mir mein OpenCL, dass das kein unterstütztes image-format ist. Das einzige Image-Format mit FLOAT Elementen ist CL_RGBA, da ich aber nur einen Kanal brauche, verbrate ich grade 3/4 meines knappen Speichers.
    Unter OpenGL kann ich jedoch problemlos etwa GL_R32F Texturen verwenden. Jetzt ist die Frage, ob meine Hardware (NV 320M) das prinzipiell nicht kann und auch bei OpenGL intern einfach RGBA nimmt, oder ob da mit den Treibern noch was hakelt. Konkrete frage:
    Weiss jemand, ob die 320M prinzipiell keine Single-Channel Float Texturen kann? Oder ist das noch ein Treiber-Problem? Kann jemand mal schauen, der eine High-end Karte hat, ob etwa CL_LUMINANCE/CL_FLOAT bei ihm unterstützt ist? Gibt es vielleicht einen Workaround? Eventuell Windows installieren und da nutzen? Dann hab ich auch gleich OpenGL 3.....ach Apple...

    EDIT
    Da ich mehrere Arrays verwende, hab ich jetzt einfach mal zwei davon in ein RGBA gepackt (in RG). Da ich hiermit sogar die Lokalität erhöhe, ist das ganze sogar noch einmal deutlich schneller - auch wenn ich andere Dinge dann etwas "hässlicher" lösen muss. Naja, kommen noch mehr Arrays dazu, von daher wird sich das schon noch auszahlen. Trotzdem merkwürdig.....
    C++

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von zerm ()