inducer/pycuda

CUDA integration for Python, plus shiny features

何を解決するか

PyCUDAはPythonからNvidiaのCUDA並列計算APIに直接アクセスする方法を提供し、完全なC++アプリケーションを書かずに、計算集約的なタスクにGPUアクセラレーションを活用できるようにします。

動作方法

CUDAドライバAPIのPython的なラッパーとして機能します。速度のためにC++ベースレイヤーを使用し、RAII(リソース取得は初期化)を実装してメモリとオブジェクトのクリーンアップを自動的に管理し、リークやクラッシュを防ぎます。CUDAカーネルを管理するためのSourceModuleやGPU上のデータを扱うためのGPUArrayなどの高レベルな抽象化を提供します。

対象ユーザー

Python言語を使ってNvidia GPU上で高性能並列計算を実行したい開発者や研究者。

特徴

  • 自動リソース管理: RAIIを使用して、メモリの解放とコンテキストの分離を正しい順序で保証します。
  • C++のパフォーマンス: ベースレイヤーはC++で書かれており、Pythonラッパーによるオーバーヘッドを最小限に抑えます。
  • 完全なAPIアクセス: CUDAドライバAPIのすべての機能にアクセス可能で、OpenGLとの相互運用性もサポートしています。
  • エラー処理: CUDAエラーを自動的にPythonの例外に変換し、デバッグを容易にします。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト