Windows中用于R的GPU加速数据处理


11

我目前正在撰写有关大数据的论文,该论文使我们大量利用R进行数据分析。出于游戏原因,我的电脑中恰巧装有GTX1070。因此,我认为如果可以使用它来加快我的老师正在做的某些事情的处理速度,那真的很酷,但是这样做似乎并不容易。我已经安装了gpuR,CUDA,Rtools和其他一些东西,例如,我可以从基因组表达数据中创建gpuMatrix对象,但是我还没有找到可以同时使用gpuMatrix对象的函数并且还提供了任何明显的性能差异。也许这只是与gpuR程序包固有的局限性有关-其他一些程序包似乎确实在谈论具有听起来像他们在寻找我想要的东西的功能,

几乎所有这些软件包都是专用于Linux的,在Windows中实现对R的GPU支持是否特别困难?还是有其他原因导致Windows中可用的软件包太少?从某种意义上说,我只是很好奇,但是真正发挥作用也很酷。令我惊讶的是,Windows几乎没有可用的功能,通常情况恰恰相反。


1
我发现无论使用哪种编程语言,Windows中的GPU计算都是具有挑战性的。这些工具倾向于在Linux或OS X上开发。您可以尝试使用Linux Mint Cinnamon(目前是我最喜欢的发行版,因为一切正常)的双引导系统。
阿德里安·凯斯特

Answers:


4

根据我的经验,为R设置GPU处理非常困难,而在Windows机器上进行设置则更加困难。此外,GPU处理只能用于非常特定的计算类型。

如果您只是想为此设置GPU处理,那么我的回答就毫无用处。

但是,如果您关心系统和代码的总体性能优化,则建议检查以下步骤:

  • 使用Microsoft R Open代替Base R,因为它会自动在您的计算机上启用多核处理。

  • 向量化您的代码

  • 使用诸如data.table之类的库代替dataframes

  • 避免生长物体

通常,R的性能在很大程度上取决于您的代码质量。Patrick Burns 在R Inferno中提供了关于您可以做什么应该做的非常好的摘要。


感谢您的评论。我相应地改变了答案。
jd1338

然后,我的评论不再有用。
42
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.