-1

C++ を使用して有限解析​​コードの新しいアルゴリズムを作成しています。64*64 の正方形メッシュで作業していて、4 つの面 (面 A、B、C、D) があり、それを 4 つのサブに分解するとします。ドメインであり、表面 A の表面セルも散らばっている可能性があります。

私の質問は一般的なものです。この 64*64 グリッドで変数を計算したいかどうか疑問に思っていますが、この変数はサーフェス A の座標情報全体に依存します。一部のサブドメインでは A がまったくないことがわかったからです。そのため、コードと新しいアルゴリズムがシリアルでは非常にうまく実行され、正常に実行されることがわかりましたが、パラレルではすぐに失敗します。

この種の状況に対処するためのアドバイスや戦略はありますか?

4

1 に答える 1

1

並列処理は扱いにくい場合があります。共有メモリ パラダイムに基づくアルゴリズムを使用している場合、このメモリ領域を保護する必要があります。そうしないと、競合状態が発生します。

分散メモリなどの他のパラダイムには、これを処理するための他の種類の戦略があり、主にメッセージパッシングです。

于 2013-05-01T15:32:15.473 に答える