TA的每日心情 | 擦汗 2024-2-20 00:17 |
---|
签到天数: 794 天 [LV.10]以坛为家III
星辰大海
- 积分
- 810125
|
你可能对 缓存 理解有误
缓存的意义在于:解决存储器性能跟不上CPU性能的问题,并不是为了减少存储器的运行时间(通俗一点说,是为了解决卡顿问题)
某些场景下,开启了缓存的确会使得存储器的运行时间减少,比如频繁读取某一段刚好在缓存中的数据,这样就不会去存储器里读取了。
我没看过播放器的渲染代码,但是按照正常理解,播放器播放一次视频,一般只会使用视频数据一次(或几次?),并不会很频繁地使用某一段视频数据。所以实际上,存储器的运行时间并不会有很实质性的缩短。只是减少了一点读取存储器的次数。
一旦缓存里的数据不命中(在缓存中找不到需要的数据),就会再次读取存储器里的数据到快速存储(内存),这是缓存的设计原理,正常操作。
你所说的硬盘运行时间(对HDD的来说)实际上包含2部分:寻道时间+数据传输时间。
你想减少存储器读取次数的话,就开大缓存,让它一次性载入全部数据。因为存储器的读取次数减少了,存储器的运行时间(主要是减少了寻道时间,而数据传输时间基本不会变,因为数据还是至少要全部读取一次的)也会相应缩短一些。
总而言之就是,一般情况下,缓存不会减少你磁盘的运行时间,只会减少你磁盘的运行次数。因为磁盘运行次数减少了,所以磁盘的运行时间可能随之减少了一点,减少的那部分主要是磁盘的寻道时间。
|
|