辐射3 75避难所目的:延迟和缓存的思想无处不在

来源:百度文库 编辑:九乡新闻网 时间:2024/07/14 01:47:44

延迟和缓存的思想无处不在

(2010-07-31 01:29:30)转载 标签:

杂谈

延迟和缓存的思想无处不在
延迟和缓存,不是什么高深的东西,每个人都能理解的。延迟和缓存的思想是无处不在的。
比如,为什么我们的衣服都有衣兜? 曾经,祖国军队的制服是以衣兜的多少来划分等级的。
这个衣兜就是缓存。衣兜要解决的问题就是延迟。常用的东西,随身带,不然,就必须回家拿。回趟家来回要两小时,这两小时就是延迟。
显然,衣兜越多,装得越多,回家的次数就少很多,一天的有效工作时间就高很多。这说明,祖国军队用衣兜多少来划分等级是非常科学的。
可是,衣兜不能无限多,所以就出现了提包。如果衣兜是一级缓存,提包就是二级缓存。现在全世界的趋势都是缓存越来越大,不管是CPU还是小姑娘们的包,都是越来越大。
可是,缓存不能无限大。因此,最关键的就是在包包里装什么。这就是由替换算法决定的。我的发明就是一种替换算法。
传统的替换算法LRU,就是以古推今。LRU认为,昨天的工作,今天一定会重复,所以,昨天包包里装什么,今天就还装什么。
我的看法是,大部分工作都是不会重复的,所以,昨天装的,今天基本不装,除非... 
总之,很简单的道理。 我卖给Intel 几个B的美刀,不算什么了。



我在解释“带宽”,“延迟”和“缓存”的时候,常常遇到一些意想不到的困难。
最容易混淆的是“带宽”和“延迟”。 带宽,好比是公路,路越宽,通行能力越大。现在的CPU芯片有上千个管脚是很平常的,龙芯都有900多根管脚,管脚越多,带宽越大。 
但是,公路宽是够宽了,公路的利用率,却不一定有保证。这就是“延迟”。 
延迟好比把饭馆建在山顶,上山10个小时,吃饭2个小时。增加管脚,增加通道,相当于多修了几条路,但是每条路上山,都要10小时。假设,饭店只有一个位置,每位客人吃完,只能下山,然后又上山再排队。那么,可想而知,路再宽,利用率也很低。这就是说,延迟是瓶颈,带宽的利用率,被延迟限制了。
青山绿水间,常有好饭店,饭店旁边,都会有旅馆。这个旅馆就是缓存(Cache)。
没有延迟,就不会有缓存。这好比,市区的饭店,不一定有旅馆,因为市区的饭店没有“延迟”。
所以,旅馆是山间饭店的性能的瓶颈。客人可以住在旅馆,吃到腻,再走。有些人吃的顿数多,有的少,但是你不知道,谁会吃多少次。假设旅馆不收钱,你安排谁住多久?这就是缓存的替换算法。