導入
シミュレーションを複数個同時に実行している際に、一気に100個走らせるのはCPUを圧迫して結局終わらない。この問題を解決するために、CPUを100%程度を消費しつつ、それ以上はシミュレーションを走らせない方法を考えた。
前提
前提として、CPU100%程度消費するシミュレーションの同時実行数を予め見積もること。
解決策
解決方法として、現在走っているシミュレーション実行数をモニターし、上記同時実行数を超えているようなら走らせずに、超えていないようなら新しいシミュレーションを走らせる。
そのために、実行数をターミナル上でモニターする方法が以下である。
$ ps aux | grep [run file] | wc -l
これで行数を得られる。(ただし、grep [run file]の実行も数えるため、1行分余計に数えてしまうので注意)
結論
上記の同時実行数をshellscripts上でモニターすることで適切にCPUを消費して計算することができる。