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の例外に変換し、デバッグを容易にします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト