2011-07-15 8 views
2

2つのgpusでpycudaプログラムを実行しようとしています。私はTalonmiesの素晴らしい投稿を読んできました。あなたがスレッドライブラリでどのようにそれを行うのかを説明しています。投稿はmpi4pyでも可能です。2 gpusのMpi4pyで作業するピクチャを取得する

私はpycudaでmpi4pyを実行すると、プログラムはエラーを与える: self.ctx = driver.Device(gpuidは) pycuda._driver.logicErrorを.max_context:cuDeviceGetに失敗しました:

を初期化していないおそらくこれがためです私の試みは、gpuデバイスの2つを同時に初期化することです。誰かがmpi4pyを使って2つのgpusを動作させる方法の非常に短い例がありますか?

+0

「gpuデバイスの2つを同時に初期化する」とは何を意味しますか? mpi4pyを使用すると、マルチGPUモデルは信じられないほど簡単です。コミュニケータの各ランクに一意のGPUを選択し、そのカードにコンテキストを設定します。コミュニケータの各メンバのGPUを決定し、ブロードキャストしたり、GPU IDをプロセスランクから派生させたりすることができます。 isnfailingなコードを投稿できますか? – talonmies

+0

+1 - 誰でもこのことについて助言してくださいね! – jtlz2

+0

http://maldun.lima-city.de/introduction_to_python/PyCUDA.html#mpi-and-pycuda-ref - コードが成功しないことを除けば... – jtlz2

答えて

1

hereはこの問題の可能性が高い人のために、mpi4py + pycudaの実例です。

関連する問題