相关疑难解决方法(0)

CUDA:将 CPU 上动态创建的函数指针数组复制到 GPU 内存

我想在 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)

cuda function-pointers

1
推荐指数
1
解决办法
2242
查看次数

CUDA的cudaMemcpyFromSymbol如何运作?

我理解传递符号的概念,但想知道幕后到底发生了什么.如果它不是变量的地址,那么它是什么?

cuda

0
推荐指数
1
解决办法
472
查看次数

标签 统计

cuda ×2

function-pointers ×1