c++ - nvidia cuda访问gpu共享内存

标签 c++ cuda nvidia

我正在尝试使用 cuda 分配共享 gpu 内存(与共享内存技术无关)。内存由 intel 和 nvidia gpu 共享。我正在使用 cudaMallocManaged 分配内存最大分配大小为 2GB(cudaMalloc 也是如此),因此是专用内存的大小。

Shared memory

有没有办法从主机分配gpu共享内存或RAM,然后可以在内核中使用?

最佳答案

我假设这里的目标是能够从 MX150 GPU 上运行的 CUDA 代码访问超过 2GB 的内存。您突出显示的“共享”内存是 Windows 图形系统的一部分,不能直接从 CUDA 访问。

您唯一的选择就是切换到 Linux。然后,您可以使用 cudaMallocManaged “超额订阅”您的 GPU 内存(即分配超过 2GB)。

Windows WDDM驱动模型不支持GPU显存超额订阅,MX150仅支持Windows WDDM驱动模型。

关于c++ - nvidia cuda访问gpu共享内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59309937/

相关文章:

c++ - vector push_back a moved local var in c++11 测试和混淆

nvidia - Xubuntu 12.04 显示器(带大黄蜂)升级后搞砸了

linux - 更改 TX1 中的 GPU 时钟速率时权限被拒绝

cuda - CUDA内存是如何管理的?

cmake - 交叉编译c/c++/cuda程序时尝试使用CMake

nvidia - 如何通过 Vulkan 使用 Nvidia 的 Tensor Core

c++ - 使用函数模板而不是模板特化

c++ - visual c++ 是否要求应​​用程序在 'main' 函数结束前暂停

c# - 托管 C++ 或 C# .NET,从 RapidShare 下载?

c++ - javacpp 中的 "a namespace name is not allowed"错误