キャッシュ‐メモリー【cache memory】
キャッシュメモリ
(キャッシュメモリー から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/05/26 14:01 UTC 版)
キャッシュメモリ (cache memory) は、CPUなど処理装置がデータや命令などの情報を取得/更新する際に主記憶装置やバスなどの遅延/低帯域を隠蔽し、処理装置と記憶装置の性能差を埋めるために用いる高速小容量メモリのことである。略してキャッシュとも呼ぶ。コンピュータは以前から記憶装置や伝送路の性能が処理装置の性能に追いつけず、この差が全体性能に対するボトルネックとされてきた(ノイマンズ・ボトルネック)。そしてムーアの法則に基づく処理装置の加速度的な高性能化により現在ではますますこの差が拡大されている。キャッシュメモリは、記憶階層の観点からこれを解消しようとするものである。
- ^ "to sustain Haswell’s CPU peak (e.g., 16 multiply-adds per cycle), a core must access 16 matrix elements (= 64 bytes) per cycle, all from memory ... assuming 2.0GHz processor, it requires memory bandwidth of: ≈ 64 × 2.0 GHz = 128 GB/s" 田浦. (2016). What You Must Know about Memory, Caches, and Shared Memory. 並列分散プログラミング, 東京大学.
- ^ "__m256 _mm256_fmadd_ps ... Throughput (CPI) ... Haswell ... 0.5" Intel Intrinsics Guide. 2022-04-03閲覧.
- ^ "A simple memcpy experiment ... 4.575611 GB/sec ... an almost proportional improvement up to 10 lists" 田浦. (2016). What You Must Know about Memory, Caches, and Shared Memory. 並列分散プログラミング, 東京大学.
- ^ "it requires memory bandwidth ... ≈ 20× more than it provides" 田浦. (2016). What You Must Know about Memory, Caches, and Shared Memory. 並列分散プログラミング, 東京大学.
- ^ "multi level caches ... recent processors have multiple levels of caches" 田浦. (2018). What You Must Know about Memory, Caches, and Shared Memory. 並列分散プログラミング, 東京大学.
- ^ "multiple levels of caches (L1, L2, . . . )" 田浦. (2018). What You Must Know about Memory, Caches, and Shared Memory. 並列分散プログラミング, 東京大学.
- ^ Bonwick, Jeff (6 June 1994). "The Slab Allocator: An Object-Caching Kernel". USENIX Summer 1994 Technical Conference. USENIX.
- ^ Torvalds, Linus. “arch/x86/kernel/vmlinux.lds.S at master”. GitHub. 2024年5月26日閲覧。 Linux カーネル、x86のリンカスクリプト。セクション
.data..read_mostly
が該当、マクロREAD_MOSTLY_DATA()
を用いて間接的に定義。 - ^ The FreeBSD Project. “sys/conf/ldscript.amd64 at main”. GitHub. 2024年5月26日閲覧。 FreeBSD カーネル、amd64のリンカスクリプト。セクション
.data.read_mostly
が該当。
- 1 キャッシュメモリとは
- 2 キャッシュメモリの概要
- 3 ソフトウェアへの影響
- 4 参考文献
- 5 関連項目
キャッシュメモリーと同じ種類の言葉
- キャッシュメモリーのページへのリンク