Slide 9
Slide 9 text
9
各プログラミングパターンのタスク依存制御
プログラミングパターン タスク依存の制御ポイント ハマりどころ
Mutual Execution
(Mutex, Synchronizedなど)
ロックの取得・解放 デッドロックを起こしやすい
Future Futureの合成やawait ネストのフラット化が難しい
MPI プロセス間通信
通信元・先のプロセスを
明確に管理する必要あり
Reactive 依存データの更新 メモ化などの最適化が難しい
MapReduce Shuffleや外部出力
Map処理の負荷が不均一だと
並列性能が悪くなる
個人的な実装経験を元に整理してみると……
「アクター間メッセージ」でタスク依存を制御するアクターモデルがピッタリかも
どれも帯に短し襷に長しな場合……
抽象度
低
高