RTX 30系列GPU支持直连SSD,它会是AI炼丹“大杀器”吗?

AI资讯1年前 (2023)发布 AI工具箱
219 0 0

花将近一半的钱,买性能2倍的显卡,真香。

在本周的产品发布会上,英伟达推出了RTX 30系列显卡,只要5499元的价格,就能买到比1万元RTX 2080Ti性能高出一倍的显卡。

更多的CUDA核心、张量核心将浮点算力提升2倍,GPU的AI性能得以大幅提升。

但发布会上另一项功能引起了机器学习社区的注意,那就是RTX IO,有了它以后你“炼丹”的速度可能更快了。

什么是RTX IO?

RTX IO技术允许GPU在不使用CPU的情况下,将游戏素材数据直接从SSD加载到GPU的显存中。

过去,系统读取固态硬盘(SSD)里的数据时,需要由CPU来处理,然后释放到内存(RAM)中,再由CPU交给GPU。

这样一来一回,浪费了大量的时间不说,也浪费了GPU自身的解压能力。如果以14GB/s来全速读取PCIe 4.0 SSD的压缩数据,需要消耗24个CPU核心。

尤其是个人开发者,一般不会用到这么高规格的CPU。

RTX IO的作用就是解放CPU,用GPU来加速读取压缩数据。数据不会流过CPU和系统内存,而是直接交给GPU解压,再放入显存(VRAM)中。

英伟达表示,这项技术最多可以将数据I/O性能提升100倍。甚至PCIe 4.0 SSD的读取极限已经跟不上GPU的解码能力了。

虽然该功能主要是面向游戏玩家,但对AI开发者来说也有重大意义。

因为AI的训练和推理一般都是在GPU上进行的,传统的数据读取方式已经制约了“炼丹”的速度。

对于训练大型数据模型,通常将数据加载和卸载到显存上是AI工作负载的最大瓶颈。从CPU切换到GPU计算时,加载训练数据通常是pipeline中最慢的部分。

一位开发者表示,在TensorFlow或PyTorch中运行AI模型时,从GPU加载和卸载数据会消耗大量时间。

这导致对于较小的模型,用GPU实际计算的时间反而比CPU更长

虽然GPU训练和更新参数的速度要更快,但是向GPU加载和卸载数据比CPU慢得多,导致CPU训练速度反而更快的现象。

专业卡技术首次下放

其实英伟达的GPU直连技术早已有之,在RTX 30系列显卡发布以前,英伟达就有一个叫做GPUDirect的技术。

这也是在SSD和GPU之间建立直连通道,但是GPUDirect仅支持TeslaQuadro专业级显卡。

英伟达过去的测试数据表明了这项技术对计算速度的巨大提升。

  • 直接在存储设备与GPU之间传输数据,带宽提高了2到8倍。
  • 降低延迟,读取带宽更平滑,实测端到端延迟降低了3.8倍。
  • 对CPU负载的侵入较小,不会干扰GPU负载。GPU占用率接近零。
  • GPU的I/O带宽提高到215GB/s,而过去的CPU仅有50 GB/s。

还有,在去年的GPU技术大会上,英伟达展示RAPIDS开源软件项目中,通过数据直连,让GPU处理数据帧加速了1.5至8倍。

Timing PandasOutput: 82.2 ms per loop
%timeit pandas_df.a.mean()
# Timing cuDFOutput: 5.12 ms per loop
%timeit cudf_df.a.mean()

RTX IO的推出,意味着3000系列可能是我们在消费级GPU中首次数据直连的技术。

如果你从事计算机视觉的研究,那么RTX IO也许可以充分利用GPU解压图像的能力。

而且RTX IO现在仅支持Windows操作系统,未来何时支持Linux还是未知数。

像Keras,PyTorch或TensorFlow之类的通用库也没有提供支持,只有等到这些库更新后,才能方便直接调用。

不过,RTX 30系列的性价比已经足够高,即使短期内看不到RTX IO对机器学习的支持,也值得购。

那么,你期待RTX IO功能吗?你觉得它会对“AI炼丹”产生重大影响吗?

参考链接:

https://www.reddit.com/r/MachineLearning/comments/ilvkyi/d_nvidias_rtx_3000_series_and_direct_storage_for/

https://developer.nvidia.com/gpudirect

© 版权声明

相关文章

暂无评论

暂无评论...