Invalid texture reference


My cuda code can run very well, but I want to use the float-point version automicAdd()function in kernel function. As we know the floating-point version of atomicAdd() is only supported by devices of compute capability 2.x. So I change my project setting to :GPU Architecture(1) sm_20, GPU Architecture(2) sm_20. When I run my program there was an error said that Runtime API error: invalid texure reference.

I just don’t know why, Anyone could help me.

Thank you very much in advance.

What is the compute capability of your device? You can’t set that arbitrarily based on what functionality you want to use, it has to match your GPU.

Thank you, my device is GeForce 9300M GS, its computer capability is 1.1. It means I couldn’t use the float point version atomicAdd()function, is there any other solution can solve my problem?

Just rewrite the double atomicAdd() routine from appendix B.11 of the programming guide for float. Or use a reduction scheme instead.