增强Polars GPU Parquet读取器的性能,并具有块状阅读和UVM


泰德·霍索瓦(Ted Hisokawa)
4月11日,2025年07:05

探索Polars GPU Parquet读取器如何使用块状阅读和统一的虚拟内存来提高性能,从而增强大型数据集的数据处理功能。




处理大型数据集时,数据处理工具的性能至关重要。根据NVIDIA的博客,Polars是一个以速度和效率而闻名的开源图书馆,现在提供了由CUDF提供支持的GPU加速后端,大大提高了其性能功能。

解决非杂交读者的挑战

Polars GPU Parquet读取器(24.10版)在处理较大的数据集时面临缩放面临的挑战。随着量表因素的增加,绩效降低变得明显,尤其是超出SF200大关。这是由于内存限制在将大量的木准文件加载到GPU内存中时的限制,从而导致了不可存储的错误。

介绍大块的镶木读

为了减轻内存限制,引入了块状的镶木读者。它通过在较小的块中读取镶木quet文件来减少内存足迹,从而使Polars GPU更有效地处理较大的数据集。例如,与非嵌入式读者相比,实现16 GB的通行限制限制可以在各种查询中更好地执行。

利用统一的虚拟内存(UVM)

虽然块状阅读可以改善内存管理,但集成UVM通过允许GPU直接访问系统内存来进一步增强性能。这降低了内存限制并提高数据传输效率。尽管可能会影响吞吐量,但块状阅读和UVM的结合可以成功执行查询。

优化稳定性和吞吐量

选择权利 pass_read_limit 对于平衡稳定性和吞吐量至关重要。 16 GB或32 GB的限制似乎是最佳的,前者确保所有查询在没有内存之外的情况下成功。这种优化对于维持较大数据集的高性能至关重要。

比较块状GPU和CPU方法

即使有块状,观察到的吞吐量也通常超过基于CPU的Porars的吞吐量。 16 GB或32 GB pass_read_limit 与非锁定方法相比,促进更高规模因素的成功执行,这使得构成的GPU成为处理广泛数据集的优越选择。

结论

对于Polars GPU,使用带有UVM的块状木板读取器比基于CPU的方法和非嵌入式读取器更有效,尤其是具有大型数据集和高规模因素。通过优化数据加载过程,用户可以解锁重大的性能改进。与最新有关 cudf-polars (版本24.12及更高版本),块状木板读取器和UVM已成为标准方法,在所有查询和规模因素中都提供了实质性的增强。

有关更多详细信息,请访问NVIDIA博客。

图像来源:Shutterstock


(tagstotranslate)AI(T)加密(T)区块链(T)新闻



关键词:

GPUParquet读取器的性能并具有块状阅读和UVM增强Polars
Comments (0)
Add Comment