summaryrefslogtreecommitdiffstats
path: root/tools/gfx/cuda/render-cuda.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2021-03-15 12:59:58 -0700
committerGitHub <noreply@github.com>2021-03-15 12:59:58 -0700
commit10b39e0cb545f98f1a417da8e8e52258134a3e87 (patch)
treef57192ca5b79365a40e02d64879591ed70c9975a /tools/gfx/cuda/render-cuda.cpp
parente428f6e6cb868e7ca487dba09f3ca5530fd85ca6 (diff)
Enable `gfx::CUDADevice` on linux. (#1756)
Diffstat (limited to 'tools/gfx/cuda/render-cuda.cpp')
-rw-r--r--tools/gfx/cuda/render-cuda.cpp41
1 files changed, 20 insertions, 21 deletions
diff --git a/tools/gfx/cuda/render-cuda.cpp b/tools/gfx/cuda/render-cuda.cpp
index 89aaa33aa..3e94f5571 100644
--- a/tools/gfx/cuda/render-cuda.cpp
+++ b/tools/gfx/cuda/render-cuda.cpp
@@ -1,20 +1,19 @@
#include "render-cuda.h"
-#include "slang.h"
-#include "slang-com-ptr.h"
-#include "slang-com-helper.h"
+
+#ifdef GFX_ENABLE_CUDA
+#include <cuda.h>
+#include <cuda_runtime_api.h>
#include "core/slang-basic.h"
#include "core/slang-blob.h"
+#include "core/slang-std-writers.h"
+#include "slang.h"
+#include "slang-com-ptr.h"
+#include "slang-com-helper.h"
#include "../command-writer.h"
#include "../renderer-shared.h"
#include "../render-graphics-common.h"
#include "../slang-context.h"
-
-#ifdef GFX_ENABLE_CUDA
-#include <cuda.h>
-#include <cuda_runtime_api.h>
-#include "core/slang-std-writers.h"
-
#endif
namespace gfx
@@ -466,7 +465,7 @@ public:
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- setData(ShaderOffset const& offset, void const* data, size_t size)
+ setData(ShaderOffset const& offset, void const* data, size_t size) override
{
size = Math::Min(size, bufferResource->getDesc()->sizeInBytes - offset.uniformOffset);
SLANG_CUDA_RETURN_ON_FAIL(cudaMemcpy(
@@ -488,7 +487,7 @@ public:
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- getObject(ShaderOffset const& offset, IShaderObject** object)
+ getObject(ShaderOffset const& offset, IShaderObject** object) override
{
auto subObjectIndex =
getLayout()->m_bindingRanges[offset.bindingRangeIndex].baseIndex + offset.bindingArrayIndex;
@@ -507,7 +506,7 @@ public:
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- setObject(ShaderOffset const& offset, IShaderObject* object)
+ setObject(ShaderOffset const& offset, IShaderObject* object) override
{
auto layout = getLayout();
@@ -625,7 +624,7 @@ public:
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- setResource(ShaderOffset const& offset, IResourceView* resourceView)
+ setResource(ShaderOffset const& offset, IResourceView* resourceView) override
{
auto layout = getLayout();
@@ -669,14 +668,14 @@ public:
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- setSampler(ShaderOffset const& offset, ISamplerState* sampler)
+ setSampler(ShaderOffset const& offset, ISamplerState* sampler) override
{
SLANG_UNUSED(sampler);
SLANG_UNUSED(offset);
return SLANG_OK;
}
virtual SLANG_NO_THROW Result SLANG_MCALL setCombinedTextureSampler(
- ShaderOffset const& offset, IResourceView* textureView, ISamplerState* sampler)
+ ShaderOffset const& offset, IResourceView* textureView, ISamplerState* sampler) override
{
SLANG_UNUSED(sampler);
setResource(offset, textureView);
@@ -758,7 +757,7 @@ public:
}
virtual SLANG_NO_THROW Result SLANG_MCALL
- setDeviceData(size_t offset, void* data, size_t size)
+ setDeviceData(size_t offset, void* data, size_t size) override
{
size = Math::Min(size, uniformBufferSize - offset);
SLANG_CUDA_RETURN_ON_FAIL(cudaMemcpy(
@@ -1004,8 +1003,8 @@ public:
*outObject = nullptr;
return SLANG_E_NO_INTERFACE;
}
- virtual SLANG_NO_THROW uint32_t SLANG_MCALL addRef() { return 1; }
- virtual SLANG_NO_THROW uint32_t SLANG_MCALL release() { return 1; }
+ virtual SLANG_NO_THROW uint32_t SLANG_MCALL addRef() override { return 1; }
+ virtual SLANG_NO_THROW uint32_t SLANG_MCALL release() override { return 1; }
public:
CommandWriter* m_writer;
@@ -1064,8 +1063,8 @@ public:
*outObject = nullptr;
return SLANG_E_NO_INTERFACE;
}
- virtual SLANG_NO_THROW uint32_t SLANG_MCALL addRef() { return 1; }
- virtual SLANG_NO_THROW uint32_t SLANG_MCALL release() { return 1; }
+ virtual SLANG_NO_THROW uint32_t SLANG_MCALL addRef() override { return 1; }
+ virtual SLANG_NO_THROW uint32_t SLANG_MCALL release() override { return 1; }
public:
CommandWriter* m_writer;
@@ -1087,7 +1086,7 @@ public:
}
virtual SLANG_NO_THROW void SLANG_MCALL
- uploadBufferData(IBufferResource* dst, size_t offset, size_t size, void* data)
+ uploadBufferData(IBufferResource* dst, size_t offset, size_t size, void* data) override
{
m_writer->uploadBufferData(dst, offset, size, data);
}