問題タブ [gnu-parallel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1627 参照

parallel-processing - 複数のコンピューターで GNU 並列を使用する方法

2 台のコンピューターで GNU 並列を使用したかったのです。1 台のコンピューターでは並列実行に成功しましたが、リモート コンピューターでは並列実行できませんでした。

バージョン: ローカル: parallel-20140222 、リモート: parallel-20130522。パスワードなしのsshログインを有効にしました。

parallel -j+0 --eta 'muscle -in {} -out {.}.aln -quiet' < list

しかし、次のコマンドを使用してリモートコンピューターで「並列」に実行しようとすると、

1) 時間並列 -j+0 --eta -Svaramesh@10.117.173.5,: -transfer, --return {.}.aln --cleanup 'muscle -in {} -out {.}.aln -quiet' <リスト

2) 時間並列 -j+0 --eta -S10.117.173.5,: -transfer, --return {.}.aln --cleanup 'muscle -in {} -out {.}.aln -quiet' <リスト

3) 時間並列 -j+0 --eta -S :,10.117.10.5 -transfer, --return {.}.aln --cleanup 'muscle -in {} -out {.}.aln -quiet' < リスト

それらのすべてが次のエラーを出しています

0 投票する
2 に答える
809 参照

cluster-computing - 複数の逐次依存ジョブを並行して実行する

PBS ベースのクラスターでいくつかの CFD シミュレーションを実行しています。多数のケースを実行するため、クラスター ノードで前処理を行いたいと考えています。2 つのステップを実行する必要があります。最初にメッシングを行い、メッシングが終了したら、メッシュ パーティショニング ルーチンを実行します。手作業を避けるために、pbs ジョブスクリプトでこれをプログラムしたいと思います。

以下を実行することで、すべてのケースのメッシングを並行して実行できます。

ここで、hexp はメッシング プログラムです。

次のコマンドを実行して、メッシング タスクを実行した後、パーティショニングを実行することもできます。

しかし、どうすれば2つを組み合わせることができますか? tst_1.igg のメッシュ化が終了すると、他のインスタンスのステータスに関係なく tst_1.igg の分割が続行されるように、最後のコマンドの 8 つのインスタンスを並列で実行したいと考えています。

よろしく、アダム

0 投票する
1 に答える
4703 参照

ssh - 並行してリモート rsync

評価目的で 2 台のマシン間でファイルを転送するために、並行して ssh 経由で rsync を実行しようとしています。単一の rsync プロセスと比較して、どれだけ高速になるかを知りたいです。

https://wiki.ncsa.illinois.edu/display/~wglick/Parallel+Rsyncの 2 つのソリューションを試し ましたが、大きな成功はありませんでした。 https://gist.github.com/rcoup/5358786 (うまくいきませんでした)

最初のリンクに基づいて、次のようなコマンドを実行します。

ファイルが転送されますが、うまく機能していないようです...この場合、ベースフォルダー内のすべてのファイルとフォルダーに対してプロセスを実行しますが、フォルダーが見つかると、その中のすべてを転送します1 つのプロセスのみを使用してフォルダーを作成します。

find -type f を使用しようとしましたが、ファイル階層が緩んでいるために問題が発生しました。

私がやりたいことをする方法はありますか?(ファイルとフォルダーの階層を維持しながら、ssh 経由で並行して rsync を使用します)。

0 投票する
2 に答える
4319 参照

linux - Perl のインストールに関する問題 間違った ELF クラス: ELFCLASS32

gnu_parallelサーバーの 1 つ (nproc=48) で実行したかったのです。コマンドを実行しようとすると、

いくつかのエラーが発生していましたが、

Perl を使用しているサーバーが多数あるため、サーバーに Perl を再インストールしたくありません。

サーバーで実行中の現在のアプリケーションに害を及ぼさないことなら何でもできます。

並行して走る方法を教えてください。

編集:

それ以外の場合、 App::Fatpacker を使用できますか? 問題を解決するために?

編集2

Fatpacker を使ってみましたが失敗しました。

EDIT:3 perlbrewをインストールしようとしました:間違ったELFClASSの次のエラーが発生しました

0 投票する
2 に答える
4528 参照

file - STDIN を複数のファイルに分割 (可能であれば圧縮)

データのストリームをその STDOUT に出力するプログラム (gawk) があります。処理されるデータは文字通り数十 GB です。単一のファイルに保存するのではなく、チャンクに分割し、保存する前にそれぞれに追加の処理 (圧縮など) を適用する可能性があります。

私のデータは一連のレコードであり、分割によってレコードを半分に分割したくありません。各レコードは、次の正規表現に一致します。

^\{index.+?\}\}\n\{.+?\}$

または簡単にするために、2 つの行 (最初は奇数で、ストリームの先頭から数えた場合でも) は常にレコードを作成すると仮定できます。

できること:

  • 標準のLinuxコマンドを使用して、チャンクの適切なサイズを定義してSTDINを分割しますか? レコード変数のサイズが正確であることを保証できないため、正確である必要はありません。または、def の場合はレコード数のみ。サイズによっては不可能です
  • 各チャンクを圧縮してファイルに保存します (名前に 001、002 などの番号を付けます)。

GNU parallelのようなコマンドを認識したり、それらcsplitを組み合わせる方法がわかりません。上で説明した機能が、カスタム perl スクリプトを書かずに実現できれば素晴らしいでしょう。ただし、これは別の最後の手段になる可能性がありますが、最適な実装方法はわかりません。