フォン・ノイマン・ボトルネック
(Von Neumann bottleneck から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2026/03/23 09:46 UTC 版)
|
|
この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 (2023年3月)
|
フォン・ノイマン・ボトルネック (英: Von Neumann bottleneck) またはノイマンズ・ボトルネックは、コンピュータ・アーキテクチャの1つの型であるノイマン型に存在する性能上のボトルネック。
概要
ノイマン型では記憶装置に命令とデータを格納するのでプロセッサが命令を実行しデータを読み書きするには記憶装置(メモリなど)にアクセスしなければならない。このとき、命令とデータが同じ記憶装置に格納されていると、命令読み出しとデータアクセスの競合によってデータアクセス速度が制限されてしまい、プロセッサの性能を高めてもコンピュータ全体の性能向上につながらない問題がある。
|
この節には独自研究が含まれているおそれがあります。
|
なお、この問題はノイマン型にかぎらずプロセッサと記憶装置の間で共通して発生する問題であるが、ノイマン型が代表的なプロセッサと記憶装置の間のアーキテクチャであるためこのように呼ばれる[要出典]。
現代のコンピュータはノイマン型である。フォン・ノイマン・ボトルネックを避けるため、記憶装置のアクセス速度を高める開発が行われる他、キャッシュメモリなど記憶装置へのアクセス頻度を減らす機能が開発されている。コンピュータで実行するプログラムを設計する際には、使われやすい処理をサブルーチン化するとキャッシュメモリが有効に使え、フォン・ノイマン・ボトルネックの影響を低減できる。
歴史
フォン・ノイマン・ボトルネックは、今日では、コンピュータ設計上の留意点として扱われているが、もともとはプログラミングにおける問題意識から指摘されたものである。ジョン・バッカスがそのチューリング賞受賞講演「プログラムはフォン・ノイマン・スタイルから解放されうるか? 関数型プログラミング・スタイルとそのプログラム代数」において、従来型のプログラミング・スタイルの問題点について、それを実行するコンピュータの「CPUと記憶装置と、その2つをつなぐバス」という構成の影響を受けすぎており、この隘路(ボトルネック)の交通整理をすることがプログラミングになってしまっている、と主張した際に命名された。
関連項目
- フォン・ノイマン・ボトルネックのページへのリンク