内存除了频率带宽等跟处理速度有关系之外,和本身的容量大小跟速度有没关系呢?为什么大一点会更好,跟它的工作原理有关吗?今天宏旺半导体ICMAX就和大家分享下。
当然了理论上内存的容量确实是越大 运行程序的速度也就越快,但超过了一定的值也就等同与浪费了,可以这样理解,内存的作用大体可以看作硬盘、光区等较慢设备和CPU的缓冲区。
1.在进行读写任务是,硬盘的速度大约是7200转-10000转/分钟,就算是最快的“读写”速度,也就是190MB/S,而市面上的CPU的本身主频一般都在1GHZ以上,所以CPU会把处理好的数据暂时放到内存中,而后在有内存写入硬盘中。
2.在处理程序时,CPU要处理各个部件的发送过来的指令,而CPU在同一时间只能处理一个指令,这就要求其它部件进行等待! 由于价格的关系,CPU本身的缓存容量有限 这些指令不得不到内存中去等待寻址了。
要知道我们的系统一但运行就要先占用一部分内存,然后省下来的部分来处理程序 ,而程序的每一个指令都要从硬盘经过内存,所以说加大内存容量,当然可以加快程序运行的速度。
如果你运行一个程序这就好比你把一个仓库(硬盘)的原料(相当于指令)给工厂(cpu)加工,然后买到市场(完成命令),而内存就相当于运输的车,除了车上的司机(好比系统所必须占用的内存)那么剩下的空间越大,你一次拉过去的东西就越多,所以完成该项任务的速度就越快了,当然,如果汽车的速度快(相当于内存的工作频率),那么你完成一运输的时间就越短,在同样大小的车上,当然是速度快的车先完成任务了。
这个就是为什么你提高了内存的容量就可以使速度加快的原理了,但是需要提醒的是,要提高速度不能只看运输(内存大小、速度),也要看看你的周边设备,都会影响你整体的效率,所以当你的车(内存)一次就可以吧所有的原料(指令)拉给加工厂(cpu)时,你的内存容量不需要再加了!如果还觉得速度慢,就要提高其他部件了!
当然上述情况是在同类型存储中比较的,当然也存在不同类的存储介质,容量越小提取速度越快的,就容量而言,cpu的cache<内存<外存,而读取速度正好相反,外存<内存<cache。容量来说cache一般单位就是兆,内存现在几个G,外存动辄数百G甚至几个T。相反读取速度呢,cache能达到每秒数亿次,快的内存也就几十兆吧,外存就更别提了。CPU访问的话呢,肯定首先要和速度快的进行信息交互啊,所以cpu不能和外存直接交互,能和内存直接交互。