複数のユーザーが強力なワークステーションリソースを共有する最善の方法は何ですか?

複数のユーザーが強力なワークステーションリソースを共有する最善の方法は何ですか?

したがって、設定、正確な要件、試したオプションのリストを説明し、上記のアプローチの中でより良いアプローチであるか、最善の選択肢であるかを尋ねます。

だから私たちは機械学習研究者のグループであり、非常に強力なワークステーション機械や他の強力な機械を持っており、誰もが一つを持っています。

必要:

すべてのユーザーがワークステーションで同時に作業している場合、GPUは特定の時間にすべてのアクティブユーザーに効果的または均等に割り当てられます。 (RAMは気になるほど大きく、通常のハードドライブを使用しても大丈夫です。)(GPUの仮想化の一種?)

すべてのシステムで動作するOSはUbuntu 16です。

提案:

  1. ワークステーションに各ユーザーごとに複数の仮想マシンを設定し、現在のマシンを介してSSHを設定します。他のオペレーティングシステムで仮想マシンを実行することは多くのオーバーヘッドのように見え、ソフトウェアライセンスよりも多くのハードウェアにそれを費やすことをお勧めします。 VMWare ESXIベアメタルはオプションのようです。
  2. 複数のユーザーが同時に使用できるマルチシートアプローチは、各座席にキーボード、マウス、グラフィックカードのセットを必要としますが、ディスプレイ専用GPUは非常に強力ですが、これはただ1つの座席と複数の座席にすぎません。座席ごとに1つが必要です。単一のグラフィックカード(xephyr)で​​実行が遅い場合でも、ユーザーにコンピューティングGPUを効率的に展開する必要があります。
  3. 複数のユーザーがSSHを介して複数の仮想端末に接続します。コンピュータが高価で、複数のユーザーがコンピュータを共有していた頃には、Unixに複数の仮想端末が作成されました。それでもGPUを仮想化する方法が必要です。しかし、すべてが順調に進んでいれば、ユーザーが4人でコンピューティングGPUが2つなので作業を続けることができるので、コード(Tensorflow)で各プログラムをGPUに手動で割り当てて同時に2つのプログラムを実行することができます。この方法では、2つの物理GPUを4つの仮想GPUに仮想化することができますが、これが最善です(Nvidia vGPUを除く)。
  4. rCUDA、リクエストフォームが送信されました。待つ。
  5. Apache Mesosなどの一部のクラスタ管理システム。 CMSは単一のコンピュータまたは複数のコンピュータを考慮しないため、クライアント間でリソースを仮想化して効率的に割り当てることができます。
  6. LTSP、詳細に研究していません。

今私は上記の多くのアドバイスが素直に聞こえることができることを知っているので、あなたが知っていることに基づいてアドバイスを提供してください。質問にあいまいな内容があれば指摘していただければ明確に説明いたします。

ベストアンサー1

最良かつ簡単なソリューションは、Jupyter Notebook(他のシステムでコードを実行)+ SSH(アクセス+データ転送プロトコルを使用)+ TFを使用したGPU割り当てです。

おすすめ記事