字符串之间的OpenCL距离

时间:2017-12-01 12:09:00

标签: opencl levenshtein-distance

我有来自web的C ++代码,用于计算两个字符串之间的距离。有人可以帮助我将其转换为OpenCL的并行性吗?我很难学习OpenCL。

#include <stdio.h>
#include <math.h>
#include <string.h>

#define MIN(x,y) ((x) < (y) ? (x) : (y))
int main()
{
    int d[100][100];
    int i,j,m,n,temp,tracker;
    char s[] = "Sanfoundry";
    char t[] = "Education";
    m = strlen(s);
    n = strlen(t);

    for(i=0;i<=m;i++)
        d[0][i] = i;

    for(j=0;j<=n;j++)
        d[j][0] = j;

    for (j=1;j<=m;j++)
    {
        for(i=1;i<=n;i++)
        {
            if(s[i-1] == t[j-1])
            {
                tracker = 0;
            } else {
                tracker = 1;
            }
            temp = MIN((d[i-1][j]+1),(d[i][j-1]+1));
            d[i][j] = MIN(temp,(d[i-1][j-1]+tracker));
        }
    }
    printf("the Levinstein distance is %d\n",d[n][m]);
    return 0;
}

具体来说,代码的哪一部分必须放在内核中?另外,需要创建哪些内存对象?

由于

0 个答案:

没有答案