7

私はmatlabpool、とparfor使用法に精通していますが、それでも計算を高速化する必要があります。

1GBのネットワークにもっと強力なコンピューターがあります。両方のコンピューターにR2010bがあり、同じコードとパスがあります。

並列計算に両方のコンピューターを使用する最も簡単な方法は何ですか?

今日使用しているコードの例:

--- main.m ---

matlabpool('open', 3);
% ...
x = randn(1e5,1);
y = nan(size(x));
parfor k = 1 : length(x)
    y(k) = myfunc(x(k));
end

--- myfunc.m ---

function y = myfunc(x)
    y = x; % some computation
return
4

1 に答える 1

4

実際のクラスター コンピューティングには、分散コンピューティング ツールボックスが必要です。これについては、並列コンピューティングの情報ページを参照してください。

コードを変更せずに、同じアプリケーションをコンピューター クラスターまたはグリッド コンピューティング サービス (MATLAB Distributed Computing Server™ を使用) で実行できます。並列アプリケーションをインタラクティブに、またはバッチで実行できます。

しかし、1 台のコンピューターをワーカー プールに追加するためだけにツールボックスをインストール (=購入) するのは、少し費用がかかりすぎるかもしれません。幸いなことに、別の方法もあります: http://www.mathworks.com/matlabcentral/fileexchange/13775

私は個人的にこれを使用していませんが、一見の価値があると思います。

于 2012-07-30T17:19:19.390 に答える