Ich bin ein Anfänger in OpenCL
. Ich versuche, eine OpenCL
Anwendung zu implementieren. Ich habe Zweifel, dass, wie opencl
Kernel-Code schreiben. Ich habe einen ursprünglichen Code c
gegeben.Wie verschachtelte Schleife in Kernel-Seite schreiben OpenCL
Frage: - helfen Sie mir, dass die gegebenen c-Code in
opencl
Kernel-Code zu ändern?.
ORIGINAL C CODE:
int i, j;
// initialization of indexes
for (i = 0; i<n; i++)
Index[i] = i;
// Bubble sort
for (i = 0; i<n - 1; i++)
{
for (j = i + 1; j<n; j++)
{
if (I[i] > I[j])
{
double z = I[i]; // exchange attractiveness
I[i] = I[j];
I[j] = z;
z = f[i]; // exchange fitness
f[i] = f[j];
f[j] = z;
int k = Index[i]; // exchange indexes
Index[i] = Index[j];
Index[j] = k;
}
}
}
Es wird ungerade-gerade Sortierung nach Parallelisierung nur mit dem "if" -Teil geändert. –
Bitte fügen Sie auch Ihren 'OpenCL'-Code-Entwurf ein und geben Sie optional an, was damit nicht stimmt oder mit welchen Teilen Sie Probleme haben. –