Closed Jebsta closed 1 year ago
The error stems from the "texture" type being deprecated since CUDA 5.0 1. Support was entirely dropped in version 12.0.
deepdrr/projector/cubic/cubicTex3D.cu(54): error: identifier "texture" is undefined __attribute__((device)) float linearTex3D(texture<T, 3, mode> tex, float3 coord)
This issue is quite nasty to refactor, as the API significantly changed. Grepping for "texture<", I found about 360 occurrences in the whole DeepDRR project. Further, I learned that the project uses third party code from 2010 for performing cubic interpolation (http://www.dannyruijters.nl/cubicinterpolation/) which relies on texture objects.
I am not very familiar with CUDA programming, but I see the following options to resolve:
This of course is unfortunate. We are reviewing this, and will likely be implementing a change. @benjamindkilleen and @liamjwang may have additional thoughts/updates on this now or soon.
We have overhauled the Projector to use cupy, since Textures are officially deprecated with CUDA 12 and their replacement is not supported by PyCUDA. We will push this release after further testing, but if you would like to try it out, you can check out the dev branch and install from source.
I installed deepdrr and all dependencies. Ran the example python script with the path changed to a CT Scan on mine. Get following Error:
Following Driver and Cuda Version