コンピューターサイエンスの基本的なクラスの並列アナログのように、並列プログラミングの優れた紹介を提供するオンラインで利用可能な講義ノートまたはその他のリソースを探しています。
私の焦点は次のとおりです。分割統治、貪欲アルゴリズム、動的プログラミングなど、つまり逐次アルゴリズムの基本パターン(および問題)について話すことができますが、並列アルゴリズムのアプローチを分類するための適切な言語がありません。
たとえば、次の各問題への明白な並列アプローチには定性的振る舞いが異なるという事実を表すために、適切な用語を取得したいと思います。
- 整数の配列をすべてゼロに設定します(完全にスケーリングします)。
- 整数の配列を合計する(使用するスレッドが多いほど、オーバーヘッドが大きくなります)。
- 配列を指定して、各エントリと他のエントリの積をリストします(標準のdouble-for-loopを並列化すると、実行時間はプロセッサ数のsqrtにスケーリングされます)。
共有メモリ環境で十分であり、プロセス間通信は私にはそれほど関係ありません(実際、私はそれをまったく回避するアルゴリズムに興味があります)。さらに、技術的な側面は私には無視できます。