有没有办法在optix中声明一个动态大小的数组负载?我在谷歌上搜索并阅读了Optix文档,结果发现Optix不允许使用malloc。有没有办法让我这样做呢?
struct PerRayData_radiance
{
float3 result;
float importance;
int depth;
float stuff[N];
};我是否根据一些用户参数将数组内容的大小调整为N。
我尝试在NVIDIA论坛上搜索过去的问题,但似乎由于一些安全问题而被关闭。
发布于 2012-08-31 21:10:21
我在NVIDIA的OptiX论坛上问了这个问题,因为我想为我的应用程序这样做(希望我能给你一个http指针)。不幸的是,OptiX使用的ptx生成文件的一个限制是,您不能在传递的辐射射线中进行这种动态分配。
对于我们的应用程序,我们必须使用一个具有最大大小的数组和一个指定当前运行长度的uint。我知道这很浪费内存,但我看不出有什么办法可以解决这个问题。
您可能希望尝试应用程序和硬件的最大大小,因为在这种情况下,堆栈大小可能会被推入。
https://stackoverflow.com/questions/12205982
复制相似问题