#include #include "DKSBase.h" using namespace std; int main() { DKSBase base; base.setAPI("OpenMP", 6); base.initDevice(); //init data int ierr; int N = 8; double *in_data = new double[N]; double *in_data2 = new double[N]; double *out_data = new double[N]; double *out_data2 = new double[N]; for (int i = 0; i < N; i++) { in_data[i] = i; in_data2[i] = i*i; } //test memory allocation, write and read operations void *d_ptr, *d2_ptr; d_ptr = base.allocateMemory(N, ierr); d2_ptr = base.allocateMemory(N, ierr); base.writeData(d_ptr, in_data, N); base.writeData(d2_ptr, in_data2, N); base.readData(d_ptr, out_data, N); base.readData(d2_ptr, out_data2, N); base.freeMemory(d_ptr, N); base.freeMemory(d2_ptr, N); //print results for (int i = 0; i < N; i++) cout << out_data[i] << "\t"; cout << endl; for (int i = 0; i < N; i++) cout << out_data2[i] << "\t"; cout << endl; return 0; }