Khrylx / DSGPURayTracing

A GPU-based ray tracer using CUDA
53 stars 17 forks source link

GPU rendering not working #1

Open straaljager opened 5 years ago

straaljager commented 5 years ago

Hi, we've tried to compile the code, which worked, but when we run the code with GPU enabled we get an error.

This is the compilation error log:

[  6%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/vector3D.cpp.o
[  6%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/matrix4x4.cpp.o
[  6%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/matrix3x3.cpp.o
[ 11%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/vector4D.cpp.o
[ 11%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/vector2D.cpp.o
[ 13%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/complex.cpp.o
[ 15%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/quaternion.cpp.o
[ 18%] Building NVCC (Device) object cuda_src/CMakeFiles/GPUAccel.dir/GPUAccel_generated_setup.cu.o
[ 20%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/color.cpp.o
[ 22%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/spectrum.cpp.o
[ 25%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/osdtext.cpp.o
[ 27%] Building C object CMU462/src/CMakeFiles/CMU462.dir/osdfont.c.o
[ 29%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/viewer.cpp.o
[ 31%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/base64.cpp.o
[ 34%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/lodepng.cpp.o
[ 36%] Building CXX object CMU462/src/CMakeFiles/CMU462.dir/tinyxml2.cpp.o
[ 38%] Linking CXX static library libCMU462.a
[ 38%] Built target CMU462
ptxas warning : Stack size for entry function '_Z9printTREEv' cannot be statically determined
ptxas warning : Stack size for entry function '_Z12traceScenePTiiii' cannot be statically determined
ptxas warning : Stack size for entry function '_Z10traceSceneiiii' cannot be statically determined
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu: In member function 'void CUDAPathTracer::startRayTracing()':
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:136:1: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
     cudaThreadSynchronize();
 ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:136:1: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
     cudaThreadSynchronize();
 ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:136:23: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
     cudaThreadSynchronize();
                       ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu: In member function 'void CUDAPathTracer::startRayTracingPT()':
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:167:1: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
             cudaThreadSynchronize();
 ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:167:1: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
             cudaThreadSynchronize();
 ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
/home/jkarlsso/Work/DSGPURayTracing/cuda_src/setup.cu:167:23: warning: 'cudaError_t cudaThreadSynchronize()' is deprecated [-Wdeprecated-declarations]
             cudaThreadSynchronize();
                       ^
/usr/local/cuda/include/cuda_runtime_api.h:947:46: note: declared here
 extern __CUDA_DEPRECATED __host__ cudaError_t CUDARTAPI cudaThreadSynchronize(void);
                                              ^
[ 40%] Linking CXX shared library libGPUAccel.so
[ 40%] Built target GPUAccel
[ 45%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/collada.cpp.o
[ 45%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/camera_info.cpp.o
[ 50%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/sphere_info.cpp.o
[ 50%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/light_info.cpp.o
[ 52%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/polymesh_info.cpp.o
[ 54%] Building CXX object src/CMakeFiles/pathtracer.dir/collada/material_info.cpp.o
[ 56%] Building CXX object src/CMakeFiles/pathtracer.dir/dynamic_scene/mesh.cpp.o
[ 59%] Building CXX object src/CMakeFiles/pathtracer.dir/dynamic_scene/scene.cpp.o
[ 61%] Building CXX object src/CMakeFiles/pathtracer.dir/dynamic_scene/sphere.cpp.o
[ 68%] Building CXX object src/CMakeFiles/pathtracer.dir/static_scene/triangle.cpp.o
[ 68%] Building CXX object src/CMakeFiles/pathtracer.dir/static_scene/sphere.cpp.o
[ 68%] Building CXX object src/CMakeFiles/pathtracer.dir/static_scene/object.cpp.o
[ 70%] Building CXX object src/CMakeFiles/pathtracer.dir/static_scene/environment_light.cpp.o
[ 72%] Building CXX object src/CMakeFiles/pathtracer.dir/static_scene/light.cpp.o
[ 75%] Building CXX object src/CMakeFiles/pathtracer.dir/halfEdgeMesh.cpp.o
[ 77%] Building CXX object src/CMakeFiles/pathtracer.dir/meshEdit.cpp.o
[ 79%] Building CXX object src/CMakeFiles/pathtracer.dir/bvh.cpp.o
[ 81%] Building CXX object src/CMakeFiles/pathtracer.dir/bbox.cpp.o
[ 84%] Building CXX object src/CMakeFiles/pathtracer.dir/bsdf.cpp.o
[ 86%] Building CXX object src/CMakeFiles/pathtracer.dir/camera.cpp.o
[ 88%] Building CXX object src/CMakeFiles/pathtracer.dir/sampler.cpp.o
[ 90%] Building CXX object src/CMakeFiles/pathtracer.dir/pathtracer.cpp.o
[ 93%] Building CXX object src/CMakeFiles/pathtracer.dir/misc/sphere_drawing.cpp.o
[ 95%] Building CXX object src/CMakeFiles/pathtracer.dir/application.cpp.o
[ 97%] Building CXX object src/CMakeFiles/pathtracer.dir/main.cpp.o
[100%] Linking CXX executable ../pathtracer
[100%] Built target pathtracer

We get this while running:

[PathTracer] Input scene file: /home/jkarlsso/Work/asst3_pathtracer/dae/meshedit/bean.dae [PathTracer] Collecting primitives... Done! (0.0001 sec) [PathTracer] Building BVH... Failed to allocate device vector C (error code invalid device symbol)! Done! (0.0248 sec)

Any ideas?

straaljager commented 5 years ago

We also had to make the following change for it to compile using CUDA 10

https://github.com/karjonas/DSGPURayTracing/commit/1579096ba0ff58d157002e58746fb0cfc75780f9