开始使用 Polars GPU 加速:查询速度提高 13 倍

Real-time financial market data for stocks and trends.
Post Reply
mostakimvip06
Posts: 413
Joined: Mon Dec 23, 2024 5:04 am

开始使用 Polars GPU 加速:查询速度提高 13 倍

Post by mostakimvip06 »

最近,我有幸在 NVIDIA RAPIDS cuDF 支持的 Polars GPU 引擎公开测试版发布之前抢先体验了它。这项尖端功能有可能通过 NVIDIA GPU 将 Polars 操作速度提高 13 倍,从而改变数据工作流程。如果您使用 Python 处理大规模数据集,那么这是一个不容错过的重大改变。

在这篇博文中,我将解释有关新 Polars GPU 引擎的所有信息,并提供分步指南来帮助您入门!

图像并排显示了 Polars 和 NVIDIA 的徽标

Polars:高性能 DataFrame 库
大多数数据科学工作流程的核心是 DataFrame,这是一种表格 中国博彩数据 数据结构,既灵活又直观,可用于处理结构化数据。简而言之,数据科学领域的每个人都使用过 DataFrame。

DataFrames 可以轻松地操作、探索和分析数据,为数据清理、过滤、分组和转换数据提供熟悉且一致的界面。

然而,在大数据环境下,传统的 DataFrame 库可能缺乏性能和可扩展性,而这正是 Polars 发挥作用的地方。

Polars是一个快速、高效的 DataFrame 库,已迅速成为高性能数据处理的首选。Polars 用 Rust 从头编写而成,旨在贴近硬件运行,优化速度和资源使用率,而无需依赖外部依赖项。

Polars 简介博客文章是开始使用 Python 中的该库的绝佳资源。

该图显示了最流行的 DataFrame 库的性能比较图

比较最流行的 DataFrame 库的性能。图片来源:Polars

Polars 发布的基准测试结果(如上图所示)表明,Polars 在不同查询中的表现始终优于 Pandas、Modin、PySpark 和 Dask 等其他库。这些结果凸显了 Polars 作为高性能数据处理最快选项的优势。

但这怎么可能呢?以下是 Polars 速度飞快的一些特点:

用 Rust 编写:它使用低级编程来执行操作,并接近硬件。
I/O 灵活性:它为所有常见的数据存储层提供一流的支持,无论是本地、云存储还是连接到数据库。
直观的 API:Polars API 允许您直观地编写查询。Polars 查询优化器在内部确定最有效的执行计划,从而最大限度地减少时间和内存使用。
核外处理:Polars 的流式 API 允许您处理太大而无法放入内存的数据集。
并行执行:Polars 自动利用所有可用的 CPU 核心,在它们之间划分工作负载,而无需额外的配置,从而最大限度地发挥机器的计算能力。
矢量化查询引擎:Polars 使用 Apache Arrow(一种列式数据格式)和 SIMD(单指令、多数据)以矢量化方式处理查询,以进一步优化 CPU 使用率。
随着最近 Polars GPU 引擎的公开测试版发布,它将变得更加快!

获得 Python 认证
展示你是一名具备 Python 工作资格的数据科学家
了解 NVIDIA RAPIDS cuDF 集成
近年来,随着数据集扩展到数亿甚至数十亿行,对更快数据处理和分析的需求呈指数级增长。为了应对这一挑战,数据科学领域已逐渐从传统的基于 CPU 的处理转向 GPU 加速计算。这就是 NVIDIA RAPIDS cuDF 发挥作用的地方。

NVIDIA RAPIDS是一套开源库,可实现 GPU 加速的数据科学和分析。RAPIDS 的核心旨在利用 NVIDIA GPU 的大规模并行性来加速通常受 CPU 限制的任务,从而简化数据工作流程。

在 RAPIDS 中,cuDF是负责 DataFrame 操作的库。cuDF 将熟悉的 DataFrame 抽象扩展到 GPU 内存,允许集成到数据工作流中而无需大量代码更改。该库支持数据科学家对 DataFrame 执行的所有关键操作:过滤、聚合、合并和排序,所有这些都由 GPU 提供支持以提高速度。

NVIDIA和Polars刚刚宣布推出由 RAPIDS cuDF 提供支持的 Python Polars GPU 引擎的公开测试版。这一新功能标志着高性能数据处理的重大飞跃,为使用 NVIDIA GPU 的 Polars 用户提供高达 13 倍的工作流程速度!
Post Reply