Hi,
here’s the code:
#include <DemandLoading/DeviceContext.h>
#include <DemandLoading/Paging.h>
#include <DemandLoading/Texture2D.h>
#include <cuda.h>
namespace demandLoading {
extern “C” global void test( DeviceContext context)
{
const unsigned int startIndex = 32;
const unsigned int endIndex = 64;
unsigned int globalIndex = threadIdx.x + blockIdx.x * blockDim.x + startIndex;
const unsigned int laneId = globalIndex % 32;
unsigned int textureId = 11;
float s = 0.1;
float t = 0.1;
float2 ddx = make_float2(0., 0.);
float2 ddy = make_float2(0., 0.);
bool isResident = true;
float4 color = demandLoading::tex2DGrad<float4>(context, textureId, s, t, ddx, ddy, &isResident);
int4 intcolor = make_int4(color.x, color.y, color.z, color.w);
}
}
And the command line to compile to ptx:
H:\projects\temp>“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\bin\nvcc.exe” -gencode=arch=compute_75,code="sm_75,compute_75" --use-local-env -ccbin “C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64” -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\include" “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/include” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK/cuda” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/build/include” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK/lib/DemandLoading/include” -maxrregcount=0 --machine 64 --ptx -cudart static -std=c++17 -Xcompiler=“/EHsc -Zi -Ob0” -D_WINDOWS -D_DEBUG -DNOMINMAX -D__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__=1 -D"CMAKE_INTDIR="Debug"" -D"CMAKE_INTDIR="Debug"" -D_MBCS h:\projects\temp\test_00.cu -o h:\projects\temp\test_00.ptx
Just for testing, if i compile this to .cubin, (previously we compiled our cuda code to .cubin files and loaded with cuModuleLoad) it gives me these errors:
“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\bin\nvcc.exe” -gencode=arch=compute_75,code="sm_75,compute_75" --use-local-env -ccbin “C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64” -x cu -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\include" “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/include” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK/cuda” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/build/include” “-IH:/projects/NVIDIA Corporation/OptiX SDK 7.5.0/SDK/lib/DemandLoading/include” -maxrregcount=0 --machine 64 -cudart static -std=c++17 -Xcompiler=“/EHsc -Zi -Ob0” -D_WINDOWS -D_DEBUG -DNOMINMAX -D__CUDA_INCLUDE_COMPILER_INTERNAL_HEADERS__=1 -D"CMAKE_INTDIR="Debug"" -D"CMAKE_INTDIR="Debug"" -D_MBCS h:\projects\temp\test_00.cu -o h:\projects\temp\test_00.cubin
test_00.cu
h:\projects\temp\test_00.cu(12): warning #177-D: variable “endIndex” was declared but never referenced
h:\projects\temp\test_00.cu(15): warning #177-D: variable “laneId” was declared but never referenced
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 137; error : Call to ‘_optix_tex_footprint_2d_grad_v2’ requires call prototype
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 451; error : Call to ‘_optix_tex_footprint_2d_grad_v2’ requires call prototype
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 824; error : Call to ‘_optix_tex_footprint_2d_grad_v2’ requires call prototype
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 1021; error : Call to ‘_optix_tex_footprint_2d_grad_v2’ requires call prototype
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 137; error : Unknown symbol ‘_optix_tex_footprint_2d_grad_v2’
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 451; error : Unknown symbol ‘_optix_tex_footprint_2d_grad_v2’
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 824; error : Unknown symbol ‘_optix_tex_footprint_2d_grad_v2’
ptxas C:/Users/Miguel/AppData/Local/Temp/tmpxft_00007cf0_00000000-7_test_00.ptx, line 1021; error : Unknown symbol ‘_optix_tex_footprint_2d_grad_v2’
ptxas fatal : Ptx assembly aborted due to errors
What am i doing wrong?
Best regards.