並列に動作しているすべてのMATLABセッションに対して、CPU使用率を100%にするにはどうすればよいですか。

私は私のMac(Mac OS X 10.8.5 2 * 2.4 GHz 6コアIntel Xeon)の端末からMatlabで実行したい9つのMatlabジョブを持っています。

それで、ターミナルで9つのタブを開き、それぞれで以下のコマンドを使ってMatlabセッションを開きます。

//Applications/MATLAB_R2014b.app/bin/matlab -nodesktop

それから、これらのMatlabセッションのそれぞれで私は私のプログラムを立ち上げます(これはparforを使用しませんし、使用することもできません)。
ジョブが実行されます。

しかし、Terminalウィンドウをトップにしたとき、MatlabセッションはCPUの1%から45%しか使用していないことがわかりました(そして12個のコアがあると思います)。

問題が何であるかについての任意の考え?
一定の割合のCPU使用率を課すことはできますか?

を使用して優先順位を付けようとしました

sudo renice -19 -p <PID number>

しかし、(-19を0または19に変更しても)うまくいかないようです。

ご協力いただきありがとうございます ;)

ベストアンサー
@Olivierによって書かれたように、あなたはあなたのプログラムが実際にCPUバウンドである場合にのみ100%の負荷を見るでしょう。もしそれがディスクからデータを読み、そして/または大きな行列を処理するならば、それはIO限界であるかもしれません。

たとえば、次のような単純なループ

>> for i = 1:1000000000000; i=i+1;end

CPU使用率を最大にする必要があります

15627 user       20   0 7161m 618m 110m S 102.0  0.4   2:44.14 MATLAB 

そのため、それを使用して、1つのインスタンスのCPU使用率が100%に達するかどうかを確認できます。もしそうであれば、それはあなたのコードがCPUに縛られていないことを意味します、そしてあなたはメモリを許して、同時にMatlabのより多くのインスタンスを試みて実行したいと思うかもしれません。そうでない場合は、設定を確認してこの動作の原因を見つける必要があります。

転載記事の出典を記入してください: 並列に動作しているすべてのMATLABセッションに対して、CPU使用率を100%にするにはどうすればよいですか。 - コードログ