有没有办法使用我的 GPU 的整个内存进行 CUML 计算?

Is there a way of using the entire memory of my GPU for CUML calculations?

我是 RAPIDS AI 世界的新手,我决定第一次尝试 CUML 和 CUDF。 我在 WSL 2 上 运行 UBUNTU 18.04。我的主要 OS 是 Windows 11。我有一个 64 GB RAM 和一台笔记本电脑 RTX 3060 6 GB GPU。

在我写这篇文章的时候post,我是运行一个 CUDF 数据框的 TSNE 拟合计算,该数据框由大约 26,000 个值组成,存储在 7 列中(所有值都是数字或二进制的,因为分类的已经被热编码)。 虽然像 LogisticRegression 或 SVM 这样的分类器确实很快,但 TSNE 似乎需要一段时间才能输出结果(现在已经一个多小时了,即使 Dataframe 不是那么大,它仍在继续)。任务管理器告诉我 100% 的 GPU 被用于计算,即使 运行 “nvidia-smi” 在 windows powershell 上,命令 returns 只有 1.94总共 6 GB 中的 GB 当前正在使用中。这对我来说似乎很奇怪,因为我阅读了有关 RAPIDS AI 的 TSNE 算法比标准 scikit-learn 算法快 20 倍的论文。

我想知道是否有增加专用 GPU 内存百分比以执行更快计算的方法,或者这是否只是与 WSL 2 相关的问题(可能它将 GPU 使用限制在 2 GB)。

有什么建议或想法吗? 非常感谢

The task manager is telling me that 100% of GPU is being used for the calculations

我不确定 Windows 任务管理器是否能够告诉您计算所达到的 GPU 吞吐量。

"nvidia-smi" on the windows powershell, the command returns that only 1.94 GB out of a total of 6 GB are currently in use

内存利用率是一种不同于 GPU 吞吐量的计算方式。任何 GPU 应用程序都只会使用所请求的内存,内存使用率越高与吞吐量越高之间没有关联,除非应用程序特别提到可以通过使用更多内存来实现更高吞吐量的方法(例如,不同的算法对于相同的计算可能会使用更多的内存)。

TSNE seems taking a while to output results (it's been more than a hour now, and it is still going on even if the Dataframe is not so big).

这看起来确实很奇怪,而不是小型数据集的预期行为。您使用的是什么版本的 cuML,适合任务的 method 参数是什么?您是否也可以在 www.github.com/rapidsai/cuml/issues 上打开一个问题,提供一种访问您的数据集的方法,以便可以重现该问题?