Presentation Information
[B-6-83]A CPU/GPU Backend Selection and Code Transformation Method for Python Scientific Computing
〇Che Huang1, Ayako Iwaki1, Tomoya Hatano1, Tatsuya Shimada1 (1. NTT,Inc.)
Keywords:
Execution Time Prediction,CPU/GPU Backend Selection,Code Transformation
クラウド環境でのPython科学計算では、CPU向けNumPyとGPU向けCuPyの使い分けが性能に大きく影響するが、環境や入力サイズに応じた手動調整が必要である。本稿では、NumPy/CuPy共通関数を対象に、関数単位の実行時間予測とCPU–GPU間転送時間を考慮したバックエンド選択、およびAST解析によるソースコード自動変換手法を提案する。3種類のアクセラレータ環境で評価した結果、平均MAPEは1.57〜1.62%であり、約99%の予測対象でMAPE 10%以下を達成した。また、静的書換えおよび実行時CPU/GPU自動切替により、固定的なバックエンド選択より平均処理時間を短縮できることを確認した。
