Ich habe eine Variable innerhalb eines Kernels wie:
%Vor%Ich würde gerne wissen, ob es eine Möglichkeit gibt, das dritte int in element wie
zu adressieren element[2]
, so dass ich dasselbe wäre wie das Schreiben von element.s2
Also wie kann ich etwas tun wie:
%Vor%So wie ich es gemacht habe:
%Vor%Ich weiß, das ist schrecklich, aber es funktioniert,; -)
Nun, es gibt noch einen dreckigeren Weg :), ich hoffe OpenCL bietet eine bessere Möglichkeit, Vektorelemente zu durchlaufen.
Hier ist meine Art es zu tun.
%Vor%Btw rand () Funktion ist nicht im OpenCL-Kernel verfügbar, wie hast du es gemacht ??
Es ist möglich, aber nicht so effizient wie der direkte Zugriff auf Arrays.
%Vor%Aber natürlich, wenn Sie auf diese Weise komponentenweise Zugriff benötigen, besteht die Möglichkeit, dass Sie besser keine Vektoren verwenden.