問題タブ [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.
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' < リスト
それらのすべてが次のエラーを出しています
cluster-computing - 複数の逐次依存ジョブを並行して実行する
PBS ベースのクラスターでいくつかの CFD シミュレーションを実行しています。多数のケースを実行するため、クラスター ノードで前処理を行いたいと考えています。2 つのステップを実行する必要があります。最初にメッシングを行い、メッシングが終了したら、メッシュ パーティショニング ルーチンを実行します。手作業を避けるために、pbs ジョブスクリプトでこれをプログラムしたいと思います。
以下を実行することで、すべてのケースのメッシングを並行して実行できます。
ここで、hexp はメッシング プログラムです。
次のコマンドを実行して、メッシング タスクを実行した後、パーティショニングを実行することもできます。
しかし、どうすれば2つを組み合わせることができますか? tst_1.igg のメッシュ化が終了すると、他のインスタンスのステータスに関係なく tst_1.igg の分割が続行されるように、最後のコマンドの 8 つのインスタンスを並列で実行したいと考えています。
よろしく、アダム
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 を使用します)。
linux - Perl のインストールに関する問題 間違った ELF クラス: ELFCLASS32
gnu_parallel
サーバーの 1 つ (nproc=48) で実行したかったのです。コマンドを実行しようとすると、
いくつかのエラーが発生していましたが、
Perl を使用しているサーバーが多数あるため、サーバーに Perl を再インストールしたくありません。
サーバーで実行中の現在のアプリケーションに害を及ぼさないことなら何でもできます。
並行して走る方法を教えてください。
編集:
それ以外の場合、 App::Fatpacker を使用できますか? 問題を解決するために?
編集2
Fatpacker を使ってみましたが失敗しました。
EDIT:3 perlbrewをインストールしようとしました:間違ったELFClASSの次のエラーが発生しました
file - STDIN を複数のファイルに分割 (可能であれば圧縮)
データのストリームをその STDOUT に出力するプログラム (gawk) があります。処理されるデータは文字通り数十 GB です。単一のファイルに保存するのではなく、チャンクに分割し、保存する前にそれぞれに追加の処理 (圧縮など) を適用する可能性があります。
私のデータは一連のレコードであり、分割によってレコードを半分に分割したくありません。各レコードは、次の正規表現に一致します。
^\{index.+?\}\}\n\{.+?\}$
または簡単にするために、2 つの行 (最初は奇数で、ストリームの先頭から数えた場合でも) は常にレコードを作成すると仮定できます。
できること:
- 標準のLinuxコマンドを使用して、チャンクの適切なサイズを定義してSTDINを分割しますか? レコード変数のサイズが正確であることを保証できないため、正確である必要はありません。または、def の場合はレコード数のみ。サイズによっては不可能です
- 各チャンクを圧縮してファイルに保存します (名前に 001、002 などの番号を付けます)。
GNU parallelのようなコマンドを認識したり、それらcsplit
を組み合わせる方法がわかりません。上で説明した機能が、カスタム perl スクリプトを書かずに実現できれば素晴らしいでしょう。ただし、これは別の最後の手段になる可能性がありますが、最適な実装方法はわかりません。