宁推网-站长资讯

服务器大内存有什么好处

服务器内存主要起什么作用,服务器大内存有什么好处?

1、服务器内存主要是用来存储临时数据,做缓存用的。服务器系统本身所占的内存比较少,内存需要消耗的大小,取决于你服务器里跑的应用程序。

2、理论上来说内存越大越好,可以将更多的临时数据放到内存里面,避免直接读硬盘,毕竟读内存的速度要比读硬盘的速度快很多,但从经济的角度来看,够用就好了,多了,服务器也用不上,放在那里浪费。

如果你曾经和服务器厂商打过交道,就会发现他们对于内存容量的渴求是极其贪婪的。是啊,电信、证券、量化这些不差钱的主顾在尝试了内存数据库百倍速度的高潮后,已经不能够回头了。毕竟0.01秒的响应提升,就意味着白花花的银子。当这个压力传导给提供机器的服务器厂商的时候,他们的内心一定是甜蜜又伴随着一丝酸楚的。24TB这个数字,框定了利润的上限,这是更多的金钱所不能突破的。

这带来一个根本性的问题,单机服务器最大内存的极限是怎么确定的?它的制约因素有哪些?为了简化讨论范围,我们限定在占据服务器市场98%以上的X86服务器,并假设不受成本的约束。我们从CPU内核和操作系统、以及存储子系统两方面来寻找答案。

服务器大内存有什么好处?

CPU内核和操作系统

操作系统和CPU内核都支持64位地址空间,它能够访问的地址空间是

2^64=16384 PB

好大的空间,似乎永远也用不完。是不是这个是内存容量的极限呢?实际上即使在CPU内核中还有一个因子,限制了CPU和操作系统的寻址空间,那就是bitwidth。它决定了页表转换的地址长度,它现在最大是48位(我印象里),它可以从寄存器里面读出来,越新和服务器CPU,这个值越大。那么新的地址空间最大是多少呢?

2^48=256 TB

256TB,小了不少,是不是这就是内存容量的极限了呢?实际上并不是。

内存子系统

现代计算机系统的内存都由CPU内置的内存控制器来管理,为了寻找内存的极限,我们把目光投入到志强中的战斗机,E7服务器上。E7面向对高可靠性和高可扩展性需求强烈的用户,当然价格也十分感人。高可靠性说的是RAS,高可扩展性是说可以扩展为4路,8路,甚至16路服务器。所谓n路,通俗的说就是有n个物理CPU。

16路服务器十分十分罕见,部分原因在于从8路扩展为16路后,保证cache一致性所发的snoop包会降低性能,在某些情况下得不偿失。我们这里就略过。8路服务器作为主流最高端服务器,它的内存最大能够达到多少呢?

我们先来看一下它的内存子系统:

E7 CPU后面并不直接插内存条DIMM,这点和E5不一样。内存条插在一个叫做SMB(Scalable Memory Buffer)的芯片后面。每个SMB支持两个Channel,每个Channel后面可以插3根DIMM(图里是两个,实际可插三个)。SMB和CPU直接通过一种叫做SMI Link(Scalable Memory Interconnect)的总线连接,一个CPU可以连接四个SMB。

1、宁推网原创文章未经授权转载必究,如需转载请联系授权;
2、转载时须在文章头部明确注明出处、保留作者和原文链接,如:转自宁推网字样;
3、宁推网报道中所涉及的所有内容均由用户提供,仅供参考!
4、声明:该文观点仅代表作者本人,宁推网系信息发布平台,宁推网仅提供信息存储空间服务。