1

たとえば、実行できますか:

parallel -j 200 < list0

「リスト」の場所:

nice -n -20 parallel -j 100 < list2 nice -n -20 parallel -j 100 < list1

これは実行可能/可能でしょうか?

4

2 に答える 2

0

工程数には限りがあります。実際には、数十を超えるプロセスを並行して実行しないでください (少なくともパーソナル コンピューターでは。数百万ドルのマシンでは、制限は間違いなく大きくなります)。

fork(2)execve(2)setrlimit(2)のマニュアル ページを読んで、いつ、どのように失敗するかを理解してください。

そして、失敗する限界に達する前に、カーネル内のスケジューラーが過負荷になるため、forkより多くの並列プロセスを実行すると計算全体が遅くなるしきい値に到達します。

コンピューターのネットワーク (おそらく 2 台だけ) にアクセスできる場合は、MPIも検討してください。アプリケーションの一部を再コーディングできる場合は、pthreadsについてもお読みください(例:このチュートリアル)。

于 2014-04-10T05:36:12.187 に答える