diff options
Diffstat (limited to 'src/backends/reference/RefWorkloadFactory.cpp')
-rw-r--r-- | src/backends/reference/RefWorkloadFactory.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp index 346fd691f2..480b7e24ac 100644 --- a/src/backends/reference/RefWorkloadFactory.cpp +++ b/src/backends/reference/RefWorkloadFactory.cpp @@ -78,14 +78,20 @@ bool RefWorkloadFactory::IsLayerSupported(const Layer& layer, return IWorkloadFactory::IsLayerSupported(s_Id, layer, dataType, outReasonIfUnsupported); } -std::unique_ptr<ITensorHandle> RefWorkloadFactory::CreateTensorHandle(const TensorInfo& tensorInfo) const +std::unique_ptr<ITensorHandle> RefWorkloadFactory::CreateTensorHandle(const TensorInfo& tensorInfo, + const bool IsMemoryManaged) const { + // For Ref it is okay to make the TensorHandle memory managed as it can also store a pointer + // to unmanaged memory. This also ensures memory alignment. return std::make_unique<RefTensorHandle>(tensorInfo, m_MemoryManager); } std::unique_ptr<ITensorHandle> RefWorkloadFactory::CreateTensorHandle(const TensorInfo& tensorInfo, - DataLayout dataLayout) const + DataLayout dataLayout, + const bool IsMemoryManaged) const { + // For Ref it is okay to make the TensorHandle memory managed as it can also store a pointer + // to unmanaged memory. This also ensures memory alignment. return std::make_unique<RefTensorHandle>(tensorInfo, m_MemoryManager); } |