牛角尖是什么意思| 足跟疼挂什么科室| ube手术是什么意思| 激素水平是什么意思| 太阳穴胀痛是什么原因| 肾积水是什么原因造成的| 稽留热常见于什么病| 度化是什么意思| 肛门瘙痒用什么药膏| 什么是团队| 功劳叶的别名叫什么| 失眠是什么引起的| 轩字属于五行属什么| 89是什么意思| 沉积是什么意思| 纯化水是什么水| 心脏长在什么位置| 葡萄籽什么牌子效果好| clarks是什么牌子| 2022年五行属什么| 几斤几两是什么意思| 1966年属什么| 轻度肠上皮化生是什么意思| 什么是开悟| 迪桑特属于什么档次| 低密度胆固醇高吃什么药| 插茱萸是什么意思| 湿疹用什么药膏最有效| 弟弟的儿子叫什么| viagra是什么药| 犯罪心理学属于什么专业| 急性荨麻疹吃什么药| 梦见大白蛇是什么预兆| 3.21什么星座| pr什么意思| 上海立秋吃什么| 小儿湿疹是什么原因造成的| butter是什么意思| 螳螂捕蝉什么意思| gi什么意思| 晒背什么时候最佳时间| 万能受血者是什么血型| 观音位置摆放什么方向| 八仙过海指什么生肖| 反应蛋白偏高说明什么| 舂米是什么意思| 秽是什么意思| 心肌梗塞有什么症状| 癞蛤蟆吃什么| 鸡腿炒什么菜好吃| 4是什么意思| 什么什么的天空| dha中文叫什么| 胆囊炎需要注意什么| 脾胃虚弱吃什么药| 精干是什么意思| 男人精子少吃什么药| kb是什么意思| 天线宝宝都叫什么名字| 帝王术是什么意思| 妇科杆菌是什么引起的| 大便黄色是什么原因| 九月十四号是什么星座| 生地黄是什么| 眩晕症吃什么药| 50年是什么婚| 备孕需要做什么| 高血压注意什么事项| 大姨妈量少是什么原因| spect是什么检查| 什么是社会考生| 花中四君子是什么| 兄长是什么意思| 4月27是什么星座| 腹泻能吃什么| 开店做什么生意好| 女生肾虚是什么原因| 豆工念什么| 天冬氨酸氨基转移酶高是什么原因| 结婚25年属于什么婚| 全身检查要挂什么科| 荔枝长什么样| 磨牙齿有什么方法可以治| 帕金森是什么症状| 曹操是什么帝| 痔疮用什么药好| moi是什么意思| 比围是什么| 睡觉趴着睡是什么原因| 上坟用什么水果| 香奈儿属于什么档次| 脑溢血是什么原因| 什么是神经衰弱| 玫瑰红是什么颜色| 上天是什么意思| 子宫肌瘤吃什么中药可以消除掉| 肝ca什么意思| 娘是什么意思| 生气会得什么病| 春季感冒吃什么药| 山竹是什么味道| 家里为什么会有跳蚤| 全麻后为什么不能睡觉| 日本人为什么长寿| 子宫偏大是什么原因| 冲鸡蛋水喝有什么好处| 1994年属什么生肖| 男人身体虚吃什么补| 心神不定是什么生肖| 高诊是什么意思| 梦见拉屎是什么意思| 什么时候怀孕几率最高| 乙肝看什么科| 糖耐量是什么| g18k是什么金| hcg下降是什么原因| 舌头边上有锯齿状是什么原因| 培根是什么肉| 空调出风小没劲什么原因| 一什么椅子| 婴儿什么时候会说话| 韭菜和什么不能一起吃| 脸部下垂什么方法提升效果好| 味极鲜是什么| 检查免疫力都需要化验什么项目| 东倒西歪的动物是什么生肖| 无花果不能和什么一起吃| 脑梗死吃什么药| 左室舒张功能减低什么意思| 男性吃什么生精快| 存货是什么| 水泻拉肚子吃什么药| 宝宝消化不良吃什么药| 天津五行属什么| 木指什么生肖| 葛洲坝集团是什么级别| 儿童风寒感冒吃什么药| 喝普洱茶有什么功效| 补钙最好的食物是什么| 湿疹什么样子| 大象吃什么| 1835年属什么生肖| 泡是什么意思| ld是什么意思| 招蚊子咬是什么血型| lotus是什么车| 身份证后六位代表什么| 什么颜色加什么颜色等于绿色| 虫草能治什么病| 爸爸的哥哥叫什么| 头发汗多是什么原因| 武则天是什么朝代| 世界杯什么时候开始| 小孩经常发烧是什么原因| 经期头疼吃什么药效果最好| 尤甚是什么意思| 氯雷他定片是什么药| 寄生树有什么功效作用| 走投无路是什么意思| 蚊子不喜欢什么味道| 如日中天是什么生肖| 家是什么结构的字| 慢性阑尾炎吃什么消炎药| 虾肚子上的黑线是什么| 知了猴什么时候出来| 左眼皮上有痣代表什么| 鸡腿炒什么菜好吃| 起风疹的原因是什么引起的| 油价什么时候调整| 嫡庶是什么意思| 北京户口有什么用| 乳腺发炎有什么症状| 氯化钾主治什么病| 不适随诊是什么意思| 3ph是什么意思| 蛇头疮用什么治疗最快| 天干指的是什么| 窦性心律有什么危害| 受持是什么意思| 下联是什么| 白色糠疹是什么原因引起的| 乳酸杆菌是什么| 肠息肉是什么症状| 9.23号是什么星座| 肩膀疼去医院挂什么科| 淋巴细胞百分比低是什么意思| 运动裤配什么上衣好看| 阴囊湿疹是什么原因造成的| 拉屎臭是什么原因| 舌苔红是什么原因| 掉睫毛是什么原因| 肾衰竭五期是什么意思| 精神洁癖是什么| 梦到好多蛇是什么意思| 手胶是什么| 妈妈最大的愿望是什么| 去香港买什么划算| 胎盘可以治什么病| 水瓶座的幸运色是什么| ehe是什么牌子| 嗔是什么意思| cva医学上是什么意思| 姑姐是什么意思| nub是什么意思| 痘痘反复长是什么原因| 两肋插刀是什么意思| bmi是什么意思啊| 小猫的耳朵像什么| 为什么掉头发| 高三学生吃什么补脑抗疲劳| 发烧反反复复是什么原因| 什么最解酒最快| 什么是科学| 两鬓长白发是什么原因| 下巴长痘痘用什么药| 狗为什么吐舌头| 胎停了有什么明显症状| 骨扫描是检查什么| 每天吃一个鸡蛋有什么好处| 热泪盈眶的盈是什么意思| 什么是卧蚕| amh是什么意思| 肚子疼吐了是什么原因| 夏天的诗句有什么| 什么鸟一生只有一个伴侣| 非萎缩性胃炎吃什么药效果好| 什么的杜鹃花| 苦瓜泡酒有什么功效和作用| 百无一用是什么意思| 尿结石不能吃什么| 土黄色裤子配什么颜色上衣| 什么叫消融手术| 什么是软组织损伤| tct检查是什么| 梦见着火是什么意思| 什么样的太阳| 筷子掉地上是什么征兆| 反流性食管炎是什么症状| 刻板印象是什么意思| bu是什么颜色| 善良对什么| 38岁适合什么护肤品| 头发油腻是什么原因| 新西兰移民需要什么条件| 小腿肚酸疼是什么原因| 办护照需要什么条件| 梦见自己死了是什么预兆| 农历6月是什么月| 王大锤真名叫什么| 人参和什么泡酒壮阳| 为什么会胰岛素抵抗| 上课什么坐姿可以瘦腿| 土克水是什么意思| 扫把星代表什么生肖| 顶臂长是什么意思| 上火吃什么水果| vain是什么意思| 双离合什么意思| 手心发热是什么原因引起的| 脑梗做什么检查最准确| 黑枸杞泡水喝有什么作用和功效| 硫黄和硫磺有什么区别| 头上长虱子什么原因引起的| 爱马仕配货是什么意思| 百度Jump to content

郑州到成都峨眉、乐山、九寨沟、黄龙旅游

From Wikipedia, the free encyclopedia
百度 这一系列做了习近平总书记爱吃家常菜,习近平总书记最大的爱好是读书等等。

A CPU cache is a piece of hardware that reduces access time to data in memory by keeping some part of the frequently used data of the main memory in a 'cache' of smaller and faster memory.

The performance of a computer system depends on the performance of all individual units—which include execution units like integer, branch and floating point, I/O units, bus, caches and memory systems. The gap between processor speed and main memory speed has grown exponentially. Until 2001–05, CPU speed, as measured by clock frequency, grew annually by 55%, whereas memory speed only grew by 7%.[1] This problem is known as the memory wall. The motivation for a cache and its hierarchy is to bridge this speed gap and overcome the memory wall.

The critical component in most high-performance computers is the cache. Since the cache exists to bridge the speed gap, its performance measurement and metrics are important in designing and choosing various parameters like cache size, associativity, replacement policy, etc. Cache performance depends on cache hits and cache misses, which are the factors that create constraints to system performance. Cache hits are the number of accesses to the cache that actually find that data in the cache, and cache misses are those accesses that don't find the block in the cache. These cache hits and misses contribute to the term average access time (AAT) also known as AMAT (average memory access time), which, as the name suggests, is the average time it takes to access the memory. This is one major metric for cache performance measurement, because this number becomes highly significant and critical as processor speed increases.

Another useful metric to test the performance is Power law of cache misses. It gives you the number of misses when you change the size of the cache, given that the number of misses for one of the cache sizes is known. Similarly, when you want to test the performance of the cache in terms of misses across different associativities, Stack distance profiling is used.

Introduction to types of cache misses

[edit]

Processor performance increase due to cache hierarchy depends on the number of accesses to the cache that satisfy block requests from the cache (cache hits) versus those that do not. Unsuccessful attempts to read or write data from the cache (cache misses) result in lower level or main memory access, which increases latency. There are three basic types of cache misses known as the 3Cs [2] and some other less popular cache misses.

Compulsory misses

[edit]

Each memory block when first referenced causes a compulsory miss. This implies that the number of compulsory misses is the number of distinct memory blocks ever referenced. They are sometimes called cold misses too. Cold misses cannot be avoided unless the block is prefetched.

It has been observed that an increase in block size to a certain extent to exploit spatial locality leads to a decrease in cold misses. Increasing block size leads to prefetching of nearby words in a block and preventing future cold misses. Increasing the block size too much can lead to prefetching of useless data, thus increasing the number of cold misses.

Conflict misses

[edit]

Conflict misses occur when the data required was in the cache previously, but got evicted. These evictions occur because another request was mapped to the same cache line. Generally, conflict misses are measured by subtracting the number of misses in a cache with limited associativity by the number of misses of a fully associative cache of the same size and cache block size.

Since conflict misses can be attributed to the lack of sufficient associativity, increasing the associativity to a certain extent (8-way associativity almost as effective as fully-associative) decreases the amount of conflict misses, however, such an approach increases the cache access time and consumes a lot more power than a set associative cache.

Capacity misses

[edit]

A capacity miss occurs due to the limited size of a cache and not the cache's mapping function. When the working set, i.e., the data that is currently important to the program, is bigger than the cache, capacity misses occur frequently. Out of the 3Cs capacity misses are the hardest to identify, and can be thought of as non-compulsory misses in a fully associative cache. In a single processor system, the misses that exist after subtracting the number of compulsory misses and conflict misses can be categorized as capacity misses.

Since capacity misses can be attributed to the limited size of a cache, a simple way to reduce the number of such misses is to increase the cache size. Although this method is very intuitive, it leads to a longer access time and an increase in cache area and its power consumption. Also, after a certain cache size, the number of misses saturate and do not decrease even on increasing the cache size.

Effect of manipulating basic cache parameters on cache misses.[2]
Parameters Compulsory misses Conflict misses Capacity misses
Larger cache size No effect No effect Decrease
Larger block size Decrease Uncertain effect Uncertain effect
Larger associativity No effect Decrease No effect

The above three kinds of misses only address uni-processor misses.

Coherence misses

[edit]

The 3Cs group of cache misses can be extended to 4Cs when a multi-processor system with cache is involved, the fourth C being coherence misses. The coherence miss count is the number of memory accesses that miss because a cache line that would otherwise be present in the thread's cache has been invalidated by a write from another thread.[3] Coherence in a multi-processor system is maintained if only one copy of a memory block is present or all the copies have the same value. Even if all the copies of memory block do not have the same value, it doesn't necessarily lead to a coherence miss. A coherence miss occurs when threads execute loads such that they observe the different values of the memory block.[4]

The coherence problem is complex and affects the scalability of parallel programs. A global order of all memory accesses to the same location must exist across the system to tackle this problem.

Coverage misses

[edit]

The 4Cs group of cache misses can be further extended to 5Cs when the multi-processor system includes a coherence directory organized as a cache, i.e., that can replace entries. This fifth C stands for Coverage.[5] The coverage miss count is the number of memory accesses that miss because a cache line that would otherwise be present in the processor's cache has been invalidated as a consequence of a directory eviction. If the directory is not able to track a cache line due to its limited capacity, the line must be invalidated from the processors' cache to maintain Coherence.

[edit]

System activities such as interrupts, context switches and system calls lead to the process being suspended and its cache state being altered. When the process execution is resumed, it suffers cache misses to restore the cache state that was altered. These misses are called system-related misses.[2]

Furthermore, cache misses due to context switching may be placed into two categories described below.

Replaced misses

[edit]

When a context switch occurs, the cache state is modified and some of its blocks are replaced. The misses on access to these blocks are called replaced misses.

Reordered misses

[edit]

Some blocks in the cache may not be replaced due to context switching but their recency is changed. Reordered misses are said to occur when misses occur due to change in recency and not due to the blocks being replaced. However, when the suspended process resumes execution, reordered blocks don't lead to context switch misses when no other misses cause these reordered blocks to be evicted.

System-related misses become significant when context switching occurs regularly. Increasing the cache size leads to a decrease in capacity and conflict misses but it has been observed that it leads to an increase in system-related misses if the cache is still smaller than the working set of the processes sharing the cache. Hence reducing the number of system-related misses presents a challenge.

Average memory access time

[edit]

These cache misses directly correlate to the increase in cycles per instruction (CPI). However the amount of effect the cache misses have on the CPI also depends on how much of the cache miss can be overlapped with computations due to the ILP ( Instruction-level parallelism ) and how much of it can be overlapped with other cache misses due to Memory-level parallelism.[2] If we ignore both these effects, then the average memory access time becomes an important metric. It provides a measure of the performance of the memory systems and hierarchies. It refers to the average time it takes to perform a memory access. It is the addition of the execution time for the memory instructions and the memory stall cycles. The execution time is the time for a cache access, and the memory stall cycles include the time to service a cache miss and access lower levels of memory. If the access latency, miss rate and miss penalty are known, the average memory access time can be calculated with:

where is the access latency of level one cache, is the miss rate of level one cache and is the additional cycles a miss at a higher level takes to be serviced compared to a hit at higher level, and is calculated with:

this formula can be expanded further and used recursively for all the further levels in the memory hierarchy to get the . [6]

Power law of cache misses

[edit]

The Power law of cache misses shows a trend in the capacity misses in a particular application of the program as affected by the cache size. This empirical observation led to the mathematical form of power law, which shows the relation between the miss rate and the cache size. It can be stated as

where M is the miss rate for a cache of size C and M0 is the miss rate of a baseline cache. The exponent α is workload-specific and typically ranges from 0.3 to 0.7, with an average of 0.5. The power law was validated on quite a few of real-world benchmarks.[7]

This relation shows that only a small fraction of cache misses can be eliminated for constant increase in cache size. This law holds true only for a certain finite range of cache sizes, up to which the miss rate doesn't flatten out. The miss rate eventually becomes stagnant at a certain, large enough cache size, and after that the relation does not give correct estimates.

Stack distance profile

[edit]

The stack distance profile is a better representation of how the cache misses are affected by the cache size. The power law of cache misses just showed a rough approximation of the same. A stack distance profile captures the temporal reuse behavior of an application in a fully or set-associative cache.[8]

Applications that exhibit more temporal reuse behavior generally access data that is more recently used. Let us assume the associativity of a cache to be . To collect the stack distance profile information of this cache, assuming it has LRU replacement policy, counters are used starting from to and one additional counter , which keeps count of the misses. The counter increments when there is a hit in the way and the counter is incremented on every miss. The stack distance profile shows the trend of hits, decreasing from the most recently used data to the least recently used. Using this stack distance profile information, the cache miss for a cache with associativity and LRU replacement policy, where can be computed as

This profiling information has a limitation that it can only capture the temporal reuse across different associativities. For other purposes, the temporal reuse must be studied in greater detail.

See also

[edit]

Notes

[edit]
  1. ^ Hennessy, J. and Patterson, D. (2003). Computer Architecture : a Quantitative Approach,3rd edition. Morgan-Kaufmann Publishers, Inc. ISBN 9781558607248.{{cite book}}: CS1 maint: multiple names: authors list (link)
  2. ^ a b c d Solihin, Yan (2025-08-06). Fundamentals of Parallel Multicore Architecture, 2016 edition. Chapman & Hall. ISBN 978-1482211184.
  3. ^ "Modeling Cache Coherence Misses on Multicores" (PDF). {{cite journal}}: Cite journal requires |journal= (help)
  4. ^ Sweden, Michel Dubois, University of Southern California, USA, Murali Annavaram, University of Southern California, USA, Per Stenstr?m, Chalmers University of Technology (2012). Parallel computer organization and design. Cambridge: Cambridge University Press. ISBN 9781139051224.{{cite book}}: CS1 maint: multiple names: authors list (link)
  5. ^ Ros, Alberto; Cuesta, Blas; Fernández-Pascual, Ricardo; Gómez, María E.; Acacio, Manuel E.; Robles, Antonio; García, José M.; Duato, José (2010). EMC2: Extending Magny-Cours Coherence for Large-Scale Servers. 17th International Conference on High Performance Computing (HiPC). pp. 1–10. doi:10.1109/HIPC.2010.5713176. ISBN 978-1-4244-8518-5.
  6. ^ Patterson, John L. Hennessy, David A. (2011). Computer architecture : a quantitative approach (5th ed.). San Francisco, Calif.: Morgan Kaufmann. ISBN 978-0-12-383872-8.{{cite book}}: CS1 maint: multiple names: authors list (link)
  7. ^ Hartstein, A.; Srinivasan, V.; Puzak, T. R.; Emma, P. G. (2025-08-06). "Cache miss behavior". Proceedings of the 3rd conference on Computing frontiers. CF '06. pp. 313–320. doi:10.1145/1128022.1128064. ISBN 978-1595933027. S2CID 17728397.
  8. ^ Mattson, R.L.; Gecsei, J.; Slutz, D. R.; Traiger, I (1970). "Evaluation Techniques for Storage Hierarchies". IBM Systems Journal. 9 (2): 78–117. doi:10.1147/sj.92.0078.
排黑便是什么原因 8点是什么时辰 唇珠在面相中代表什么 kcl是什么药 女性真菌感染是什么原因造成的
3月16号是什么星座的 温煦是什么意思 劳动法什么时候实施的 睡觉流口水是什么原因 梦见烧火是什么意思
淫羊藿是什么 心慌吃什么药好 粳米是什么米 孔子是什么时期的人 捉虫是什么意思
生日可以送什么礼物 羊水栓塞是什么意思 大器晚成什么意思 一个马一个并念什么 美团是干什么的
红指什么生肖liaochangning.com 1975年属什么hcv8jop7ns3r.cn hr是什么意思jingluanji.com 没有生抽可以用什么代替hcv9jop5ns9r.cn 山楂有什么作用hcv8jop1ns0r.cn
秀才相当于现在的什么学历hcv9jop4ns6r.cn 三妻四妾是什么意思cj623037.com 4月29号0点是什么时候hcv7jop7ns2r.cn 盆腔磁共振平扫能查出什么hcv9jop4ns6r.cn range rover是什么车weuuu.com
喉咙痛不能吃什么东西hcv8jop9ns3r.cn b站的硬币有什么用hcv8jop8ns0r.cn 头皮屑结块是什么原因hcv9jop2ns7r.cn 长孙皇后叫什么名字hcv8jop0ns7r.cn 有血尿是什么原因hcv7jop6ns2r.cn
什么叫开门见床头hcv8jop6ns5r.cn 痛风都有什么症状hcv8jop1ns6r.cn 回声不均匀是什么意思hcv9jop0ns4r.cn 狗不吃饭是什么原因hcv8jop8ns5r.cn 喝咖啡不能吃什么食物hcv9jop5ns5r.cn
百度