記事の概要
作成日:2020-08-23
最終更新日:2020-08-23
1ヵ月あたりのビュー数:31
記事の文字数:942
CPU-マルチプロセッサによる並列処理
概要

CPUを複数使用し、並列化処理を行うことを「マルチプロセッサ」という。
今回はその「マルチプロセッサ」について。
マルチプロセッサの分類分け

「マルチプロセッサ」には以下のような分類分けがされている。
各CPUと主記憶装置の関係による分類

密結合マルチプロセッサ…各CPUが同じ主記憶装置を使用する
疎結合マルチプロセッサ…各CPUで異なる主記憶装置を使用する

「密結合マルチプロセッサ」の方は、同じ主記憶装置を使っているため競合などによってロスが発生することがある。
各CPUの役割による分類

各CPUの役割が同じか異なるかでも分類分けされている。

対照型マルチプロセッサ…各CPUが同じ役割を持っている
非対照型マルチプロセッサ…各CPUが異なる役割を持っている
命令と演算対象データの関係による分類

命令(Instruction)とデータ(Data)の関係による分類分けもされている。

この分類分けを「フリンの分類」と言う。
・SISD(Single Instruction stream Single Data stream)…1つの命令で1つのデータを処理する。マルチプロセッサではない。
・SIMD(Single Instruction stream Multiple Data stream)…1つの命令で複数のデータを処理する。GPUで使われる。
・MISD(Multiple Instruction stream Single Data stream)…複数の命令で1つのデータを処理する。現実には使われていない。
・MIMD(Multiple Instruction stream Multiple Data stream)…複数の命令で複数のデータを処理する。一般的なマルチプロセッサ処理。
マルチプロセッサによる性能向上率

マルチプロセッサによる性能向上率は以下の計算式で表される。

・E=1/(1-r+(r/n))
rは「並列処理によって何%速くなるか」を表す
nはプロセッサの数

これを「アムダールの法則」という。

上の計算式から分かる通り、処理の競合や依存関係などによりあらゆる処理を綺麗に処理を並列化できるわけではないため、2つプロセッサがあるからといって単純に2倍になるということはない。
関連タグ
情報技術
コメントログ
コメント投稿




広告枠
本サイトのタグ一覧
タグを表示する Webサイト作成Webツールアークナイツアークナイツ-ステージ攻略日記アズールレーンアズールレーン-日記ウマ娘ゲームデビラビローグホラーポケットタウン気ままな日記情報技術情報技術-WebAPI知的財産権統合戦略白夜極光本サイトについて魔王スライム様がんばる!漫画