2

大学の研究室に参加したばかりで、自分が書いた C++ コードをコンパイルして実行するためのクラスターへのアクセス権が与えられました。SSH を使用してアクセスし、Linux ターミナルのようにクラスターを使用します。

コードの実行中に比較的長い時間待たなければならないことがよくあります。クラスターをより効率的に使用する方法があるかどうかを把握しようとしています。たとえば、クラスターにはさまざまな CPU/ノードがあり、そのうちのいくつかはより多く使用され、他のものはあまり使用されていません。特定の CPU にアクセスするにはどうすればよいですか? さまざまなノードに関する情報を提供する「Ganglia」概要ページにアクセスできます。

また、別の SSH ウィンドウで 2 つのプロセスを実行すると、別のプロセッサまたはノードが自動的に使用されますか、それとも手動で指定する必要がありますか。

これらの問題に役立つドキュメントが見つからなかったので、少し助けていただければ幸いです。

ありがとう

4

1 に答える 1

4

クラスターで何かを実行するだけでは、クラスターをまったく活用しているとは限りません。デフォルトでは、おそらくヘッド ノードでのみ実行されます。ソフトウェアは、クラスター専用に作成する必要があります。

インターフェイスが必要な何らかの種類のスケジューラが実行されている可能性があります。おそらく、distcc がインストールされ、特定のクラスター用に構成されているかどうかも確認できます (複数のマシンでコンパイルを行うため)。異なるノード上のプロセスが通信できるようにするために、特定の種類の MPI が実行されている場合もあります。

クラスタ ソフトウェアのセットアップは、ハードウェアとコンピューティング環境に非常に特化している傾向があります。本当に、この種の質問をする前にマシンを使用したことのある人に尋ねることをお勧めします。ここで受け取るアドバイスは、特定のクラスターに対して完全に正確である可能性は低いためです。

于 2010-07-23T10:58:41.297 に答える