2005年4月,比尔·盖茨在微软的年度硬件工程师大会上预测说,64位硬件、操作系统和软件将“改变我们工作和娱乐的方式。”他说,采用64位处理器的系统将在2006年底进入主流,而服务器级的64位计算转换将比过去任何平台都快。
AMD和英特尔都迅速升级了x86处理器,现在市面上很难再找到32位的服务器处理器了。无疑,桌面系统也将沿着这条路走下去。
操作系统方面,用户可以在64位版本的Linux、Windows XP Professional和Windows 2003 Server之间做出选择。
自AMD公司2003年4月推出64位内核的皓龙后,Linux用户逐渐得到了充足的64位数据库和其他企业应用的供应。64位Windows上的应用程序随后也陆续面世,引人注目的产品当属2005年11月推出的Microsoft SQL Server 2005。
那么,到了向64位硬件和软件迁移的时候了吗?用户真能体验到应用性能和稳定性的大幅提升吗?用户应当首先关注哪些应用程序?在这一过程中可能出现的问题是什么?
大型数据库应用
海量查询回应更快
内存寻址突破原有瓶颈是64位计算的主要好处之一。32位处理器、操作系统和应用程序可以直接寻址的最大内存量为4GB。在使用64位EM64T和皓龙芯片时,操作系统和软件可以直接寻址的内存量在桌面系统上增加到了128GB,服务器则增加到了1TB。不少人正由此发出质疑,占用内存不多的前端应用有必要向64位平台迁移么?他们认为,64位处理技术的理论内存寻址极限是18千兆字节,但中前端应用还用不到太多内存,4GB内存和100TB内存对于绝大多数应用而言没有区别。
IBM xSeries服务器高性能部经理Jay Bretzman说:“在大多数企业环境中,文件服务、Web服务和传统的基础设施应用将在很长时间里缺少迁移到64位的动力。但如果用户运行可以从大内存容量受益的应用和工作负载的话,则会看到64位在性能和稳定性方面不容置疑的好处。”
那么,这些应用程序是什么样的呢?显而易见的一个应用是大型数据库,它们可以通过将庞大的数据集合直接保存在内存中获得显著的性能与稳定性优势—因为内存的寻址速度是硬盘的1万倍,因此可以保存在内存中的数据越多,查询回应就越好,尤其对于需要进行大量查询的决策支持系统。具体地说,如果分类在内存中完成的话,需要海量数据分类的查询将受益匪浅。
2004年,Dell曾进行过一次测试,在一台运行RedHat Enterprise Linux AS 3的Dell PowerEdge 2850服务器上,对32位和64位Oracle 9i Database Release 2的OLTP(在线交易处理)性能进行对比,发现“与32位配置相比,观察到的64位配置的OLTP性能,在中型和大型工作负载环境下的9GB数据库缓存规模时,提高了25%~50%。”
并行事务处理
30%的性能提升
大容量内存的另一个优势是处理并行事务的容量更大,这对于大型Web和电子商务网站尤其重要。例如,由Performance Tuning在4颗处理器的Dell PowerEdge 6850上进行的测试发现,在运行64位Oracle 10g的Windows 2003 Server x64上的并发连接数量极限为1300个,而“32位Windows+Oracle”配置上的最大连接数量为1000个。
不要小看这30%的性能提升,例如在每天处理150亿次连接的MySpace(一个音乐与社交网站)上,这就意味着能节省30%的时间或者30%的硬件投资,MySpace网站的首席技术官Aber Whitcomb说:“在1000台Web服务器连接到数据库服务器的环境下,消耗内存速度之快令人难以想象,过去SQL Server为了处理这些连接而拒绝来自进程缓存的数据,这直接导致访问效率降低和可靠性下降。”Aber说,在将连接密集型数据库迁移到SQL Server 2005后,MySpace看到了“稳定性的大幅提高。”他补充说:“MySpace还发现了大内存寻址能力的另一个优势,即对中间层缓存服务器的利用—MySpace现在利用每台缓存服务器上的16GB RAM增加其缓存性能。”
除SQL Server 2005外,包括CA、IBM、MySQL和Oracle在内的主要数据库厂商已经或计划推出,用于Linux和Windows x64的64位版本的数据库了。
大批量瘦客户计算
管理更多终端
其他类似的应用也可以受益。英特尔服务器软件及技术营销经理Lorie Wigle说:“64位平台可以让用户看到业务智能性、供应链管理和ERP应用方面的巨大好处,而数据仓库是典型的优势应用。”
这意味着我们将看到向64位数据库的大规模迁移吗?IDC系统软件硬件主管Al Gillen说,同往常一样,大多数企业客户可能将采用非常谨慎的做法。“大多数企业客户除非由于性能和可伸缩性的原因必须迁移,否则不会匆忙采取行动,尤其是与操作系统上关联很深的软件栈,因为他们非常担心软件的不兼容问题。” Gillen认为,或许很多企业将等待Windows Server Longhorn推出后再进行64位迁移,做到一箭双雕。
不过Insight64的分析师Nathan Brookwood不同意这种看法。他说:“总是存在这种最初的不情愿,但是回报是巨大的。如果用户认识到,在12个64位处理器上运行的应用需要32位机器上的50或100个处理器支撑的话,会有充分的迁移理由。”
另一类可以从64位平台显著受益的应用,是使用像Citrix Presentation Server或Microsoft Terminal Services这样的瘦客户计算,这类应用需要为每位用户分配一定数量的内存。微软基础设施服务器营销总经理Bob Kelly说:“你可以在一台配置Windows 2003 Server x64的服务器上比使用32位Windows多管理70%的Terminal Service用户。” Citrix做出了类似的估计,估计用户数量比Presentation Server 32位版本增加65%~300%。
图形密集型应用
代码转换性能提高40%
除了内存寻址的优势,新一代64位处理器的另一个好处是,厂商在x86架构中添加了8个通用寄存器,且这些通用寄存器的长度也从32位升级到了64位。此外,还增加了8个叫做XMM寄存器的新128位寄存器。通常,对于不需要大量使用寄存器的应用和任务来说,这种升级没有什么特别的意义。
那寄存器的升级对什么样的应用才有意义?Red Hat公司的Carr说:“更多的寄存器将使处理器在处理图形密集型应用,如金融市场和航空工业的建模应用上更有优势。”此外,还有包括高性能设计、三维动画、机械CAD/CAE、三维绘图和高端数字视频编辑在内的技术应用也能受益,且这些应用中包含很多同时需要巨大数据库支持的程序,因此将从64位平台上获得双重的好处。
数字媒体管理公司Agnostic Media在迁移到64位皓龙系统后,发现代码转换的性能提高了40%。据Agnostic Media的CEO Jason Turner说,在把数据库升级到SQL Server 2005后,性能又提高了200%。同样,另一家为电影和广播电视行业提供软件和服务的媒体技术公司MESoft发现,在64位皓龙平台上它几乎能够实时对高清晰媒体进行编码、加密和压缩。该公司的CEO Mark Kapczynski说:“过去在32位计算平台上,压缩一小时的视频需要6个小时。”
|
3类中前端应用在64位下的性能提升 |
|
应用 |
应用案例 |
性能表现 |
|
大型数据库应用 |
Dell PowerEdge+Oracle 32位/64位+RedHat Linux |
OLTP性能提升20% |
|
并行事务处理 |
Dell PowerEdge+Oracle 10g +Windows 32位/64位 |
最大并发连接数量提升30% |
|
图形密集型应用 |
媒体技术公司的MESoft |
压缩视频所需时间从数小时缩减为实时 |
移植面临三大挑战
同任何平台迁移一样,将Windows、Linux和中前端应用程序迁移到64位处理器上会产生许多难以预测的问题。
例如,前面提到的Performance Tuning测试发现,在64位配置时,数据库查询性能反而下降,最后发现是一个光纤适配器的驱动程序存在缺陷而造成的。驱动程序的问题在服务器环境中可能不如桌面端环境中那么严重,但通常更难发现—尽管64位版本的Windows在发货时提供了大量的驱动程序,但问题是,还是存在许多不能正确识别的硬件,这一点,只能通过一段时间的积累来解决。
另一种麻烦来自64位环境下的32位应用模拟,AMD的Lewis说:“需要访问操作系统内核的32位应用将在移植时遇到麻烦。例如AutoCAD有很多插件,但如果用户只将AutoCAD升级为64位,那么这些插件就不能正常使用—因为这些插件需要访问操作系统内核,因此必须把插件也升级了,才能全部正常运行。”
MESoft的Kapczynski说:“编写64位程序所面临的挑战是,确保它真正能利用所有64位平台的优势。开发者需要懂得内存管理的核心程序,而且必须不断地重复和测试。通常这样做花费的时间是计划时间的3倍,但这就是新平台上进行软件开发的特点。”
不过,与系统商和开发商谨慎态度不通,用户似乎对行移植的担心并不大。MySpace的Whitcomb说:“MySpace在光纤适配器的驱动程序上以及SQL服务器的全文本索引设置上遇到了一些问题,不过这些问题很快得到了解决。安装64位Windows和SQL Server则只用了大约一天时间。”
Agnostic的Turner对此表示同意:“从我的经验看,64位平台已经开始成熟,做好了进入黄金时代的准备。”
|
主要软件厂商的64位产品一览 |
|
很多软件厂商已经提供了关键产品的64位版本,而且更多的64位产品正在开发中。 |
|
厂商 |
BEA Systems |
Citrix Systems |
Computer Associates |
IBM |
Microsoft |
Novell |
Oracle |
Siebel Systems |
Sybase |
Symantec |
|
产品 |
BEA WebLogic Server 9.0 |
Citrix Presentation Server 4.0 |
BrightStor SAN Manager |
DB2 Universal Database |
BizTalk Server |
ZENworks |
Oracle Database 10g Release 2 |
Siebel 7.8 |
Adaptive Server Enterprise |
Symantec Antivirus Corporate Edition |
|
产品类别 |
Web应用服务器 |
应用虚拟化 |
SAN管理 |
RDBMS |
集成 |
资源管理 |
RDBMS |
CRM、分析 |
RDBMS |
防病毒 |
|
64位Linux |
计划中 |
否 |
否 |
是 |
否 |
计划中 |
是 |
计划中 |
是 |
否 |
|
Windows 2003 Server x64 |
计划中 |
是 |
是 |
是 |
计划中 |
计划中 |
是 |
是 |
计划中 |
是 |
|
Solaris x86版 |
否 |
否 |
否 |
否 |
否 |
否 |
计划中 |
是 |
计划中 |
是 |