我想在 CPU 上动态创建函数指针列表(使用push_back()从 调用的某种方法main())并将其复制到 GPU__constant__或__device__数组,而不需要诉诸静态__device__函数指针。我相信这个问题与我的问题有关;但是,我的目标是迭代地创建__host__函数指针数组,然后将其复制到__constant__函数指针数组,而不是在声明时初始化后者。
常见的.h:
#ifndef COMMON_H
#define COMMON_H
#include <stdio.h>
#include <iostream>
#define num_functions 3
#define gpuErrchk(ans) { gpuAssert((ans), __FILE__, __LINE__); }
inline void gpuAssert(cudaError_t code, const char *file, int line, bool abort=true)
{
if (code != cudaSuccess)
{
fprintf(stderr,"GPUassert: %s %s %d\n", cudaGetErrorString(code), file, line);
if (abort) exit(code);
}
}
// fptr_t: Pointer to void function …Run Code Online (Sandbox Code Playgroud)