设主页为首页 添加本页为收藏
首页 | 硬件资讯 | 主流硬件技术 | 主流硬件产品介绍 | 软件资讯 | 精品操作系统 | 常用系统软件 | 常用应用软件 | 电脑硬件故障 | CPU故障 | 内存故障 | 硬盘      | 外接设备故障 | 软件故障 | 系统软件故障 | 应用软件故障 | DIY评价 | DIY行情快报 | DIY评测 | 技术发展趋势 | 攒机指南 | 硬件选购指南 | 电脑配机指南
现在位置:专业电脑知识,电脑爱好者的信息平台->电脑硬件故障->cpu处理器
多媒体指令集带给了我们什么
时间:2008-6-16 21:44:55 来源:互联网 作者:不详 关闭

      对于CPU来说,在基本功能方面,它们的差别并不太大,基本的指令集也都差不多,但是许多厂家为了提升某一方面性能,又开发了扩展指令集,扩展指令集定义了新的数据和指令,能够大大提高某方面数据处理能力,但这也是有前提的,那就是必需要有软件支持。在多媒体指令集方面,最著名的就是Intel的MMX和AMD的3Dnow!.

一、MMX指令集

  MMX(MultiMediaeXtension,多媒体扩展指令集)指令集是Intel公司于1996年推出的一项多媒体指令增强。MMX指令集中包括有57条多媒体指令,通过这些指令可以一次处理多个数据,在处理结果超过实际处理能力的时候也能进行正常处理,这样在软件的配合下,就可以得到更高的性能。MMX的益处在于,当时存在的操作系统不必为此而做出任何修改便可以轻松地执行MMX程序。

  但是,问题也比较明显,那就是MMX指令集与x87浮点运算指令不能够同时执行,必须做密集式的交错切换才可以正常执行,这种情况就势必造成整个系统运行质量的下降。

  二、SSE指令集

  SSE(StreamingSIMDExtensions,单指令多数据流扩展)指令集是Intel在PentiumⅢ处理器中率先推出的。其实,早在PⅢ正式推出之前,Intel公司就曾经通过各种渠道公布过所谓的KNI(KatmaiNewInstruction)指令集,这个指令集也就是SSE指令集的最早名称,并一度被很多传媒称之为MMX指令集的下一个,即MMX2指令集。究其背景,原来“KNI”指令集是Intel公司最早为其下一代芯片命名的指令集名称,而所谓的“MMX2”则完全是硬件评论家们和媒体凭感觉和印象对“KNI”的评价,Intel公司从未正式发布过关于MMX2的消息。

  而最终推出的SSE指令集也就是所谓胜出的“互联网SSE”指令集。SSE指令集包括了70条指令,其中包含提高3D图形运算效率的50条SIMD(单指令多数据)浮点运算指令、12条MMX整数运算增强指令、8条优化内存中连续数据块传输指令。

  理论上这些指令对目前流行的图像处理、浮点运算、3D运算、视频处理、音频处理等诸多多媒体应用起到全面强化的作用。SSE指令与3DNow!指令彼此互不兼容,但SSE包含了3DNow!的绝大部分功能,只是实现的方法不同。SSE兼容MMX指令,它可以通过SIMD和单时钟周期并行处理多个浮点数据来有效地提高浮点运算速度。

      在后来Intel为了对付AMD3DNow!+又在SSE的基础上开发了SSE2,增加了一些指令,使得其P4处理器性能有大幅度提高。SSE2SIMD扩展名——一个计算低工控最好的方法是让每指令执行更多的工作。到P4设计结束为止,Intel增加了一套包括144条新建指令的SSE2指令集。像最早的SIMD扩展指令集,SSE2涉及了多重的数据目标上立刻执行一单个的指令(即SIMD)。最重要的是SSE2能处理128位和两倍精密浮点数学运算。处理更精确浮点数的能力使SSE2成为加速多媒体程序、3D处理工程以及工作站类型任务的基础配置。但重要的是软件是否能适当的优化利用它。

      给出了一个由DVD转制MPEG4影像文件软件“FlasKMPEG”,在重新编译和SSE2优化前后的性能比较。很显然软件经过编译后,在Pentium4上性能表现提高的浮点达+266%,经过重新编译后软件在Athlon和Pentium3上的表现也有了大幅度的改进。

  三、3DNow!指令集

  由AMD公司提出的3DNow!指令集应该说出现在SSE指令集之前,并被AMD广泛应用于其K6-2、K6-3以及Athlon(K7)处理器上。3DNow!指令集其实就是21条机器码的扩展指令集。

 

支持3DNow!的Duron处理器

    与Intel公司的MMX侧重于整数运算有所不同,3DNow!指令集主要针对三维建模、坐标变换和效果渲染等三维应用场合,在软件的配合下,可以大幅度提高3D处理性能。

      后来在Athlon上开发了Enhanced3DNow!。这些AMD标准的SIMD指令和Intel的SSE具有相同效能,但AMD在说服软件开发商以这些指令实做程序时,经历了较困难的时期。因为受到Intel在商业上以及PentiumIII成功的影响,软件在支持SSE上比起3DNow!更为普遍。

       Enhanced3DNow!AMD已经继续增加至52个指令,包含一些SSE码,因而在针对SSE做最佳化的软件中能获得更好的效能。但我们可以发现在AMD未来的Hammer—64位处理器中发现,AMD最后还是跟随了Intel的脚步,它将会完全支持SSE2,Intel的Pentium4所引进的144双准确浮点SIMD指令。而AMD稍后开发的3DNow!+只能算是个过渡方案,并不能真正算一代技术,事实上从上分析3DNow!+也已经没有意义,因为它和SSE2相比已经没有任何优势。

用户:
更多评论
您要为您所发的言论的后果负责,故请各位遵纪守法并注意语言文明。
留言:
验证码:
Copyright © 2008 All rights reserved 电脑起步者 版权所有 鄂ICP备08005539号
本站官方交流Q群:14326860 电脑爱好者Q群:31977770
关于本站