1つのアプリケーション/プログラムのプロセッサ使用率を向上させる

1つのアプリケーション/プログラムのプロセッサ使用率を向上させる

私が使うクラスタルX自宅のデスクトップで、異常に大きなシーケンスをいくつか整列させるには、完了するまでに 1 週​​間以上かかり、マシンの最大容量をはるかに下回る処理量になります。

top | grep clustalx次のような出力が得られる。

5985 @ユーザー名 0 -20 1971048 105428 9012 R 99.9 2.7 5829:27 クラスタックス

CPU使用率は約100、メモリ使用量はRAMの約3%と表示されています。しかし、システムモニターはそうではないことを示しています。

CPU使用履歴とメモリ履歴

画像では最大 2 つの CPU コアが動作していますが、これは Firefox とシステム モニターを使用しているためです。それ以外の場合は 1 つだけです。clustalx の優先度も に設定しましたがVery high、目立った改善は見られません。

CPU と RAM をさらに活用するには、何をすればよいでしょうか。何か提案があれば、ぜひ教えてください。

負荷平均 ~2.7 (他のプログラムも使用している場合)

これに関連して次の投稿を見ましたが、私の質問には答えていません。

CPU 使用率を上げる方法 [終了]

システム仕様:
Ubuntu 64 ビット 14.04 LTS、154 GB HDD パーティション、4 GB RAM、Intel Core i3-4130 CPU @ 3.40GHz × 4 プロセッサ、10 GB スワップ。

プログラム仕様: ClustalX for Linux - 生物学的配列のアライメントに使用されます。

私のプログラムが32/64ビットかどうかを判断するために、私は

find /usr/bin/clustalx

/usr/bin/clustalx: ELF 64 ビット LSB 実行可能ファイル、x86-64、バージョン 1 (SYSV)、...

答え1

簡単: コアの数だけプログラムを実行します...

複数の形式でビデオをトランスコードする場合も同じことを行います。すべてのビデオ エンコーダーがマルチコア/マルチ CPU に対応しているわけではないので、1 つのコアで 1 つの解像度のビデオ アンコールを実行し、別のコアで別の解像度のビデオ アンコール (異なるコマンドライン パラメーターを使用) を実行します。

質の低いレビュー担当者:いくつかの複雑な問題には、極めて単純な解決策があります。

答え2

これによれば:

https://www.biostars.org/p/44231/

clustalx は 1 つのコアのみを使用するようで、clustal omega または mafft を使用する必要があるようです。

関連情報