2005年4月,比尔·盖茨在微软的年度硬件工程师大会上预测说,64位硬件、操作系统和软件将“改变我们工作和娱乐的方式。”他说,采用64位处理器的系统将在2006年底进入主流,而服务器级的64位计算转换将比过去任何平台都快。xml:namespace prefix = o /> 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个小时。”