parfeval
を使用したバックグラウンドでの関数の評価parfeval
を使用すると、完了を待たずにバックグランドで関数を評価できます。多くの場合、for ループを早めに中断できると便利です。たとえば、最適化の手順で、結果が良好な場合はループを早めに停止できます。この処理を行うには、1 つまたはすべての並列プール ワーカーで parfeval
または parfevalOnAll
を使用します。これは、中間結果をプロットできるようにする場合に役に立ちます。この処理は、ループの完了を待たなければならない parfor
を使用する場合とは異なります。
データ キューを使用して異なるワーカーからメッセージまたはデータの送信とポーリングを行うには、send
と poll
を共に使用します。afterEach
を使用すると、データ キューから新規データを受信したときに呼び出す関数を追加できます。
parallel.Future
の配列の各要素またはすべての要素が完了した後で自動的に関数を呼び出すには、afterEach
および afterAll
を使用します。この配列には、parfeval
、parfevalOnAll
、afterEach
または afterAll
から返された Future を含めることができます。
結果が利用可能になったときにループを早期に終了して結果を収集する。
この例では、parfeval
future の状態をクエリする方法と、future をキャンセルする方法を説明します。
parfeval を使用したパラメーター スイープ中のプロット
この例では、並列パラメーター スイープを parfeval
により実行し、その結果を計算中に DataQueue
オブジェクトによって戻す方法を示します。
afterEach と afterAll を使用したユーザー インターフェイスの非同期更新
parfeval
を使用してワーカーで非同期の計算を実行し、ユーザー インターフェイスを応答可能な状態に保つことができます。
この例では、Web カメラからのフレーム取得をデータの後処理と並行して実行する方法を示します。
この例では、Web カメラからのイメージ取得とデータの後処理を並行して実行する方法を示します。
この例では、ローカル マシン上で複数の深層学習実験を実行する方法を説明します。
parfeval を使用した複数の深層学習ネットワークの学習
この例では、学習中に parfeval
を使用して、深層学習ネットワークのネットワーク アーキテクチャの深さについてパラメーター スイープを行い、データを取得する方法を説明します。
spmd、parfor、および parfeval からの選択
spmd
を、parfor
や parfeval
などの他の並列計算機能と比較する。