春来江水绿如蓝——话说奔腾Ⅲ

Author: 崔红杰 Date: 1999年 第9期 17版

    这篇讲奔腾Ⅲ(Pentium Ⅲ)的文章定个什么标题合适,我一直拿不定主意,但是,当我在市场上看到装在绿色包装盒中的Pentium Ⅲ的时候,我一下子明白了,最合适的就是现在这个名字。为什么这么说呢?哈哈,因为刚刚发布的Pentium Ⅲ是用绿色盒子包装的,而以前的PⅡ和赛扬300A是蓝色盒子包装的,尽管英特尔要为PentiumⅢ支付3亿美元的巨额广告费,但却无法掩盖Pentium Ⅲ在相同频率下不比PⅡ和赛扬强多少的现实,因此嘛,就“绿如蓝”了。我知道说这种话英特尔是不会喜欢的,有些朋友可能也会反对,既然这样,只好让事实说话了,下面咱们就去看看Pentium Ⅲ是如何“绿如蓝”的。
#1    Pentium Ⅲ带来了什么
    让我们看看Pentium Ⅲ(见^091701a^1、^091701b^2)的特色:
    1.CPU核心速度目前为450MHz、500MHz;
    2.Pentium Ⅲ系统总线频率为100MHz,比66MHz高50%,可用于440BX主板;
    3.采用第六代CPU核心——P6微架构,针对32位应用程序进行优化,双重独立总线、动态执行;
    4.一级缓存大小为16KB指令缓存加16KB数据缓存;二级缓存大小为512KB,速度相当于CPU核心速度的一半;
    5.采用SECC2封装;
    6.新增加了能够增强音频、视频和3D图形效果的SSE(Streaming SIMD Extensions,数据流单指令多数据扩展)指令集,共70条新指令;
    7.提供处理器序列号。
    看了前面的5条说明,是不是感到我们说的就是高频Pentium Ⅱ?事实就是这样,从大的方面来说,刚刚发布的Pentium Ⅲ和Pentium Ⅱ 的区别仅仅是Pentium Ⅲ增加了70条SSE指令和处理器序列号功能,其他部分和PⅡ差不多,它更像是一个加强版Pentium Ⅱ。虽然英特尔给了它一个“Pentium Ⅲ”的金字招牌,好像比PⅡ高了一个档次,但这主要是从市场角度考虑的,如果按照英特尔给多能奔腾命名的方式:带MMX指令集的奔腾处理器,那么,奔腾Ⅲ的名字就应该是:带SSE指令集的奔腾Ⅱ代处理器。忽然想起昨天看报纸的时候,一位作者调侃Windows98的话:即使没有什么本质变化,隔几年美美容再添加点零碎也是必要的,对外宣称自己有了脱胎换骨的进步,管他们信不信,先混个脸熟再说。难道Pentium Ⅲ不是这样的吗?好吧,虽然Pentium Ⅲ没有脱胎换骨的改进,但是,我们还是看看它新增加的SSE指令集和处理器序列号吧。
    包含70条指令的SSE指令集,最早叫做“MMX2”,也就是“第二代多媒体指令”,后来随着这种处理器的代号被确定为“Katmai”,指令集的名称也顺理成章地变成了“KNI”,也就是“Katmai新指令”的意思。谁料想,到正式发布的时候,KNI竟然又变成了SSE,即“数据流SIMD扩展”。这个SSE指令集的全部70条指令可分为三类:
    第一类共8条指令用于优化内存连续数据流,针对数据流的应用需要对以前的Cache运作方式进行了改进,减少了一些不必要的中间环节,不仅节省了时间、增加了CPU数据总线的实际可用带宽、也提高了Cache的效率。因此,采用这些指令,可以显著地提高CPU处理连续数据流的效率。类似的技术在几年前发表的SUN ULTRASPARC处理器上也用到过。
    第二类是50条SIMD(单指令多数据)浮点运算指令。相比之下,原来的MMX指令应该叫作SIMD整数运算指令。SIMD通过映射到浮点寄存器的MMX寄存器,可以在一条指令内一次对8个单字节整数或者4个双字节整数或者2个4字节整数或者1个8字节整数进行运算。在图像处理上,SIMD整数运算指令确实能体现出并行处理的优势,因为处理的数据多是单字节类型的数据,并且这些数据基本上都可以组合起来一次进行8个数据的处理。但是,当运算的数据是浮点数的时候,比如要计算一个立方体在空间旋转滚动(这在三维游戏中是很常见的运算)的情形,每个点的坐标都是浮点数,SIMD整数指令就无可奈何了。如果用平常的浮点指令进行运算,每次只能执行一条指令,效率很低,并且平常的浮点指令由于运算精度很高(80位),因此,需要很多个时钟周期才能得到一个结果。为此,AMD提出3DNOW!指令,可以通过64位的寄存器一次对2对32位的浮点数进行运算,提高了效率。虽然浮点数精度由80位降低到32位,但在三维游戏中精度还是够用的。
    为了进一步提高性能,以便和AMD进行竞争,英特尔在PentiumⅢ内新增加了8个128位的寄存器,可以在一个指令内对4对32位的浮点数据进行运算,从这点来看,SSE指令的效率比3DNOW!要高一倍。并且由于Pentium Ⅲ 执行SIMD浮点指令是通过新增加的寄存器完成的,因此可以同时进行MMX运算和浮点运算(使用SIMD浮点指令)了。不过这个优势要到软件使用SSE指令的时候才能体现出来,而且要看软件厂商的支持情况。
    第三类是12条新的多媒体指令,弥补了原来MMX指令的一些不足,进一步提高了性能。
    Pentium Ⅲ的另一个新特色就是处理器序列号,英特尔在生产的时候就给每个Pentium Ⅲ分配了一个独一无二的128位ID号,这个ID号就被称为处理器序列号。它是做在CPU内部的,不可更改。因此,可以用处理器序列号唯一确定一台电脑。这种处理器序列号和现有的用户名、口令等安全手段结合之后,可以提高互联网上电子商务的安全性。从这个角度看,处理器序列号确实是有价值的。但是,也正因为通过处理器序列号可以唯一确定一台电脑,有侵犯个人隐私权的嫌疑,在Pentium  Ⅲ发布之前,这个问题就闹得沸沸扬扬,迫使英特尔发表声明,表示PentiumⅢ的处理器序列号功能可以通过软件开启或关掉,但是,英特尔表示,每次修改处理器序列号之后,都要重新启动电脑修改才能生效。真的有这么麻烦吗?在英特尔召开针对PentiumⅢ的Palm Springs技术研讨会的24小时之内,德文刊物c't Magazine的编辑Andreas  Stiller在收到技术资料后的一天之内就开发出了破解工具,可以通过软件任意地开启或关闭ID功能。并且大部分用户对电脑并非十分了解,在访问某些网站的时候,有可能会无意中把控制处理器序列号的软件下载到电脑中执行,这样,你的Pentium  Ⅲ序列号就有可能被广播到互联网上,这是不是很“恐怖”?
    Pentium Ⅲ未来会有的特色包括:
    ●133MHz以上的外频;
    ●片上256KB同速二级缓存;
    ●更高的时钟频率。
    这些特征得以实现的基础是0.18微米的新制造工艺。
#1    Pentium Ⅲ性能怎么样
    这可能是大家最关心的问题。很不幸,对于一般商业应用来说,Pentium Ⅲ相对于相同时钟频率的奔腾Ⅱ没有多少改进。因为在这些领域,SSE指令没有多少用武之地。而Pentium Ⅲ除了SSE指令之外,整数性能、浮点性能并没有在PⅡ的基础上加以改进。不过,如果应用软件如果能对SSE进行认真优化的话,确实能大幅度提高性能,在后面的某些测试中,性能几乎提高了一倍。不过,暂时你还不要做采用Pentium Ⅲ性能就能大幅度提高的梦,虽然英特尔在自己主页上公布了不少针对SSE优化的软件,但软件种类毕竟太丰富了,针对SSE优化也有相当大的技术难度,因此,真正出现大量对SSE进行优化的软件还需要一段时间,甚至是一段相当长的时间。但愿SSE不要走原来MMX失败的老路,算是英特尔的幸运,也是我们的幸运。
    笔者还没有机会使用Pentium Ⅲ,下面的测试数据是在一些网站上收集到的(见^091701c^表1、^091701d^表2、^091701e^表3、^091701f^表4)。
#1    Pentium Ⅲ的前景
    尽管Pentium Ⅲ相对于PⅡ没有本质的改进,但是,既然英特尔打定主意要用Pentium Ⅲ取代PⅡ,那么,PC厂商们也只有服从英特尔的指挥棒,谁也不敢掉队。因此,Pentium Ⅲ刚刚发布,几乎所有的PC厂商都发布了采用Pentium Ⅲ的电脑,比如英特尔中文主页上就列出了海信、联想、Acer、康柏、康柏和光、东海、方正、长城、惠普、IBM 、浪潮、实达等厂商。不要说这些大厂商,就连中关村的小装机商也紧跟风头,开始打自己的Pentium Ⅲ电脑广告。英特尔可是承担大部分的广告费的,比原来给PⅡ打广告的条件还要优厚,这样的好事情,谁不干?据说还真有借英特尔支付大部分广告费挣钱的。这么多厂家迅速推出Pentium Ⅲ电脑的根本原因在于从PⅡ到PⅢ升级实在太容易:只要把BX主板上的PⅡ处理器换成Pentium Ⅲ处理器,就变成Pentium Ⅲ电脑了。
    大家可能还对赛扬300A狠揍PⅡ的事件深有感触,不过感触最深的应当是英特尔,那可真是有苦难言啊,谁让新赛扬和PⅡ之间的差距那么小呢?为了防止这种情况再次发生,英特尔开始加大高端处理器和廉价处理器的技术差距,其方法就是给PⅡ开小灶,让PⅡ吃下SSE和处理器序列号等补品后“脱胎换骨”到Pentium Ⅲ,而赛扬不仅仍然停留在66MHz的外频上,SSE和处理器序号等补品无缘得见,甚至驻防基地也从原来的Slot1(SC242)换成了Socket370,彻底断绝赛扬冲击Pentium Ⅲ的可能性。不过这仅仅是英特尔自己的如意算盘,兵分两路,以赛扬弱军对敌,以Pentium  Ⅲ强兵牟利的战略能否得逞,关键因素在于AMD的K6-3、K7、IDT的C6-2、Cyrix的Mxi等新处理器的战斗力,如果这些处理器的战斗力足够强,在低端市场打垮赛扬,英特尔迫不得已只能以Pentium Ⅲ大幅度降价或者把赛扬加改为赛扬Ⅲ(含SSE、100MHz外频的赛扬,笔者自己定的名词,英特尔暂时没有这种产品的计划)来解围,不过那时候显然又会出现赛扬Ⅲ狠揍Pentium Ⅲ的可能性;如果……哎呀,可能性太多了,请大家拭目以待吧。
    总的来说,英特尔就是英特尔,市场的领导地位暂时还是无人能动摇的,英特尔今后的产品核心是Pentium Ⅲ,用于服务器、高档工作站的至强处理器也从原来的“PⅡ Xeon”升级到了“Pentium Ⅲ Xeon”,PⅡ会在不太长的时期内停产。Pentium Ⅲ推出以后,市场区分比以前清楚多了,尽管Pentium Ⅲ没有太大改进,但是Pentium Ⅲ会卖得不错的。
#1    市场上的Pentium Ⅲ
    大家最关心的可能是Pentium Ⅲ的价格,据悉,Pentium Ⅲ450的千颗美元报价是496美元,Pentium Ⅲ500是696美元,这是英特尔发布高端CPU的最低价格了。1997年PⅡ发布的时候,PⅡ233是636美元,PⅡ266是775美元。在386/486/586的时代,英特尔发布的新CPU价格都在1000美元左右,如此低报价要归功于竞争对手的崛起和低价电脑市场的蓬勃发展,这些因素使得英特尔在定价的时候犹豫再三,为了争取用户,还是狠狠心,价格报低一点吧。
    奔腾Ⅲ已经在2月26日在北京正式发布了,笔者3月1日就在中关村电子市场上看到了她的芳踪,这是一颗450MHz的奔腾Ⅲ,编号是SL3CC,马来西亚产,盒子上印的日期是1999年1月30日,核心电压是2.0V。找到Pentium Ⅲ之后,笔者装作要买的样子,一番讨价还价,Pentium Ⅲ450的价格就从7000元降到了5700元,这应该是当前比较真实的价格了,因为根据笔者了解到的数据,英特尔给经销商定的价格底线是6000元左右。花6000元买一颗CPU,对笔者来说是过于奢侈了,除非真有必要或者自己需要的应用都针对SSE作了优化,否则选择PⅡ450可能更合适,毕竟在性能几乎相同的情况下,盒装PⅡ450仅仅3000多元,省下的钱可以买128MB内存和一块6.4GB的硬盘了。如果要装的电脑是几万元以上的,可能不太在意这不到3000元钱,但是,对个人用户来说,还是应该仔细考虑考虑的。