2016-05-21 9 views
0

Torque/Maui(w/PBS)の最近のビルドを使用して、異機種ハードウェアのクラスタでジョブをスケジュールしています。ハードウェアは、2つのグループを持つことを望む10個のノードの2つのセットから成り、1つのノードのセットの1つに優先度が高められています。たとえば:ノードのサブセットのグループ優先度

Node set A of 10 nodes has elevated priority for User Group 1 
Node set B of 10 nodes has elevated priority for User Group 2 

私は、これはここに文書化されているすべてのノードのために達成される方法に精通しています:

http://docs.adaptivecomputing.com/maui/5.1.3priorityusage.php

しかし、私はこのタイプのを設定するための最善の戦略に不慣れですクラスタのサブセットに対する優先度。私がマウイの文書から確かめることができるのは、ノードセットやパーティションを使って行うことができますが、どちらかが正しいのか、別の戦略が一緒にあるのかは分かりません。

編集:私はノード集合AとBで異なる優先順位ではあるが、それは使いやすさを簡素化し、クラスタ全体を使用し、潜在的にユーザーを可能にするように、単一のキューを持っているため、事前に

感謝を好むだろう助けて。

答えて

1

私が質問を理解する方法では、ノードの割り当てとジョブの優先順位を混同しています。ジョブ優先度は、優先予約キューで優先度が発生するため、マウイがどのくらい早くジョブを実行するかを決定します。これにより、適格/アイドル・キュー内の他のすべてのジョブに対するジョブの制約内で、ジョブがどれだけ早く実行できるかが決まります。

マウイがジョブを配置(スケジュール)する場所とは別の場所です。このタイプのユースケースを処理する最も自然な方法は、スタンディング予約です。各ノードセット(ホストリスト、機能、またはパーティションを介して)に予約を作成し、両方のグループ(または全員)に両方の予約にアクセスできますが、優先アクセスでグループ外のすべての人にネガティブアフィニティを適用できます。

例:マウイ島が引き寄せますGROUP1からのみ「セットA」の特性/機能を持つノード、およびジョブが含まれるように予約RSVAを作成します。このような構成により

SRCFG[rsvA] NODEFEATURES=setA 
SRCFG[rsvA] GROUPLIST=group1,ALL- 
SRCFG[rsvA] HOSTLIST=ALL 

SRCFG[rsvB] NODEFEATURES=setB 
SRCFG[rsvB] GROUPLIST=group2,ALL- 
SRCFG[rsvB] HOSTLIST=ALL 

、(すなわち、正の親和性を有する)にその予約のノード。同様に、group2のユーザーからのジョブは、 "setB"プロパティ(nodeファイル、またはmaui.cfgのNODECFG行に定義されている)を使用して、rsvBのノードに流れます。この設定は単一のキューでうまく動作し、本質的にユーザー透過です。

+0

返信いただきありがとうございます。これは私が達成したいことに非常に近いです。グループ1からQ状態で待機しているジョブが多数あり、グループ2のユーザーがジョブを送信するとどうなりますか?これらのグループ2のジョブは、セットBで実行する優先順位を得るか、キュー時間が長くなるため、グループ1のグループがグループ2のジョブの前に実行されるでしょうか?基本的に、私は2つのハードウェアセットを持っていて、それぞれはそれぞれのグループが所有しています。同僚はリソースを共有することに同意したが、自分のハードウェアを優先することを好みます。つまり、自分の仕事は他のグループと比較して常に待ち行列の上にあります。 – Vince

+1

私の知る限りでは、マウイは少なくとも特殊なフープジャンプをすることなく、これを直接行うことはできません。 Moabは、 "HPEnable" cred修飾子でそれを行うことができます。 http://docs.adaptivecomputing.com/9-0-1/MWM/help.htm#topics/moabWorkloadManager/topics/resourceAccess/managingreservations.html#aclmodifiers – clusterdude

+1

'SRCFG [johnspace] USERLIST = john CLASSLIST =〜debug ' "デバッグジョブはこの予約で実行することもできますが、Johnのすべてのジョブに開始の機会が与えられた後にのみ検討されます。ユーザーjohnのジョブジョブの優先順位にかかわらずデバッグジョブの前に考慮されます。" – clusterdude