Closed esseivaju closed 2 years ago
@makortel The pull request is starting to become quite large even though most changes are deletion so we should probably review it now.
As mentioned in the first comment, the core changes are to memory management; allocate memory on the heap through std::unique_ptr
and let nvc++
instrument the unified memory usage. This led a lot of extra changes as a lot of classes were designed to be generic over the allocation method / pointer type, which is not needed in the stdpar version
@esseivaju Just to confirm, from your side this PR is ready to be merged, right?
@makortel Yes it should be ready to be merged
This pull request aims to update
CUDACore
andCUDADataFormats
libraries and plugins to remove all explicit memory management through the CUDA API and replace it with the use ofstd::unique_ptr
/std::shared_ptr
which will be instrumented bynvc++
during compilation to use unified memory.This will include changes such as:
CUDACore
andCUDADataFormats
librariesMost notably, plugins will still use CUDA kernels but these changes will help in porting kernels to stdpar algorithms as most the framework will already be standard c++.