Adding support for unified memory
This commit is contained in:
parent
7e72aa74fd
commit
5577cada21
1 changed files with 8 additions and 1 deletions
|
@ -558,7 +558,14 @@ GGML_CALL static ggml_backend_buffer_t ggml_backend_cuda_buffer_type_alloc_buffe
|
||||||
size = std::max(size, (size_t)1); // cudaMalloc returns null for size 0
|
size = std::max(size, (size_t)1); // cudaMalloc returns null for size 0
|
||||||
|
|
||||||
void * dev_ptr;
|
void * dev_ptr;
|
||||||
cudaError_t err = ggml_cuda_device_malloc(&dev_ptr, size, buft_ctx->device);
|
cudaError_t err;
|
||||||
|
if (getenv("GGML_CUDA_ENABLE_UNIFIED_MEMORY") != nullptr)
|
||||||
|
{
|
||||||
|
err = cudaMallocManaged(&dev_ptr, size);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
err = ggml_cuda_device_malloc(&dev_ptr, size, buft_ctx->device);
|
||||||
|
}
|
||||||
if (err != cudaSuccess) {
|
if (err != cudaSuccess) {
|
||||||
// clear the error
|
// clear the error
|
||||||
cudaGetLastError();
|
cudaGetLastError();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue