gpt4 book ai didi

编译特定代码会使我的纹理无效

转载 作者:太空宇宙 更新时间:2023-11-04 07:41:35 24 4
gpt4 key购买 nike

一个非常奇怪的错误:如果我向我的项目添加一些特定代码,我使用的任何纹理只包含 0。即使我没有运行任何添加的代码。

这里的具体代码是nVidia CUDA示例[1]的内核,Bicubic Texture Filtering示例,具体是CatMulRom内核。我已经将其追溯到其中一个子功能。如果我在那里重置一个变量,一切都会恢复正常。真的,真的很奇怪,我不知道它会是什么。添加和使用双三次核不会产生任何问题。

这是“修复”问题的更改:

__host__ __device__
float catrom_w1(float a)
{
a = 1; // Fix
return 1.0f + a*a*(-2.5f + 1.5f*a);
}

如果我重置变量,它会在我不使用 CatMulRom 时起作用。如果我确实尝试使用它,纹理将再次为零。有问题的纹理定义如下:

texture<uchar1, 2, cudaReadModeNormalizedFloat> tex;

我已经删除了模板,希望它能解决问题,但它仍然存在。

[1] http://developer.download.nvidia.com/compute/cuda/sdk/website/samples.html

最佳答案

你的筹码已经用光了。

关于编译特定代码会使我的纹理无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3424721/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com