64-bit是不是晃点全人类的阴谋_第1页
64-bit是不是晃点全人类的阴谋_第2页
64-bit是不是晃点全人类的阴谋_第3页
64-bit是不是晃点全人类的阴谋_第4页
64-bit是不是晃点全人类的阴谋_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

32/3264-bit是不是晃点全人类的阴谋?伐木者注:最近大家谈论比较多的就是64位的XP,在此转贴一篇关于64位的性能评测。对于没有耐心看完此贴的朋友,我可以先告诉大家结果。64位确实比32位先进,但性能提升是及其有限的。

16位计算机的内存寻址为640K,32位计算机的内存寻址能力是4G,64位将扩展到180亿G。但现在有哪台家用电脑用4G内存不够?显然,32位升级到64位远不如当初从16位升级到32位值得欢呼。

任何规律都有其局限性的,摩尔定律也不例外,电脑总有一天会如同办公桌一样用二十年。一、64-bit究竟有没晃点我们?

究竟我们是在期待处理器还是操作系统的升级?每次Intel和AMD竟相发布更高规格和性能处理器的时候,我们都难免沾沾自喜一番,可是买了最新的硬件,却不得不面临没有操作系统和软件支持的为难局面。在硬件开展快过软件的时代,微软的操作系统一次次地成为了我们的救命稻草。

Windows95-->Windows98se-->Windows2000-->WindowsXP,几乎每次全新操作系统的发布都能够给我们涣然一新的感觉,并带着了整个IT产业向前开展。WindowsLonghorn更是为我们带来全新的理念,3D化的操作界面,多媒体功能也完完全全地被贯彻到了PC系统当中,不过今天的主角显然也决不会令大家失望。

AMDAthlon64处理器的发布,吹响了PC进军64-bit平台的口号,市场追随者迅速被凝聚起来了,最后Intel也不得不破天荒跟随AMD,在其Xeon和6XX系列处理内置了64-bit内存扩展技术。可是当一切竞争井然有序进行的时候,越来越多的人才知道微软竟然没有64-bit的主流操作系统,当64-bit之风吹遍整个神州大地的时候,我们竟面临无操作系统可用的为难境地。这好比你买了一台奔驰汽车,却只能在山涧的崎岖小道行使一样,感觉特别不爽。不过历经曲折之后,WindowsXP64bit版本终于可拨开乌云见明月。(其实笔者有一点还是异常担忧的,微软现在依靠在操作系统的垄断地位,不断深入各个软件、硬件领域,即使操作系统也细分为N+1个版本,什么WindowsMobile、WindowsTablet、多媒体中心版本。人的精力、能力终归是有限的,盖茨面对这么多产品相必也力不从心吧。也就是说,更优质操作系统的开发周期变长、所包含的技术减少,此时此刻,笔者都已经深深感受到分拆微软其实真可造福全人类,让他们带来更好的产品。这是题外话!)

当我们一次次提到64-bit计算的时候,很多人想到的可能会是“它有两倍于32-bit平台的性能,在3D建模时速度更快、效果更逼真,玩游戏自然也更流畅,那时候计算机就会是一个具有魔力的盒子,变得无所不能吧?〞。但也有一局部反对者认为(Intel早期便是这样想的),64-bit只是个唬人的数字,晃点消费者去购置新平台的阴谋而已。不过事实终归是证明了一切,Intel、AMD、微软、nVIDIA、ATi、VIA等等业界巨头都在倡导着64-bit技术,这总不会是全人类造就的阴谋吧!那么对于64-bit,对于Intel和AMD各自的64-bit,我们都有充分的认知,有做好心理准备去迎接实现方法不同,结果都是迈入64-bit的平台吗?

Intel和AMD两者是既有区别,也有共同点,首先是它们并不会带来如我们期待的两倍于32-bit的性能(那是理想化的结果),正如双核心处理器的性能并不会等于两颗单核心处理器性能之和。以前我们有过从8bit处理器到16-bit,从16-bit到32-bit的区别,现在也是相同道理。目前面向PC平台的64-bit技术其实都是在往昔x86指令架构(ISA)上的扩展,包括了AMD64和Intel代码兼容的EM64T,都有各自的优点和缺点。优点包括了,比x86ISA提供了更大的内存寻址空间,更清晰方便的编程模式,还有性能的增益,并且保存了向目前32-bit应用程序兼容的能力。

为了方便大家对未来64-bit平台的选购,沉着驾御自己的工作、娱乐平台,我们今天特地挑选了AMD和Intel的64-bit处理器,并搭配微软最新的64-bitWindowsXP操作系统,进行一些技术解析和性能测试。在正式版本的WindowsXP64-bit发布后,想这也是开展的必然趋势吧。最新的64-bit处理器与WindowsXPProx64版本在32bit和64-bit的应用究竟如何?不用再等待,现在就让大家先睹为快。

二、64-bit技术的要点

把PC平台带入64-bit“深渊〞的始作俑者乃AMD,它最早提出了x86技术的64-bit扩展,这便是现在闻名于世的AMD64。在开发的早期,该技术一直被命名为x86-64,最后可能出于市场的原因,在正式推出的时候被修改为AMD64。实际上,AMD64也是AMDK8架构的官方名称,因此在很多时候会搞得大家一塌糊涂。在64-bit深入人心,微软明确表示不再开发第二款64-bit操作系统的时候,Intel也只能参加兼容AMD64的阵营,不过在命名的选择上它的余地很少。再说无论怎样,Intel都不会做“NowWithAMD64Compatibility〞(兼容AMD64)这种龟孙子的行为吧。在此严峻形势而无可选择的情况下,Intel只得复制AMD64技术,并被命名为Intel扩展内存64bit技术,也就是“EM64T〞。

在很多时候我们听到商家和媒体声嘶力竭地呼喊“64-bit处理器是区别于以往处理器的全新产品〞,其实我们现在明白它只不过是在x86的基础上参加了新的64-bit指令扩展而已,当然除此外也有其它技术革新,因为社会肯定是不断进步的,虽然道路会有些曲折。

现在市场上销售的所有Athlon64和Opteron处理器都提供了对x86-64技术的兼容,而Intel方面则在Pentium4600系列和最新的Xeons处理器提供了相关技术支持。Intel信誓旦旦地声称,将会在所有桌面处理器产品线提供对64-bit技术的兼容,当然也包括Celeron低端产品。AMD方面虽然没有表示在Sempron产品线也提供AMD64扩展,但如果Celeron也这样做的话,它也只好不得以而为之了。

两个竞争对手

在很长的一段时间里,能够提供对64-bit技术支持的只有Linux操作系统,甚至现在所有市场上出售的WindowsXPx86-64仍是处于Beta阶段。当然过几天微软就会正式推出最终版的WindowsXPx86-64,它也承诺将免费提供应现在的正版WindowsXP操作系统拥有者。在四月份发布的WindowsXP专业版x64和我们现时的XP有着比较大的区别,因为它是在效劳器版本WindowsXP技术的基础上提供64-bit的支持。也就是说,它们原本就是微软打算开发给IntelItanium处理器使用的,如果牵强地称呼为WindowsXP64-bit未免有些不敬,它的稳定性和平安性相信比之前的版本有质的提高。在四月前,市场上可用得到的Windowsx64乃RC2版,一旦WindowsXPx64Edition正式出售,也同时说明64-bit市场进入突飞猛进的时代,预计64-bit全面进入千家万户。

关于对32-bit程序的兼容问题,是一个值得积极探讨的事情。Windowsx64通过一个称为“WOW64”的工具,可以运行32-bit应用程序,而在性能的损失都是微乎其微的。也就是说,使用WindowsXPProx64,无论是应用界面和使用习惯都和当前的操作系统一般无二。不过任何事情可不能看外表,其中玄机和工夫都由厂家给完成了。比方设备的驱动,就必须为Windowsx64进行重新编译,32-bit驱动在其上将不能够正常工作。当然微软已经为当前主流的硬件设备内置了驱动程序,比方Intel925X和nForce4平台就不需任何芯片组驱动。不过在另一方面,我们却不得不等待硬件制造商发布最新版本的驱动,RealTek和nVIDIA都各自不断更新音频和视频驱动,以期获得更好的兼容性和性能、功能。ATi也已经推出了64-bitbeta版本的催化剂显示卡驱动,不过值得注意的是,很多硬件制造商还没有做好向64-bit平台迁移的准备。

有一些应用程序可能也还没做好往Windows64迁移的准备,比方WinXPx64就会有两个版本的InternetExplorer,分别是32-bit和64-bit的版本。微软之所以把32-bitIE作为操作系统的默认,是因为目前大局部ActiveX控件都还是用32-bit代码编写,也就是说间谍软件也不能运行在64-bit操作系统?不过随着时间的进步,未来越来越多的程序将会使用64-bit程序作为默认编译器,64-bit二进制也将唯一兼容64-bit处理器和操作系统。

三、64-bit技术的优势

1、完全解决内存寻址的问题

当AMD的设计团队创立x86-64ISA的时候,它就为后者准备一些与生俱来的优点,首先最为重要的是解决32-bit的硬伤--32bit的内存寻址空间:32-bit系统和硬件支持的最高物理内存为4GB,对于当前桌面PC来说,这似乎已经足够了,但越来越多的x86ISA平台被应用于工作站和效劳器,4GB内存无异于杯水车新。并不仅仅如此而已,32-bit寻址的效率也实在不敢恭维。在默认的情况下,WindowsXP限制了应用程序仅能使用2GB的内存空间,而剩下的2GB则保存给系统任务。x86系统的寻址使用了一个称为物理内存扩展的机制,这解决了4GB物理内存的限制,在某些效劳器版本的操作系统,它允许在32-bit系统支持最高达128GB的物理内存。然而,PAE使用的内存分页被认为效率不高。

与此同时,一些用户经常使用的数据却在呈现级数的上升,比方高清晰的数字摄影机、HD视频和HD游戏,显示卡的内存甚至也已经高达512MB。科学计算和技术工作站也已经抵达了32-bit应用的顶峰。

在转移到64-bit寻址的时候,内存寻址空间能力也从2^32增加到2^64,至此x86-64ISA

完全解决了内存数量的限制。64-bit寻址空间的峰值寻址空间是16EB,这在当前是无法想象的巨大数量。不过当前AMD64处理器并没有完全利用64-bit的寻址能力,仅有40bits物理寻址空间,1TB,48bits的虚拟内存寻址空间,为256TB。开始WindowsXPx64支持128GB的物理内存和高达16TB的虚拟内存,缓存的最高上限也从32bit的1GB增加到64bit的1TB,1千倍。WindowsXPx64还为32-bit应用程序赢得了额外的增益,每个应用程序最高可以使用4GB的空间。

简而言之,转移到64bit后,x86ISA的内存限制被完全去除,为PC赢得了增长的空间。不过这个改良机制并不会带来性能的增益,可用内存的多少并不代表就有多少内存。但这是与x86-64相比最重要的区别。

2、存放器,64-bit性能的重点

x86ISA普通存放器(GPRs)可用数目也是一个值得注意的问题。存放器的速度非常快,要远快于处理器内存的缓存,它在处理器内部用于储存计算的值,要重复使用的数据通常会存放在存放器中。不过可惜好东西并不多,x86ISA仅能够提供8个GPRs,数量之微也使得它一直处于耗尽状态,而同代的处理器则可提供更多的GPRs,比方PowerPC604RISC架构可提供32个GPRs。由于没有足够的GPRs可用,x86编译器为了得出正确可用的数据,只得花费大量时间在缓慢的数据排序上。

为了解决这样的瓶颈,x86-64ISA带来了更多更好的存放器。首先它增加了8个GPRs,总数到达16,并且它们都没有32-bit值的限制,都能储存64-bit数据类型。此外在新的GPRs中,x86-64还包括了8个新的128-biSSE/SSE2存放器,总共也是16个。在这样的处理后,x86-64ISA比x86获得了性能的长足进步。

x86-64与x86ISA相比增加的存放器

那么性能的增长究竟有几何?这还要依据应用程序,要知道某些程序并没有使用上述的所有存放器,不过它们在用x86-64重新编译后,均可获得本地数据类型的好处。此外代码的复杂程度、应用程序的计算密度都会影响到性能,比方用Fortran语言代码的性能增益就要比单纯的执行2进制数据来得明显。

也就是为什么会有些人说,64-bit程序的性能与32-bit比并没有没什么增益,但是在某些情况下,所见到的性能却是获得了实实在在的增长。

3、指令集,性能增长的魅力

x86ISA在编程模块也存在一些恼人的问题,比方有些指令集是并不需要使用到的,现在MMX、3DNow、x87、SSE、SSE2和SSE3已经能够处理之前的x86ISA。x86-64则丢弃了MMX、3DNow!、x87FPU,而是把SSE和SSE2作为其核心指令集。SSE/SSE2指令集能复制其它指令集的功能,但是在切换到64-bit模式后,WinXPx64就不能够执行FPU和MMX存放器。也就是说MMX、3DNow!和x87FPU在WOW6432-bit兼容模式可以执行,但在64-bit应用却不行。至于最新的SSE3,则有望在不远的将来被64-bit处理器支持,AMD也预计在AMD64架构参加SSE3的支持。

x87FPU与RISC设计相比,一直被认为乃x86CPU架构的短板,也就是说x86处理器的FPU性能相当糟糕。SSE2使用更现代的编程模块,取代了x87基于堆栈的编程模块,从而在浮点运数性能上获得了增长的潜力。SSE2还取代了x87的IEEE80-bit精度,换为可选择的IEEE32-bit或者64-bit浮点运算。这样做的好处是x86-64处理器在执行64-bit模式的时候可获得类似RISCCPUs的浮点性能,不过由于精度的差异,这些结果和x87FPU的会有些区别。

由于64-bitISA取消了MMX、3DNow!和x87FPU,包括了汇编代码的程序将无法在Windowsx64编译。这也意味着应用程序,包括游戏,使用汇编代码进行的优化都必须牺牲。那么在32-bit到64-bit转移的时候,x86-64额外存放器所带来的优势似乎又被这样给消去了。某些32-bit游戏、程序如果使用大量优化的话,它完全可以到达转移到64-bit所带来的性能。

我们的测试平台和方法

Pentium4系统的所有测试都翻开Hyper-Threading功能。系统桌面被设置为1152x864@32-bit@85Hz刷新率,所有测试垂直刷新功能都被禁止。进行的测试包括了以下应用程序:

SiSoftSandra2005SR110.50

DOOM31.1withtrdelta1demo

FarCry1.3withtr3-pierdemo

UnrealTournament2004v3355withtrdemo1

TheChroniclesofRiddick:EscapefromButcherBaywithtrdemo3

3DMark05v120

POV-RayforWindows3.6.1a32-bit

POV-RayforWindows3.664-bit

picCOLORv4.0build53232-bit

picCOLORv4.0build53264-bit

ThePanoramaFactoryv3.3

ThePanoramaFactoryv3.3AMD64EditionBeta3

BlobbyDancerforAMD64demo

五、测试结果

由于大局部人对游戏都会非常感兴趣,因此我们也从此测试开始。首个测试是“超世纪战警:逃离屠场〞,这是个非常火暴的游戏,很多玩家甚至认为它比Doom3还要略胜一筹。该游戏除了32-bit版本外,还特地开发了64-bit版本。

在测试时候我们首先用正常的游戏记录demo,然后在通过回放的形式进行测试。在GeForce6系列GPUs,游戏支持高级的软渲染模式,但是显示卡的负担也非常吃力。

1、超世纪战警:逃离屠场

以下测试结果中,如果标明“Win32”表示测试的系统是32-bit版本WindowsXPPro,如果“Win64”则表示运行在WinXPProx64RC2。标注“32-bit〞则是使用32-bit的应用程序,标注“64-bit〞则说明使用64-bit应用程序。不过在很多情况可能会是“Win64”和“32-bit〞的混合体,它是在Windowsx64操作系统执行32-bit程序。

AMD和IntelCPU在使用64-bit模式的时候并没有获得巨大的性能进步。不过有趣的是,Athlon64在WinXPx64执行32-bit代码要比WinXP32-bit快。Pentium4则相反,在64-bit操作系统的性能反而不及32-bit。似乎转移到64-bit应用的性能并非如预期的理想。

2、Doom3

接着我们使用一些32-bit游戏进行测试,由于可使用的64-bit游戏并不多,我们在测试的时候多少有些被动。在此我们也是用录制demo的方式,然后是回放测试。

Doom3在转移到64-bit操作系统的时候并没有获得性能增长或者损失,这对于准备换平台的人来说可是个好消息。

3、FarCry

FarCry是个非常有趣的游戏,它和Riddick一样,在包装盒上使用了AMD64的Logo。不过和Riddick不同,FarCry的64-bit版本一再拖延,现在我们也只有使用32-bit的方式测试。

4、虚幻竞技场2004

Pentium4在使用64-bit操作系统的时候,获得了一定性能进步。保守点说,32-bit游戏在WinXPx64的执行效能要比WinXP32bits模式的好。

5、picCOLOR专业测试

picCOLOR是一个图象处理和分析的工具,也是从32-bit应用程序转移到64-bit的典型。它被广泛使用在科学应用上,比方质点流量分析。picCOLOR也用进了CPU技术的优点,包括MMX、SSE2和Hyper-Threading,由于有64-bt版本,所以我们能够测试x86-64ISA。

比照64-bit和32bit的性能比较并不直观,由于32-bit程序使用了一些汇编代码进行优化,并参加MMX来对程序进行加速。由于MMX不支持的缘故,汇编代码在64-bit模式将不能够被执行,64-bit编译器也没法执行64-bit编译。也就是说,picCOLOR64-bit模式没有优化的代码。

幸好,32-bitpicCOLOR包括了禁止MMXcode的功能,我们也得以从高阶语言(C语言)执行2进制编译器,picCOLOR的32-bit和64-bit模式也能够获得比较。在下面的图表中,标注"32-bit/NoMMX〞表示没有包括MMX代码。

与32-bit版本没有使用MMX汇编代码优化的程序相比,Pentium4和Athlon64在64-bit都获得了瞩目的性能进步。不过有个现象也非常有趣,Pentium4在32-bit模式有较好的性能,而Athlon644000+在64-bit模式表现更加优秀,究其原因是Athlon64使用x86-64ISA的收益。

另一方面,32-bitpicCOLOR在使用MMX后,要比没有使用要更快,而在WinXPx64运行32-bit程序的时候,几乎没有任何性能增长或者丧失。

6、ThePanoramaFactory

ThePanoramaFactory是一个专门制作具有360度环场效果的影像式虚拟现实软件,您也可以使用它来制作出超广角的照片,而且只要轻轻松几个步骤就可以做到,再也不需要使用Photoshop等影像编修软件大费周章的做调整了。

在转移到64-bit模式获得的性能增长是显著的,Athlon64在64-bit模式几乎有1一分钟的增长,而Pentium4获得的性能也相似。

交换函数,作为程序性能的核心局部,在使用x86-ISA后获得了巨大的进步。在整体时间,我们不相信读/写等I/O函数被包括在PanoramaFactory的计算中。

7、POV-Ray

是指建立逼真出色图片的电脑绘图技术.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论