hot cache 和 cold cache
正在看understanding the linux kernle 中 memory management 的部分。在 page frame managment 中的hot cache 和 cold cache 不是很了解,根据书中所说,好像hot cache和cpu cache(硬件)很像,而cold cache 则与DMA的operation有关,但是还是不很清楚,求大侠解释,谢谢了。
作者: stefan_wei 发布时间: 2011-03-15
QUOTE:
正在看understanding the linux kernle 中 memory management 的部分。在 page frame managment 中的hot ca ...
stefan_wei 发表于 2011-03-15 16:05
stefan_wei 发表于 2011-03-15 16:05
热页往往很可能刚被用过,在CPU的cache中, 如果从这里取一页出去让CPU访问,比取一个不可能在cache中的页更合适
冷页类似,如果不需要让cpu访问(比如dma设备访问), 那么从热页中取就完全没有必要而且还有害
作者: flw2 发布时间: 2011-03-15
热页在高速缓存里,冷页在内存里
作者: amarant 发布时间: 2011-03-15
回复 flw2
意思是说cold cache就类似于DMA的cache,而hot cache则是给cpu作为cache?
意思是说cold cache就类似于DMA的cache,而hot cache则是给cpu作为cache?
作者: stefan_wei 发布时间: 2011-03-15
QUOTE:
实际上,这里为每个内存管理区和每个CPU提供了两个高速缓存:一个热高速缓存,它
存放的页框中所包含的内容很可能就在CPU 硬件高速缓存中;还有一个冷高速缓存。
如果内核或用户态进程在刚分配到页框后就立即向页框写,那么从热高速缓存中获得页
框就对系统性能有利。实际上,每次对页框存储单元的访问将都会导致从另一个页框中
给硬件高速缓存“窃取”一行 —— 当然,除非硬件高速缓存包含有一行:它映射刚被
访问的 “热”页框单元。
反过来,如果页框将要被 DMA操作填充,那么从冷高速缓存中获得页框是方便的。在
这种情况下,不会涉及到CPU,并且硬件高速缓存的行不会被修改。从冷高速缓存获得
页框为其他类型的内存分配保存了热页框储备
存放的页框中所包含的内容很可能就在CPU 硬件高速缓存中;还有一个冷高速缓存。
如果内核或用户态进程在刚分配到页框后就立即向页框写,那么从热高速缓存中获得页
框就对系统性能有利。实际上,每次对页框存储单元的访问将都会导致从另一个页框中
给硬件高速缓存“窃取”一行 —— 当然,除非硬件高速缓存包含有一行:它映射刚被
访问的 “热”页框单元。
反过来,如果页框将要被 DMA操作填充,那么从冷高速缓存中获得页框是方便的。在
这种情况下,不会涉及到CPU,并且硬件高速缓存的行不会被修改。从冷高速缓存获得
页框为其他类型的内存分配保存了热页框储备
ulk原话
作者: amarant 发布时间: 2011-03-15
谢谢大家!
明白了!
明白了!
作者: stefan_wei 发布时间: 2011-03-15