Intel 45nm制程处理器上的SSE4指令集简介

介绍了 Intel 45nm 制程处理器上新增的 SSE4 指令集,包括其增强多媒体、图象及 3D 应用性能的能力。通过使用 SSE 技术,可以显著提高 CPU 的向量运算能力。
Intel 45nm 制程处理器上的 SSE4 指令集简介  
Intel的 SSE( Streaming SIMD Extensions, 流式单指令多数据扩展)技术有效增强了 CPU的向量运算能力。支持该指令集的处理器有 8个 128位 xmm寄存器,每一个寄存器可以同时存放 4个 32位整数 (int), 4个 32单精度浮点数 (float) 或 2个 64位双精度浮点数 (double)。比如我们在 3D开发中常见的 4元组 32位浮点数结构 <x, y, z, w>, <r, g, b, a>都可以封装在一个 xmm寄存器中。
SIMD( single-instruction, multiple-data)使用单条指令同时完成处理多个数据的操作。假定
我们要计算一个 32位浮点数数组中每一个元素的平方根,可以将数组中的每 4个元素加载到一个 128位 xmm寄存器中,然后使用一条 SSE指令同时计算这 4个数的平方根,然后把所得的 4个结果写回内存。
Intel 的 SIMD技术从 Pentium MMX时代引入,后来发展成 SSE/SSE2/SSE3/SSSE3等。在 Intel 45nm制程处理器引入了 54条新的指令,在 Core微架构的下一代 Penryn微架构中引入了 47条,称为 SSE4.1,在 Penryn的下一代 Nehalem中再引入了另外 7条,称为 SSE4.2. 新的指令集主要是为了增强多媒体,图象和 3D应用程序的性能,这些应用都需要充分发挥 CPU提供的能力来进行运算。强烈建议进行这些应用开发的朋友关注一下 SSE指令集,不需要很大的工作量就可以给你们的程序带来很大的性能提升。
开发 SSE最好的方法是使用编译器+ intrinsics,可以使用类 C的函数调用来利用 SSE,同时能充分利用到编译器的编译优化。不需要手动编写复杂的汇编代码。最新的 Intel Compiler 10可以支持生成 SSE4指令。另外 最新消息显示 VS2008中已经加上了 SSE4支持。 SSE4的详细内容可以参见 这里
使用 SSE最常见的就是进行矩阵和向量,这里有一篇很好的 whitepaper显示如何使用 SSE指令集进行 4x4矩阵和 4元组向量运算的优化,可以以此为基础打造自己的函数库,并加上最新的 SSE4指令集支持。
Optimized Matrix Library for use with the Intel® Pentium® 4 Processor's SSE2 Instructions
附带的源代码中包含单精度 (SP)和双精度 (DP)浮点数的向量和矩阵运算类,需要用 Intel Compiler进行编译。


本文转自Intel_ISN 51CTO博客,原文链接:http://blog.51cto.com/intelisn/131487,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值