5165 Slow on CPU

Running the explosion scene which flys on the GPU is struggles to do a frame on the CPU I7 3930 6 core 12 threads and all the nodes go red…fine when I switch back to GPU
[0:00:00.000] 2019-Nov-22 09:56:34
Reactions v1.0-5165-gfbfa67eb6 (2019-11-22)

[0:00:15.706] Devices {
[0:00:15.707] clang 9.0.0 (tags/RELEASE_900/final)
[0:00:15.707] Intel Core i7-3930K, 6 Cores 12 Threads
[0:00:15.707] Using 12 OMP threads
[0:00:15.707] CUDA {
[0:00:15.707] Driver 10.2, Runtime 10.1
[0:00:15.707] Active GPU 0: GeForce GTX 1070, CC6.1, PCI bus 2, OpenGL, 8.59GB
[0:00:15.861] }
[0:00:15.861] Vulkan {
[0:00:15.861] GeForce GTX 1070, API 1.1.119, Driver 441.48.0, CUDA Device 0
[0:00:15.861] }
[0:00:15.861] }
[0:00:15.861] Set primary device to GPU 0 (OpenGL device)
[0:00:15.862] Set primary device to CPU
[0:00:16.326] PTXAS log:
info : 0 bytes gmem, 160 bytes cmem[3]
info : Function properties for ‘_ZN3rea14ray_cast_denseENS_15SparseImageViewILNS_10MemoryTypeE1EEENS_6CameraIfEENS_9ArrayViewIKfLi3ELS1_1EEENS_8IntervalIfLi3EEEf’:
info : used 32 registers, 176 stack, 0 bytes smem, 652 bytes cmem[0], 84 bytes cmem[2], 0 bytes lmem
info : Function properties for ‘_ZN3rea15ray_cast_sparseENS_15SparseImageViewILNS_10MemoryTypeE1EEENS_6CameraIfEENS_15SparseFieldViewILS1_1EEENS_19TiledBlockSchedulerENS_9ArrayViewIKNS_19TiledRenderWorkUnitELi1ELS1_1EEEf’:
info : used 32 registers, 184 stack, 4004 bytes smem, 772 bytes cmem[0], 84 bytes cmem[2], 0 bytes lmem
[0:00:16.337] PTXAS log:
info : 0 bytes gmem, 160 bytes cmem[3]
info : Function properties for ‘_ZN3rea14ray_cast_denseENS_15SparseImageViewILNS_10MemoryTypeE1EEENS_6CameraIfEENS_9ArrayViewIKfLi3ELS1_1EEENS_8IntervalIfLi3EEEf’:
info : used 32 registers, 176 stack, 0 bytes smem, 652 bytes cmem[0], 84 bytes cmem[2], 0 bytes lmem
info : Function properties for ‘_ZN3rea15ray_cast_sparseENS_15SparseImageViewILNS_10MemoryTypeE1EEENS_6CameraIfEENS_15SparseFieldViewILS1_1EEENS_19TiledBlockSchedulerENS_9ArrayViewIKNS_19TiledRenderWorkUnitELi1ELS1_1EEEf’:
info : used 32 registers, 184 stack, 4004 bytes smem, 772 bytes cmem[0], 84 bytes cmem[2], 0 bytes lmem
[0:00:16.338] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:16.739] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:16.740] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:16.741] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:41.019] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:48.212] Set primary device to GPU 0 (OpenGL device)
[0:00:48.213] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:00:50.882] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()
[0:01:07.590] Set primary device to CPU
[0:01:07.701] GridRenderer HQ render class rea::CudaException:
CudaException (1) on device(0) in Source\rendering/tiled_block_scheduler_cuda.hh(48) invalid argument
[0:01:11.217] GridRenderer::prepare_render class rea::AssertionException:
Source/kernels/sparse_per_block_reduction.cu:32: ASSERT: MemoryType::cuda == field.memory_type()

and now. after the gpu was working fine i started pressing the lower right buttons one of which i think switches caching on and off. And I get this and no sim

CudaException (700) on device(0) in Source\framework\DeviceSemaphore.cc(61) an illegal memory access was encountered
[0:33:40.524] PolyMeshRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:40.524] PolyMeshRenderer::prepare_render class rea::Exception:
/process/ParticleEmitter02/ports/particles does not accept void
[0:33:40.524] PolyMeshRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:40.525] GridRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:40.525] ParticleRenderer::update_inputs class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:40.525] ParticleRenderer::update_inputs class rea::Exception:
/process/ParticleEmitter02/ports/particles does not accept void
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:40.525] VkRenderer::prepare ParticleRenderer class rea::CudaException:
CudaException (700) on device(0) in Source\framework\DeviceSemaphore.cc(61) an illegal memory access was encountered
[0:33:44.140] Rake: Table::resize class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:44.141] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:44.141] launch_kernel_nvptx: CUDA error 700 on device 0: an illegal memory access was encountered

[0:33:44.141] Rake: Table::resize class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:33:44.141] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:33:44.141] launch_kernel_nvptx: CUDA error 700 on device 0: an illegal memory access was encountered

[0:33:44.141] PolyMeshRenderer::prepare_render class rea::AssertionException:
Source\dfg\nodes\particle_emitter\samplers\range.cc:118: ASSERT: col_data.size() == table.size()
[0:33:44.141] GridRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\adt/array_cuda.hh(189) an illegal memory access was encountered
[0:33:44.141] VkRenderer::prepare ParticleRenderer class rea::CudaException:
CudaException (700) on device(0) in Source\framework\DeviceSemaphore.cc(61) an illegal memory access was encountered
[0:33:47.717] VectorSampler: no vector table column named ‘vel’
[0:33:47.717] VectorSampler: no vector table column named ‘vel’
[0:33:47.717] GridRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\adt/array_cuda.hh(189) an illegal memory access was encountered
[0:33:47.717] VkRenderer::prepare ParticleRenderer class rea::CudaException:
CudaException (700) on device(0) in Source\framework\DeviceSemaphore.cc(61) an illegal memory access was encountered
[0:34:21.120] Rake: Table::resize class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:34:21.120] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:34:21.120] launch_kernel_nvptx: CUDA error 700 on device 0: an illegal memory access was encountered

[0:34:21.120] Rake: Table::resize class rea::CudaException:
CudaException (700) on device(0) in Source\framework\Allocator.cc(189) an illegal memory access was encountered
[0:34:21.120] CudaError(700) on device(0) in Source\rake\jit\runtime.cc(261): an illegal memory access was encountered
[0:34:21.120] launch_kernel_nvptx: CUDA error 700 on device 0: an illegal memory access was encountered

[0:34:21.120] PolyMeshRenderer::prepare_render class rea::AssertionException:
Source\dfg\nodes\particle_emitter\samplers\range.cc:118: ASSERT: col_data.size() == table.size()
[0:34:21.120] GridRenderer::prepare_render class rea::CudaException:
CudaException (700) on device(0) in Source\adt/array_cuda.hh(189) an illegal memory access was encountered
[0:34:21.121] VkRenderer::prepare ParticleRenderer class rea::CudaException:
CudaException (700) on device(0) in Source\framework\DeviceSemaphore.cc(61) an illegal memory access was encountered

Some of the voxel grid nodes used in the explosion scene are still GPU only.
Once switched to CPU with these nodes, unrecoverable errors can happen.
This does not apply to particle nodes. All of those should already work on CPU and GPU.

1 Like