2012-02-03 6 views
0

マルチコアプロセッサの場合、シェルスクリプトファイルからサブシェルを作成すると、サブシェルが別のプロセッサに移動する可能性がありますか、すべてのサブシェルと親シェルが同じプロセッサで実行されますか?私はマルチコアプロセッサマシンをチェックすることができませんでした。Linuxシェルスクリプト

+1

プロセスはプロセッサに「固着」していません(あなたがそれを1つに固定するのでなければ)。プロセスは、スケジューラのまわりでプロセッサを変更することができます。その親プロセスに関係なく。 – tMC

答えて

3

はい、同時に既存のプロセスを別のコアで実行することもできます。もちろん、これはサブシェルがバックグラウンドで実行され、メインシェルが他の作業をしていない限り、あなたには何も購入しません。

+1

サブシェルまたはコマンドがパイプラインの一部である場合、メリットが得られます。複数のコアはそれぞれ、パイプラインの1つの部分を並列に実行できます。もちろん、 'sort'は出力を生成する前にすべての入力を読み取る必要があるため、少し上手くいっていますが、... –

+0

@JonathanLeffler:私は、マルチコアホスト上のUnixパイプラインからかなりのスピードアップを経験したことはありません。 I/Oオーバーヘッドが大きすぎます。 –

関連する問題