0

私はPyRserveを使用しています。複数の実行中の python プロセスからいくつかの R 評価を実行したいと考えています。これらの評価はすべて同じグローバル変数を使用する必要があるため、すべての新しい接続が一度だけ定義された後にこれらの変数を使用できれば、多くの時間を節約できます。すべての接続でこれらを再定義することは時間がかかるため、オプションではないことに注意してください (たとえば、一部の変数はファイルからロードされたモデルです)。特定の変数を共有する複数の PyRserve 接続を持つ方法はありますか? そうでない場合、ここでの良い回避策は何ですか?

ドキュメントに決定的なものは見つかりませんでした。

4

1 に答える 1

0

pyRserve のドキュメントから、共有メモリ オブジェクトを接続名前空間に割り当てることはできない*ようです。

現在の実装では、pyRserve は次の基本型の設定とアクセスを許可します。

  • なし (NULL)
  • ブール値
  • 整数 (32 ビットのみ)
  • 浮動小数点数 (64 ビットのみ)、つまり double
  • 複素数
  • 文字列

さらに、次のコンテナーがサポートされています。

  • リスト
  • numpy 配列
  • タグ付きリスト
  • AttrArray
  • タグ付き配列

接続ごとにワーカー プロセスを生成する場合は、単純な型の共有メモリ オブジェクトと、mp.Manager クラスの上位レベルのマネージド オブジェクトを提供するPythonマルチプロセッシングライブラリを使用することをお勧めします。

*実際にはこれをテストしていない可能性があります...

于 2015-07-06T12:57:46.927 に答える