服务器 频道

AMD产品经理解读新“巴塞罗那”

    【IT168 专稿】代号为“巴塞罗那”的皓龙处理器是AMD公司的四核处理器平台,于去年9月份发布。5月20日,在北京昆泰酒店的一次媒体沟通会上,AMD公司中国区服务器和工作站的产品经理梁宏伟先生向大家介绍了最新上市的第三代巴塞罗那的最新技术特性,根据梁宏伟先生的介绍,第三代巴塞罗那除了对处理器内部一项主要漏洞进行了修复,整体性能得到全面提升,虚拟化性能的改进尤为突出。

五个特性提升每瓦特性能

    梁宏伟先生介绍说,新一代巴塞罗那从处理器的角度在节能方面进行了进一步的优化,减少CPU本身对服务器的能耗。采用独立动态核心的技术,低功耗的DDR2的内存,双路动态电源管理等等节能技术。现在很多服务器可以自动根据工作负载进行智能化调整,CPU完全可以根据系统工作状态,对本身的频率和工作电压进行调解,降低自身能耗。新巴塞罗那也支持这些业界先进的节能技术,并且这些技术将会在开机后自动进行。

独立的动态核心技术:巴塞罗那的四个核心可以独立根据四个核心所承担的负载进行频率调节。之前的双核处理器,包括业界一些其他处理器产品是受一定局限的,通常是两个一组为单位绑定。所以,在调节核心的连续性方面没有巴塞罗纳这样灵活。

CoolCore技术:此外,CoolCore技术会根据工作负载自动调整供电,处理器内部某些浮点单元会休眠。在某一个部分工作的时候,对工作负载不同的部分进行自动调整。在内存大批量读写的时候,会关闭不需要部分,

低功耗DDR内存:AMD一直采用低功耗DDR2的内存,同样一条内存能产生大概8瓦的能耗差距。

双路动态电源管理:新巴塞罗纳的双路动态电源管理能够把核心供电和内存控制器供电分离。尤其在外部应用的时候核心供电和内存控制器用电不再牵扯,降低核心能耗。

    在性能方面,整个运算宽度达到128位,一级指令的缓存和数据缓存的通道都进行了翻倍。保证巴塞罗那在处理多媒体,或者处理浮点的时候性能有成倍的提升。AMD还对控制器进行优化,支持更大页面的操作,满足大负载应用需求。尤其对于虚拟化的应用特点,对内存要求较高,新巴塞罗那与双核相比内存的性能提升50%。

共享三级缓存:同时,新一代巴塞罗那引入“写爆发”的概念,缓存区写满以后再回写内存,从而能够提高内存效率,让内存跑得更快。同时引入了一个共享的三级缓存,让多核处理器核心之间可以通过共享的三级缓存动态分配一些作业。目前的大小是2GB,等到shanghai改进推出的时候,可以增加到6GB。

三项改进大幅度提高虚拟化能力

根据梁宏伟先生的介绍,新巴塞罗那针对虚拟化应用做了许多的专门改进。除了本身的架构,AMD从X86领域之外引入了RVI的功能,还有标签式的技术,主要为了解决虚拟化的性能我问题。此外,新巴塞罗那还增添有DEV性能列表,来解决安全性的问题。

    虚拟化是近几年X86服务器领域非常热一个话题。但虚拟化的很多应用都是从其他一些大型机逐步迁移到今天主流的工业标准X86中。这些服务器并不是为虚拟化环境定制,在虚拟化应用的时候,整个物理机器被分割成很多的部分供逻辑机使用。在这个前提下,最基本的特点就是不能修改操作系统和应用相关的东西,否则客户的应用就会非常复杂。

    在这样大的背景下需要一个中间层,也就是虚拟化层要在中间协助虚拟机。以往一台服务器独占一个操作系统,现在要变成被许多的虚拟机共享,所以面临很多新的问题,比如说内存要对很多的虚拟机同时共享。在这里面,AMD引入了一个设备列表这样一个工具,在内存控制器里面做了很多页面,会记忆不同虚拟机引用的页面。这会解决虚拟机对内存访问安全性的问题。

    第二项为增强虚拟化性能所作的改进叫做Tagged TLB。虚拟机从逻辑的角度是独占系统,从物理角度是分时再去用。整个虚拟机以一种任务的形式在里面去运行,当有不同虚拟机切换的时候,尤其要访问内存的时候系统会有一张列表记录在什么时间段最近访问内存页面的信息,所有的虚拟机是交替运行的,这个页面列表其实只有一个任务号是对应的。

    举例来说,在不同虚拟机使用内存的时候,传统上的结构就不得不对这张页表进行重写。等虚拟机做完很短的操作以后,轮到下一个虚拟机运行的时候这个页表就不能再用了,如果再次使用的话,所读取的数据就会是错误的东西。所以必须根据下一个虚拟机要用的东西进行重建。所以这样大量的时间会进行页表的维护,从而浪费很多的时间,而影响到虚拟机的性能。

    为了解决这个问题,新一代巴塞罗那里面我们会看到开了一个缓存区在里面,我们为每一个虚拟机分配一个单独的任务号。可以做到256个,再加上页表的配合,实际上为每一个虚拟机建立了最近对内存访问的页表。所以切换的时候这个页表不需要再进行重建。所以虚拟机重新访问内存的时候,只要查相应的表单就可以了,所以通过TLB可以大幅度提升对内存访问转换的效率。

    第三项提升虚拟化性能的改进仍然是针对内存地址改进的。本身虚拟化是一个典型大内存的应用。AMD TLB技术可以对大内存进行很好的管理。但是仍然有一些问题无法解决,因为地址的访问是非常复杂的,TLB只会知道这个虚拟机最近用到了哪些内存,在什么位置,尽管我们能够得到一个内存号。但这个号是虚拟机的号,虚拟机的内存页面并不是真正物理上安装的一些物理页面。所以虚拟机需要自动搜寻实际的物理地址并进行映射,才会知道数据在什么地方。以往我们叫影子页表,是第三方软件管理层进行维护的。

    整个维护影子页表的时间会占用75%的时间,因而影响到整个内存的效能。但是新一代巴塞罗那处理器则可以直接知道地址的映射,这样虚拟机在运行的时候就不需要再借助一个翻译了,可以自己借助于硬件直接实行对地址硬件的有效翻译,所以能够很快对物理内存进行访问。而以往虚拟机和内存谈话的时候中间还需要一个翻译,这个翻译就是我们所知道的hypervisor。当虚拟机能够直接搜寻物理地址后,我们就会发现虚拟机的效率大大提高了。

    因此梁宏伟先生认为,AMD的处理器架构是非常适合做虚拟化的。因为DEV解决了虚拟化安全问题,同时采用了直联架构和快速索引。同时新一代巴塞罗那采用了大内存结构提供更大内存的容量,包括更短内存的延迟,因此新一代巴塞罗那在节能的同时,也提供了一个最好的虚拟化的性能支持。

总结:虚拟化给客户带来收益

    梁宏伟先生介绍说,除虚拟化之外,从性能的角度来说,已经在不同的方向上做了不同的改进,包括双核到四核的新一代产品,相比上面都有60%的双路系统性能的提升,四路大概也会有这样的提升,与业界的竞争产品相比较,浮点和内存敏感应用都有很大幅度的性能提升。

    举例来说,如果仅仅看RVI这个快速虚拟化索引的引入对性能的提升,在微软一个平台上,如果把全虚拟化关掉的话,在半虚拟化的环境我们会看到性能提高14%,把RVI功能打开以后,可以提升50%。如果在Linux环境里面,在半虚拟化环境里面,性能提升1倍,结合RVI会提升200%多。RVI打开和关闭以后对虚拟化的性能会提升很多。

    同时,梁宏伟先生还介绍了德勤顾问虚拟化应用的成功案例,德勤顾问采用虚拟化以后,应用了刀片式服务器,整个服务器平台的应用负载支持达到了62%的增长,同时物理服务器的数量能够减少42%。

    此外AMD本身也在自身的数据中心应用虚拟化,将奥斯汀总部原有的100台的服务器整合到7台。另外一个总部由33台压缩到2台,综合来看对服务器的节省比率达到17:1。而虚拟化进行服务器整合的比率通常在1:10和1:20之间。对此我们很容易进行价格的比较,包括占地的空间,管理,软件方面的节约,都会通过虚拟化以后为客户带来很大的利益。
0
相关文章