私は比較的C + +で経験はありませんが、データをシャッフルするためのフレームワークを構築する必要があります。必ずしも関連するが、私のデータの一般的な流れ経路は次のように行く必要があります:1つの.exeから別のものにデータを渡す
- データは、PythonのオブジェクトがコンパイルされたC++拡張
- C++拡張機能に渡されたPythonスクリプト
- で生成されますコンパイルされたC++/CUDAコード(.exe)にデータを渡します(おそらくポインタ?)
- C++/CUDA .exeはstuffを実行します
- データはPythonスクリプトで処理され、さらにPython関数
ステップ3.問題が発生している場所です。 C++ Python拡張で見られるデータにアクセスできるように、CUDAコードを含む.exeを呼び出す方法はどうですか?私は何とかポインタを渡すことができるはずですが、私はどのように説明するリソースを見つけるのに問題があります。私は共有メモリの作成についての参照を見たことがありますが、そこにある詳細も不明です。
IPC(プロセス間通信)メカニズムについていくつかの調査を行う必要があります。 –
PythonのC++バインディングを見てきましたか?あなたはPython内からC++クラス/メソッド/関数を呼び出すことができます –
アドレスは所有プロセスに対してのみ有効なので、ポインタを渡すことはできません。 – Ceros