|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ 並 : [へい] 【名詞】 1. line-up 2. in a row 3. rank with 4. rival 5. equal ・ 並列 : [へいれつ] 1. (n,vs) arrangement 2. parallel 3. abreast ・ 列 : [れつ] 【名詞】 1. queue 2. line 3. row ・ プログラミング : [ぷろぐらみんぐ] 【名詞】 1. programming 2. programing, (n) programming/programing
並列化(へいれつか)は、コンピュータにおいて、同時に複数の演算処理を実行すること(並列計算)によって処理のスループットを上げるプログラミング手法である。 並列化の主な内容は全体の問題をいくつかの独立したタスクに分割し、タスクをプロセッサに割り当て、それらのタスクを同調させて最終結果を得ることである。並列化は本質的に並列化可能な(主にデータに依存性のない)問題にのみ適用できる。問題の分割手法には領域分割、機能分割があり、両方を組み合わせることもある。 並列化には主に2つのアプローチがある。 ;暗黙的な並列化または自動並列化 :処理系(コンパイラ等)が自動的に問題をタスクに分割する ;明示的な並列化または手動での並列化 :プログラマが明示的にプログラムの分割方法を指定する 多くの要因・手法が並列化のパフォーマンスに影響を及ぼす。 ロードバランシングは負荷の高いプロセッサから負荷の低いプロセッサへとタスクを移すことで、すべてのプロセッサをビジーに保とうとする。 単一CPUのシステムで正しく動作するプログラムでも並列環境ではそうではないこともある。これは同一のプログラムの複数のコピーが互いに干渉しあう(例えば、同時に同じメモリ領域を読み書きする)からである。そのために並列環境では入念なプログラミング(排他制御)が必要となる。 == 自動並列化 == 自動並列化とは、並列化コンパイラを使用して、字面的にそのまま解釈すれば逐次的に計算を行うようなプログラムのソースコードを変換し、並列計算を行うようなオブジェクトコードを得る手法である。並列計算機の並列計算能力を活用するために行われる。自動並列化の目的はプログラマを退屈でエラーの起きやすい並列化作業から解放することである。この数十年で技術的には非常に進歩したが、必要なプログラム解析の複雑さやコンパイル時には不明な要因(例えば、入力データの範囲)などのために、逐次的なプログラムの完全な自動並列化は未だ達成されていない。 自動並列化で主に焦点が当てられるプログラム制御構造はループである。なぜなら、一般的にプログラムの実行時間のほとんどは何らかのループの中で消費されるからである。自動並列化コンパイラはループを分解し、繰り返しが別々のプロセッサで並行に実行されるようにする。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「並列化」の詳細全文を読む スポンサード リンク
|