英語フランス語スペイン語

Ad


OnWorksファビコン

dmtcp - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで dmtcp を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド dmtcp です。

プログラム:

NAME


dmtcp-分散マルチスレッドチェックポイント

SYNOPSIS


dmtcp_コーディネーター [港]

dmtcp_launch コマンド[args ...]

dmtcp_restart ckpt_FILE1.dmtcp [ckpt_FILE2.dmtcp ...]

dmtcp_command coordinatorコマンド

DESCRIPTION


DMTCP プログラムの任意のグループの状態を透過的にチェックポイントするためのツールです
多くのマシンに分散し、ソケットで接続されています。 ユーザーの変更はありません
プログラムもオペレーティングシステムも。 MTCP として利用可能なDMTCPのスタンドアロンコンポーネントです
単一プロセスのチェックポイントライブラリ。

OPTIONS


コマンドごとに、-helpまたは-hフラグがコマンドラインオプションを表示します。 ほとんどのコマンド
ラインオプションは、環境変数を介して制御することもできます。 これらはで設定することができます
「exportNAME = value」を使用したbashまたは「setenvNAMEvalue」を使用したtcsh。

DMTCP_CHECKPOINT_INTERVAL = integer
自動チェックポイント間の時間(秒単位)。 チェックポイントも開始できます
コーディネーターに「c」と入力して手動で。 (デフォルト:0、無効;
dmtcp_coordinatorのみ)

DMTCP_HOST = string
クラスタ全体のコーディネータが実行されているホスト名。 (デフォルト:localhost;
dmtcp_launch、dmtcp_restartのみ)

DMTCP_PORT = integer
クラスタ全体のコーディネータがリッスンするポート。 (デフォルト:7779)

DMTCP_GZIP =(1 | 0)
チェックポイント画像の圧縮を無効にするには、「0」に設定します。 (デフォルト:1、圧縮
有効; dmtcp_launchのみ)警告:gzipは秒を追加します。 gzipなしで、
ckpt / restartは多くの場合1秒未満です

DMTCP_CHECKPOINT_DIR =パス
チェックポイント画像を保存するディレクトリ(デフォルト:./)

DMTCP_SIGCKPT = integer
チェックポイントに使用する内部信号番号。 ユーザーが使用してはいけません
プログラム。 (デフォルト:SIGUSR2; dmtcp_launchのみ)

DMTCP_COORDINATOR


チェックポイントされる各計算には、DMTCPコーディネータープロセスが含まれている必要があります。 XNUMXつができます
dmtcp_coordinatorを介してコーディネーターを明示的に開始するか、コーディネーターの開始を許可します
dmtcp_launchまたはdmtcp_restartのいずれかによって暗黙的にバックグラウンドで動作します。 住所・アドレス
一意のコーディネーターのは、dmtcp_launch、dmtcp_restart、および
--hostおよび--portコマンドラインフラグを介して、または
DMTCP_HOSTおよびDMTCP_PORT環境変数。 どちらも指定されていない場合、ホストとポートのペア
デフォルトはlocalhost-7779です。 特定のコーディネーターに関連付けられているホストとポートのペア
dmtcp_coordinatorコマンドで使用されるコマンドラインフラグ、または
その場合、環境変数が有効になるか、デフォルトのlocalhost-7779になります。

コーディネーターはステートレスであり、 チェックポイント。 再起動時に、既存のものを使用できます
または新しいコーディネーター。 DMTCPの制御下にある複数の計算は、
このような計算ごとに、(一意のホストポートペアを持つ)一意のコーディネーター。

コーディネーターは、計算グループ内のすべてのプロセスのチェックポイントを開始します。
チェックポイントは次のように実行できます。一定の間隔で自動的に実行されます(DMTCP_CHECKPOINT_INTERVALを参照)。
その上); または、コーディネーターの標準入力で手動で開始します(次を参照)
段落); または、プログラムの制御下で、
dmtcpaware API(以下を参照)。

コーディネーターは、標準入力で次のコマンドを受け入れます。 各コマンドは
続いて鍵。 コマンドは次のとおりです。
l:接続されているノードを一覧表示します
s:ステータスメッセージを出力します
c:すべてのノードをチェックポイントします
f:ノードが欠落している場合でも強制的に再起動します(デバッグ)
k:すべてのノードを強制終了します
q:すべてのノードを強制終了して終了します
? :このメッセージを表示

コーディネーターコマンドは、を使用してリモートで発行することもできます dmtcp_command.

実施例 USAGE


1.別のターミナルウィンドウで、dmtcp_coodinatorを起動します。
(前のセクションを参照してください。)

dmtcp_コーディネーター

2.別々の端末で、各コマンドを「dmtcp_launch」に置き換えます
[コマンド] "。チェックポイントされたプログラムは、によって指定されたコーディネーターに接続します
DMTCP_HOSTおよびDMTCP_PORT。 新しいスレッドは、の一部としてチェックポイントされます
処理する。 子プロセスは自動的にチェックポイントされます。 リモートプロセス
経由で開始 ssh 自動的にチェックポイントされます。 (内部的に、DMTCPは
ssh リモートホストでdmtcp_launchを呼び出すコマンドライン。)

dmtcp_launch ./myprogram

3.チェックポイントを手動で開始するには、以下のコマンドを実行します
または「c」に続けて入力しますコーディネーターに。 それぞれのチェックポイントファイル
プロセスはDMTCP_CHECKPOINT_DIRに書き込まれます。 dmtcp_coordinatorは次のように書き込みます
「dmtcp_restart_script.sh」を作業ディレクトリに追加します。 このスクリプトには、
dmtcp_restartを呼び出して、以下を含む計算全体を再開します。
経由で作成されたリモートプロセス ssh.

dmtcp_command -c
または:dmtcp_command --checkpoint

4.再起動するには、dmtcp_restart_script.shを実行する必要があります。
の時点でdmtcp_coordinatorによって作業ディレクトリに作成されました
チェックポイント。 オプションで、このスクリプトを編集して、プロセスを別のプロセスに移行できます
ホスト。 デフォルトでは、再起動されたプロセスはXNUMXつだけフォアグラウンドで再起動されます
標準入力を受け取ります。 スクリプトを編集して、どのプロセスを選択するかを選択できます
フォアグラウンドで再起動されます。

./dmtcp_restart_script.sh

DMTCPウェア API


DMTCPは、チェックポイントされたアプリケーションが対話できるようにするプログラミングインターフェイスを提供します
dmtcp。 ソースディストリビューションで、関数についてはdmtcpaware /dmtcpaware.hを参照してください。
利用可能。 123つのサンプルアプリケーションについては、test / dmtcpaware [XNUMX] .cを参照してください。 の例について
その使用法、試してみてください:

cdテスト; rm dmtcpaware1; dmtcpaware1を作成します。 ./autotest -v dmtcpaware1

ユーザーアプリケーションはlibdmtcpaware.so(-ldmtcpaware)とリンクし、ヘッダーを使用する必要があります
ファイルdmtcp / dmtcpaware.h。

DMTCP プラグイン モジュール


ソースディストリビューションにはトップレベルが含まれます プラグイン ディレクトリ、方法の例
DMTCP用のプラグインモジュールを作成します。 さらなる例はにあります テスト/プラグイン ディレクトリ。 の
プラグイン機能は、XNUMXつの新しいユーザープログラム可能な機能を追加します。 プラグインは次のことを行うことができます:ラッパーを追加する
システムコールの周り。 特定のイベント中に特別なアクションを実行します(例:事前チェックポイント、
再開/チェックポイント後、再起動); キーと値のペアをデータベースに挿入できます。
の再起動されたプロセスによって照会できる再起動時間
計算。 (プラグイン機能で利用可能なイベントは、イベントのスーパーセットを形成します
dmtcpawareインターフェースで使用可能です。)XNUMXつ以上のプラグインが次のリストを介して呼び出されます。
コロンで区切られた絶対パス名。

dmtcp_launch --with-plugin PLUGIN1 [:PLUGIN2]..。

リターン CODE


DMTCPの制御下にあるターゲットプログラムは、通常、実行された場合と同じリターンコードを返します。
DMTCPなし。 ただし、DMTCPが失敗した場合(ターゲットプログラムが失敗したのではなく)、DMTCP
DMTCP固有の戻りコードrc(または、1つの特殊なケースではrc + 2、rc + XNUMX)を返します。ここで、rc
設定されている場合は環境変数DMTCP_FAIL_RCの整数値、それ以外の場合はデフォルト
値、99。

onworks.net サービスを使用してオンラインで dmtcp を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad