著者
石坂 一久 大野 善之 Sourav Saha 大道 修 小寺 雅司 荒木 拓也
雑誌
研究報告ハイパフォーマンスコンピューティング(HPC) (ISSN:21888841)
巻号頁・発行日
vol.2022-HPC-187, no.9, pp.1-6, 2022-11-24

データフレームコンパイラを搭載し利便性と高速性の両方を実現するデータフレーム用 Python ライブラリ Ducks を紹介する.データフレームは,github で 35K star を誇る Pandas に代表されるように,データ分析や前処理に広く用いられているが,データ量の増大や分析の複雑化により高速化が求められている.Ducks は HPC で培われてきた実行時コンパイル技術を用いることで,ライブラリ呼び出しを直接実行するのではなく,データフーム用の中間言語(IR)を生成して遅延実行を行う方式を採用している.これにより API とその実行を分離し,Pandas 互換の API を提供しながら,IR 上でのドメイン特化の最適化,ターゲットプラットフォームに最適化されたバックエンドによる IR 実行により高速性も実現する.ベンチマーク集である TPCx-BB,TPC-H に含まれる 45 種類のデータ前処理・分析処理を用いた CPU 上での評価では,ライブラリを選択する impor t文の変更のみで,Pandas に対して最大 17 倍,平均 5.8 倍の性能向上を得ることができ,本方式の有効性を確認した.