如何将 C++ 代码转换为 OpenCL 代码

时间:2021-07-16 12:46:08

标签: c++ opencl

我有一个使用 Visual Studio 2019 用 C++ 编写的代码,我需要重写此代码,但使用 OpenCL 语言。实际上,我是 OpenCL 的新手,我需要从哪里开始的帮助。这是我代码中的第一个函数,任何人都可以帮助我如何使用 OpenCL 重写它。我真的需要帮助

#include <iostream>
#include <fstream>
#include <vector>
#include <stdlib.h>     /* srand, rand */
#include <math.h>       /* sqrt */
#include <utility>      /* std::pair, std::make_pair */
#include <algorithm>    /* std::count */
#include <chrono>
#include <string>
#include <array> 
#include <time.h>

using namespace std;


int k;
bool read_data_set(string filename, array<array<int, 20>, 5430>& array_X_dataset, array<int, 5430>& array_Y_dataset) {
    int field0, field1, field2, field3, field4, field5, field6, field7, field8, field9, field10, field11,
        field12, field13, field14, field15, field16, field17, field18, field19, field20, field21;
    char comma;
    int line = 0;
      
    ifstream myfile(filename);
    
    if (myfile.is_open())
    {
        while (myfile
            >> field0 >> comma
            >> field1 >> comma
            >> field2 >> comma
            >> field3 >> comma
            >> field4 >> comma
            >> field5 >> comma
            >> field6 >> comma
            >> field7 >> comma
            >> field8 >> comma
            >> field9 >> comma
            >> field10 >> comma
            >> field11 >> comma
            >> field12 >> comma
            >> field13 >> comma
            >> field14 >> comma
            >> field15 >> comma
            >> field16 >> comma
            >> field17 >> comma
            >> field18 >> comma
            >> field19 >> comma
            >> field20 >> comma
            >> field21)
        {


         array<int, 20> inner_array{ field1, field2, field3, field4, field5, field6, field7, field8, field9, field10, field11,
         field12, field13, field14, field15, field16, field17, field18, field19, field20 };
            array_X_dataset[line] = inner_array; 
            array_Y_dataset[line] = field21;           
            line++;
    
        }
          
      myfile.close();
      
    }
    else {
        cout << "Unable to open file";
        return true;
    }
    return false;
}

0 个答案:

没有答案