OpenACC和统一内存

时间:2019-03-22 17:57:27

标签: cuda openmp openacc

您好,我尝试在具有Tesla V100的Google Cloud中运行我的程序(使用OpenACC,OpenMP和CUDA统一内存),并且成功运行,但是我使用了1xGPU 8xCores和50GB RAM,并尝试使用所有RAM有,所以我使用htop控制RAM的消耗,当我使用少量RAM时,一切运行正常,我有以下数据: VIRT = 26.8G,RES = 21.5G,SHR = 7440M。 当我尝试使用更多的RAM时,htop显示如下: VIRT = 27.2G,RES = 22.3G,SHR = 7700M-就像“极限”。 程序在此参数下分配数据并“卡住”(以5MB \ s的速度分配)。我该怎么办?以及如何使用更多具有CUDA统一内存的GPU?我也尝试使用2xV100,但没有区别(我以为我可以使用2xVRAM)。

1 个答案:

答案 0 :(得分:1)

我相信UVM可以在多个GPU上开箱即用(减去一些初始启动成本)。如here所述,托管分配可以按需迁移到其他处理器,因此访问另一个GPU上的数据应仅触发迁移,这对于程序员是不可见的。我对其余的问题还是有些困惑。