0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Intel推出了一系列的技术和指令集

SSDFans 来源:ssdfans 2020-08-21 16:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

SIMD是Single-instruction multiple-data的缩写。意思是通过一条指令就能够对若干笔数据进行处理运算。这种指令对于整数型数组运算,或者是图象像素点运算都极为有利。为了支持这种处理模式,Intel推出了一系列的技术和指令集,这其中包括:

MMX技术

SSE扩展指令集

SSE2扩展指令集

SSE3扩展指令集

SSE3补充指令集

SSE4扩展指令集

所有的技术或是指令集都提供了若干指令用来支持SIMD运算。其运算对象可以是整数型数据或者是浮点数据。

对于SIMD的整数数据运算,可以使用64位MMX寄存器,或者是128位XMM寄存器。而对于SIMD的浮点数据运算,则只能是哟很难过128位的XMM寄存器。

在奔腾II时期,Intel就推出了MMX技术,该技术包括了MMX指令集以及MMX寄存器。MMX寄存器为64位宽度,可以一次性处理8个独立字节的整数型运算,或者是4个独立16位的整数型运算,或者两个独立的32位整数型运算,或者一个64位整数型运算。

当到了奔腾III时期,Intel又推出了SSE扩展指令集。这些指令可以在XMM寄存器中处理单精度浮点数据,或者在MMX寄存器中处理整数型数据。部分SSE指令提供了对状态,缓存(Cache)和内存访问顺序等方面的控制。SSE指令集对于图象处理方面进行了补强。例如3D建模,渲染和视频解码等方面。

Intel的奔腾4和至强(Xeon)系列处理器推出后,又增加了SSE2扩展指令集。这些指令可以使用相同的XMM寄存器处理双精度浮点数据和整数型数据。这样一来,原本只能处理64位整数型数据的能力得到了提升。除此之外,在对缓存以及内存访问顺序方面,SSE2也提供新的支持。

SSE3扩展指令集伴随着奔腾4处理器超线程(Hyper-Threading)技术一起发布。SSE3扩展指令集增加了13个新指令用来提高SIMD相关运算的性能。

SSSE3扩展指令集增加了32个指令用来提升SIMD对于整数型数据运算的性能,最早在Intel的Xeon 5100系列和Intel Core 2处理器上使用。

SSE4扩展指令集又增加了54条指令。其中47条指令被称为SSE4.1,剩下7条指令被称为SSE4.2。

进入到Intel 64架构后,128位的XMM寄存器由原来的8个,增加到了16个。

再往后,Intel推出了AVX(Advacned Vector Extensions)技术。相比传统的SIMD相关运算,AVX提供了更为强大的架构支持。主要特点如下:

提供了256位的YMM寄存器,用来扩展原本的XMM寄存器。

相比128为XMM寄存器来说,两倍效能提升(如果执行时间一致的话)

相比传统SIMD指令,AVX指令能够支持3操作数运算,这对于编程来说,提供更好的灵活性。如果只有两个操作数,势必有一个操作数中的内容将会被运算结果替换掉。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 寄存器
    +关注

    关注

    31

    文章

    5588

    浏览量

    129035
  • cpu
    cpu
    +关注

    关注

    68

    文章

    11216

    浏览量

    222859
  • SIMD
    +关注

    关注

    0

    文章

    36

    浏览量

    10865

原文标题:SIMD:为什么Intel CPU选择了它?

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    软硬件协同技术分享 - 任务划分 + 自定义指令集

    利用定时器中断,率先判断该FIFO的值不为空,并且保证次读取个帧长(即10个周期)的数据,能够实现该FIFO内数据即写即读,数据写入不久便能取走的效果。 自定义指令集设计 E203
    发表于 10-28 08:03

    指令集测试的种纠错方法

    本文描述在进行指令集测试的种纠错方法 1.打开测试指令集对应的dump文件 dump文件是指由汇编文件进行反汇编之后,可以供人阅读指令的反汇编文件。其包含了每
    发表于 10-24 14:04

    Vector向量指令集简介(

    3位标识数据位宽,高两位指示数据类型。 指令的类型由vetype的值进行标记,如果将vetype设为00000则会禁用向量寄存器。 对于vector指令集来说,有些必须要明白的名词需要搞懂
    发表于 10-23 08:28

    risc-v P扩展() P指令集简介

    解码、医学成像、计算机视觉、嵌入式控制、机器人技术、人机界面等。 P指令集扩展提高了RISC-V CPU IP产品的DSP算法处理能力。随着RISC-V P指令集扩展的增加,RISC-Vcpu现在可以以
    发表于 10-23 07:40

    RISCV-K指令集扩展分享

    RISC-V K扩展指的是RISC-V用于提升密码学算法的速度、减小应用程序大小的个扩展指令集。主要包含了:AES加密算法的加速指令、SHA算法的加速指令,SM3、SM4算法的加速
    发表于 10-23 06:12

    RVB 位操作指令集扩展(

    、B扩展简介 B扩展,即bit-manipulation (bitmanip) extension,主打增强位操作的指令集。B扩展定义了RV32-64下的位操作指令。为了更精准地在领域
    发表于 10-22 08:11

    RVF单精度浮点指令集扩展介绍(2)

    RVF单精度浮点指令集扩展 RVF扩展了26条浮点指令。 浮点乘加指令 浮点比较、最大最小值、转移、符号注入、分类指令 浮点除、开方
    发表于 10-22 07:26

    RVF单精度浮点指令集扩展介绍(1)

    RVF单精度浮点指令集寄存器扩展 RVF扩展了32个独立的浮点通用寄存器,其中0号寄存器可变。 RVF扩展了1个fcsr寄存器,存放了异常标志和动态舍入模式。 RVF扩展必须对misa csr寄存器进行定的修改。
    发表于 10-22 06:04

    指令集P扩展的主要内容

    1. 指令集P扩展的主要内容 新指令的添加,在蜂鸟E203原有指令集的基础上,可以添加些新的指令,以满足新的应用需求;
    发表于 10-21 10:50

    基于蜂鸟E203架构的指令集K扩展

    蜂鸟E203是款基于RISC-V架构的微处理器,其指令集包含RV32I的基本指令集,RV32M的乘法扩展指令集,以及些常用的定点
    发表于 10-21 09:38

    爱立信推出一系列AI驱动的新产品与合作计划

    爱立信近日推出一系列AI驱动的增强功能,进步丰富其业务和运营支持系统(OSS/BSS)产品组合,实现产品升级演进。同时,爱立信还宣布启动面向紧密合作伙伴的全新AI合作计划。
    的头像 发表于 07-08 10:05 1.6w次阅读

    TMS320C54x DSP代数指令集参考,第3卷

    电子发烧友网站提供《TMS320C54x DSP代数指令集参考,第3卷.pdf》资料免费下载
    发表于 12-30 16:46 0次下载
    TMS320C54x DSP代数<b class='flag-5'>指令集</b>参考<b class='flag-5'>集</b>,第3卷

    TMS320C54x DSP助记指令集参考第2卷

    电子发烧友网站提供《TMS320C54x DSP助记指令集参考第2卷.pdf》资料免费下载
    发表于 12-24 16:58 0次下载
    TMS320C54x DSP助记<b class='flag-5'>指令集</b>参考<b class='flag-5'>集</b>第2卷

    Cortex-M3/M4F指令集技术用户手册

    电子发烧友网站提供《Cortex-M3/M4F指令集技术用户手册.pdf》资料免费下载
    发表于 12-23 16:31 9次下载
    Cortex-M3/M4F<b class='flag-5'>指令集</b><b class='flag-5'>技术</b>用户手册

    《RISC-V 体系结构编程与实践(第2版)》指令集

    本书的指令集基于rv64i mafdcsiu 属于精简指令集。 阅读本章可以指令集不多,都是最基础的功能点。 分为6个部分 加载保存指令 跳转指令
    发表于 12-07 18:36