Good day!
I want to allocate large buffers on GPU only. My current code is as following for 2GB chunk of memory:
clCreateBuffer(context, CL_MEM_HOST_NO_ACCESS | CL_MEM_READ_WRITE, 2 * 1024 * 1024 * 1024, nullptr, &result);
The problem is that this 2GB of memory is also allocated in VRAM! And if there is not enough memory in VRAM, my application just closed by the Windows.
My question is how to allocate memory on the GPU only without allocation in VRAM of host?
Best regards, Dmitry.
Please provide the below information:
1) setup details like OS, gpu, driver etc. 2) clinfo output and 3) the host-code that manifests the problem.
Thanks.
@dipak, here is all the information you requested: https://drive.google.com/file/d/1yHHdJhjB_hXo04vzafojgf3pp5ToMQ0r/view?usp=sharing
I didn't find an option to attach the archive to the post, so I would really appreciate if you attach it for me so I can remove the archive from google drive.
Hi @Neverhood ,
Thank you for providing the information. I'll check and get back to you.
To attach a file, please see the attached snapshot which shows where to locate the attachment option (marked by red color).
Thanks.
Hi @Neverhood ,
I've reported the issue to the concerned team. I'll let you know once I get any update on this.
Also, I've attached the archive file which you provided on google drive. Please check your original post.
Thanks.
Thank you, @dipak ! Looking forward for any solution.