发布时间: 2008年07月30日
如果您对从32位服务器移植到64位服务器的时机一直深感疑惑,答案就是现在。
64位服务器以大型机和基于UNIX?#30340;服务器的形式存在多年了。但在Intel?#20860;容的世界中,64位计算是一种相对较新的现象,2000年与Intel Itanium™处理器一同推出。第二代Itanium 2 处理器的发布,之后是AMD™ Opteron™ 处理器,第8代IBM POWER?处理器,现在是含64位扩展的Intel Xeon™ 处理器都实现了比以往任何时候都更高的性价比和 更广泛的64位服务器产品。
如此众多的选择让用户游刃有余,但同时还造成了市场的混乱。突然之间,购买哪种64位解决方案变得不是那么简单。您坚持使用尝试过的含数千种64位程序的真正的UNIX中级解决方案? 或者您选择基于Intel的服务器,它可能硬件价格更便宜并提供Microsoft?Windows?#20860;容性,但不能提供同样丰富的64位应用程序? 也许您可以选择基于Opteron 的服务器,它可以帮助您节约更多的成本,但需冒偏离Intel世界的风险。如果您在企业中部署了pSeries 服务器,也许运行Linux?#30340;IBM PowerPC?刀片服务器可以更好地为您服务。您何去何从? 在多个环境中它不是决策;上述产品的组合可能会是最佳的解决方案。就像没有一台服务器可以适用于所有客户环境一样,没有一颗处理器可以运行所有工作负载。
哪类64位硬件将能更好地为您服务由您目前的硬件和软件环境来决策。同样重要的是面对不同的工作时各种处理器的优势和不足,以及他们各自的成本。在讨论每种64位产品的优势和不足之前,我们将先介绍64位计算,以及他如何帮助您。
64位技术
单独来说, 64位技术不是悬而未决的原因。它是您可以用“64位”做些什么来让客户对它产生兴趣。首先,它取消了每流程4GB固定内存寻址的硬性限制。为了一次访问4GB以上的内存, 32位处理器求助于像内存管理器和覆盖这样的技术,这样做会大幅降低性能。而使用64位寻址,理论上服务器可以直接访问多达16 exabytes (160亿GB!) RAM。当然,目前没有计算机可以物理上持有这么多的RAM,无论服务器是支持16GB 还是 256GB,单个64位应用程序应可以访问需要的RAM。但是,并不是所有 “64位” 处理器都是同等创建的。虽然新型Xeon 处理器和Opteron处理器采用 “64位扩展,”,但他们的虚拟内存“只有” 48位 (与Itanium 2 和 IBM PowerPC 970™不同,他们有完整的 64位寻址)—但足以应付各种使用。这些64位扩展添加了有用的性能,如64位寄存器(更多的总寄存器)和64位指令,两者都可以提升性能1。
毫无疑问,64位计划将更有益于某些工作的运行,同样可以确定的是其它工作也可以看到移植到64位技术带来的少许性能提升。了解哪些应用程序可以充分利用这些服务器,哪些不能很重要。这类信息可以帮助您避免移植不必要的应用程序而造成的浪费,它还可以帮助您分配那些应用程序应首先移植。
为了获得64位指令的全部优势,需要使用优化的64位编译器来重新编译应用程序,而且有可能需要重新编写一部分应用程序。
除了这些基本属性之外,64位 处理器还有一些会影响性能的特殊的架构属性。
软件考虑因素
哪些应用程序可以充分利用32位到64位计算的移植,哪些不能? 按从大到小的优势排列,这些应用程序包括:
I/O 密集型 — 任何从设备捕获数据的时间多于处理数据的时间的应用程序:后台数据库(如IBM DB2?Universal Database、Microsoft SQL Server 和 Oracle)、电子商务、CRM、ERP、SAP、SAS、各种重要和垂直的应用程序,以及任何其它需要大量内存的应用程序。总之,这些应用程序应看到64位硬件、操作系统和设备驱动程序的显著性能提升,以及取消了内存覆盖和其它性能抑制因素。
计算密集型 — 高性能计算 (HPC) 和科技计算,包括生命科学、地球物理研究;高端图形渲染;流视频,和任何其它花费更多的时间用于处理数据而不是检索数据的应用程序。
网关/安全基础架构 — 前台 SSL 服务器、目录服务、互联网缓存和数据库。这些应用程序可能从移植到64位技术中受益。您应联系各家软件供应商,了解他们使用64位功能的计划。
标准基础架构 — 这类应用程序通常很少从64位计算受益。应用程序包括文件和打印服务器、低容量/非关键商业应用程序和不可能重新编写用于64位的传统应用程序。
尽管在使用64位操作系统的64位硬件上,许多32位应用程序更快地运行,但通过移植/升级32位应用程序到优化用于64位的版本,您可以从中受益菲浅。当然,这一过程不会瞬间完成(而且由于需要64位操作系统和需要64位中间件和设备驱动程序而变得非常复杂)。
服务器的正常生命周期是从经济的角度来考虑升级硬件和软件,然后停止使用服务器并用新硬件来代替。如果新服务器与其要代替的服务器类似,这一过程相当简单:在以前的服务器上运行的32位软件也可以在新的32位服务器上运行(即使不能更好地运行)。
但是,如果升级不是像上面所说的那么简单,那么服务器升级将陷入多种软件版本的困境。当您采用64位计算时,您将必须面对管理双代码基础的场景:在32位服务器上运行32位软件和在64位服务器上运行32位和64位软件。您将如何协调尽可能顺利地完成这一过渡?
Opteron、新型Xeon 或PowerPC 970等双模32/64位 处理器允许您灵活地从32位操作系统上运行的32位软件开始。然后,您可以根据需要和预算升级到64位操作系统,仍旧运行32位应用程序。在这样一种环境中,您将有可能看到少许的性能提升,部分是因为操作系统自身由于拥有大容量RAM而将更有效地运行,部分是因为应用程序将不再需要与操作系统共享较低的4GB寻址空间。(您还可以重新编译32位应用程序来优化用于新的64位 处理器,以充分利用新指令的优势。) 最后,当64位应用程序可用时,您可以从32位版本升级来实现另一次的性能提升。如果您部署了完整的64位软件栈(操作系统、设备驱动程序、中间件和应用程序),您可以尝试移植到Itanium 2。在Itanium 2上运行的32位应用程序的性能将低于许多32位服务器上运行的性能—除非大多数服务的应用程序工作为64位,否则不值得这么做。
64位操作系统更快的速度和更大的内存寻址,结合64位服务器的企业可扩展性,如IBM xSeries™ 455 (向上扩展) 或 IBM BladeCenter (向外扩展),一同致力于简化多台服务器的整合。64位计算服务器堪称是多种趋势的首选解决方案:服务器整合(物理和逻辑)、服务器虚拟化和Linux。
64位 硬件架构
Intel、AMD 和 IBM 在他们各自的处理器方面有截然不同的设计方法,因此各有擅长。值得注意的是超出处理器特性以外的其它重要的系统特性,如集成系统管理、可靠性、可用性、简便维护性、选件兼容性测试和保险条款在选择服务器都同等重要。不应忽视这些特性的存在和等同性。由于本文的重点所在,我们将在其它场合讨论这些区别。
Intel Xeon处理器
目前,广泛的IBM xSeries服务器中采用含64位扩展的Xeon 处理器:2路 Value x226 和Performance x236 塔式服务器、2路1U x336 和 2U x346 机柜优化型服务器、以及2路IBM BladeCenter™ HS20 刀片服务器。他们与32位 和 64位 版本的Windows 2003以及Linux兼容,为您提供更大的操作系统支持灵活性。(本文中没有介绍基于Intel Xeon EM64T 处理器的4路和4路以上的IBM 服务器--x366、x260、x460服务器)