首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

x87中的扩展(80位)双浮点,而不是SSE2 - 我们不会错过它?

x87是Intel x86架构中的浮点数处理单元,它支持80位的扩展双精度浮点数运算。而SSE2是一种更先进的浮点数处理指令集,它支持128位的浮点数运算。

在云计算领域中,x87扩展双浮点数主要用于旧一些的应用程序或者特定的计算任务,而SSE2则是更为常用和推荐的浮点数处理指令集。

优势:

  1. 更高的精度:x87扩展双浮点数支持80位的浮点数运算,相比SSE2的64位双精度浮点数,具有更高的精度。
  2. 兼容性:由于x87是早期的浮点数处理单元,它的指令集被广泛支持,可以在各种x86架构的计算机上运行。

应用场景:

  1. 科学计算:对于需要更高精度的科学计算任务,如数值模拟、天气预测、物理模型等,x87扩展双浮点数可以提供更准确的计算结果。
  2. 旧应用程序兼容性:一些旧的应用程序可能仍然使用x87指令集进行浮点数运算,因此在云计算环境中,为了保证这些应用程序的正常运行,需要支持x87扩展双浮点数。

腾讯云相关产品:

腾讯云提供了丰富的云计算产品和服务,以下是一些与云计算相关的产品:

  1. 云服务器(CVM):提供弹性、安全、可靠的云服务器实例,可满足各种计算需求。产品介绍链接
  2. 云数据库MySQL版:提供高性能、可扩展的云数据库服务,支持大规模数据存储和高并发访问。产品介绍链接
  3. 人工智能平台(AI Lab):提供丰富的人工智能算法和工具,帮助开发者快速构建和部署人工智能应用。产品介绍链接

请注意,以上只是腾讯云的一些产品示例,实际应根据具体需求选择适合的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SIMD、MMX、SSE、AVX、3D Now!、NEON

这些XMM寄存器用于4个单精度浮点数运算SIMD执行,并可以与MMX整数运算或x87浮点运算混合执行。...2001年在Pentium 4上引入了SSE2技术,进一步扩展了指令集,使得XMM寄存器上可以执行8/16/32位宽整数SIMD运算或精度浮点SIMD运算。这使得 SIMD技术基本完善。...SSE2 SSE2是 Intel在Pentium 4处理器最初版本引入,但是AMD后来在Opteron 和Athlon64处理器也加入了SSE2支持。...SSE2指令集添加了对64位精度浮点支持,以及对整型数据支持,也就是说这个指令集中所有的MMX指令都是多余了,同时也避免了占用浮点数寄存器。这个指令集还增加了对CPU快取控制指令。...AMD对扩展增加了8个XMM寄存器,但是需要切换到64位 模式(x86-64/AMD64)才可以使用这些寄存器。Intel后来在其Intel 64架构也增加了对x86-64支持。

1.5K10

Java 17 更新(2):没什么存在感 strictfp, 这回算是回光返照了

这恐怕没什么令人惊喜,稍微有点儿踩坑经历小伙伴都不会这么被坑,对吧,对吧,对吧。...,在上世纪 90 年代,Java 虚拟机为了保持原有的浮点型语义,在兼容 x86 架构处理器上执行 x87 指令集(是 x86 指令集一个关于浮点子集)情况时耗费了很大开销,性能上令人很不满意...,于是加入 strictfp 来表示原有的浮点型语义(即 IEEE 754 规定那样),默认浮点型则采用了更加宽松语义,这样算是一个折中方案。...在 SSE2 (Streaming SIMD Extensions 2) 扩展指令集随着奔腾 4 发布(2002年4月)以后,Java 虚拟机有了更直接方式来实现严格浮点型语义,于是这个问题就不再存在了...好啦,关于 Java 浮点语义调整更新我们就简单介绍这么多。反正说多了也没啥用,知道怎么出去吹牛就行了。

1.4K30
  • Linux内核13_1-进程切换是对FPU单元处理_X86

    使用这些指令可以操作CPU浮点寄存器。很显然,使用这些浮点运算指令进程在进程切换时候,需要保存属于硬件上下文中浮点寄存器内容。 随后奔腾系列处理器,因特尔引入了一组新汇编指令。...这些寄存器是独立,和FPU和MMX寄存器没有重叠,所以SSE扩展和FPU/MMX指令可以混合使用。奔腾4又又引入了新扩展SSE2扩展,是在SSE基础上扩展,支持更高精度浮点数。...SSE2扩展和SSE扩展使用相同XMM寄存器。 X86微处理器不会自动在TSS中保存FPU、MMX和XMM寄存器。但是,从硬件上,支持内核只保存所需要寄存器。...该标志被清除时候有两种情况: 调用execve()系统调用,启动新进程时候。因为控制单元绝不会再返回到之前程序,所以存储在thread.i387数据就没有了意义。...2 保存FPU寄存器 我们在分析进程切换时候,知道主要工作都是在__switch_to()宏完成

    70720

    浅析Clickhouse向量化执行

    现代计算机系统概念,它是通过数据并行以提高性能一种实现方式(其他还有指令级并行和线程级并行),原理是在CPU寄存器层面实现数据并行操作。CPU是如何实现SIMD呢?答案是扩展指令集。...随着新指令扩充,又有了SSE2、SSE3、SSSE3、SSE4(包含4.1和4.2)等新版本。...我们可以通过cpuid类软件获得处理器对SSE指令集支持信息,下图以笔者自用MacBook ProIntel Core i9-9880H为例。...一个XMM寄存器原本只能存储一种数据类型: 4个32位单精度浮点SSE2扩展到能够存储以下类型: 2个64位精度浮点数 2个64位/4个32位/8个16位整数 16个字节或字符 SSE指令分为两大类...标量指令只对XMM寄存器最低位数据进行计算,打包指令则是对所有数据进行计算。下图示出SSE1,单精度浮点数乘法标量和打包运算。

    56520

    intel处理器历代产品_英特尔酷睿历代提升

    在告别 13 年传奇品牌奔腾之后,我们又迎来新一代酷睿 i 核处 理器。现在,我们就来回顾一下英特尔处理器 40 年来发展历程。...和 8086 一样, 也没有浮点运算单元(FPU),不过它可以使用 X87 协处理器。最大频率为 12.5MHz,相比之下,竞争对手速度已经能够达到 25MHz 了。...MMX 技术是 Intel 最新发明一项多媒体增强指令集技术,英文全称可 以翻译成“多媒体扩展指令集”。...NetBurst 结构具有不少明显优点:20 段 超级流水线、高效乱序执行功能、2 倍速 ALU、新型片上缓存、SSE2 指令 扩展集和 400MHz 前端总线等等。...网络数据流单指令多数据扩展 2(SSE2) 通过增加 144 条新指令,SSE2 具有更强多媒体增强指令和数据流单指令。

    1.9K30

    Linux x86 和ARM什么区别?

    ARM体系结构目前被公认为是业界领先32位嵌入式 RISC 微处理器结构,所有 ARM 处理器共享这一体系结构。 因此我们可以从其所属体系比较入手,来进行X86指令集与ARM指令集比较。...由于RISC处理器指令集是精简内存管理单元、浮点单元等都能设计在同一块芯片上。...X86指令集 X86指令集是Intel为其第一块16位CPU(i8086)专门开发,后来电脑中为提高浮点数据处理能力增加X87芯片系列数学协处理器以及使用X87指令,以后就将X86指令集和X87...X86指令集只有8个通用寄存器,所以,CISCCPU执行是大多数时间是在访问存储器数据,不是寄存器。这就拖慢了整个系统速度。...解码分为硬件解码和微解码,对于简单x86指令只要硬件解码即可,速度较快,遇到复杂x86指令则需要进行微解码,并把分成若干条简单指令,速度较慢且很复杂。

    2.2K10

    i386和i686区别

    i686指是Pentium Pro以及此后Intel IA32 CPU,也就是平常我们所说P6系列处理器。 i386不用说了,泛指80386以后。...i686是pentiumpro及以后通用arch,i386是所有x86通用arch,i386包括i686没有包括就是386、486、586(pentium)、pentium-mmx 现在应该没有人还在用...十分使用扩展指令基对大规模计算来说很重要,如昨天加了-mmmx -march=i686打包了一下GIMP,发现有些处理(如马赛克滤镜)快了5倍以上。...另外,如果浮点运算使用-mfpmath=sse -msse的话,浮点除法速度有近百倍提高,这对浮点运算偏重的如音、视频解码,编码很重要。...希望开发者能考虑一下,把/usr/lib/rpm/rpmrcbuildtranslator xxx:i386改为 xxx:i686,并在optflag i686:中加入 -mmmx。

    1.7K20

    i386i686x86-64区别

    i686指是Pentium Pro以及此后Intel IA32 CPU,也就是平常我们所说P6系列处理器。 i386不用说了,泛指80386以后。...i686是pentiumpro及以后通用arch,i386是所有x86通用arch,i386包括i686没有包括就是386、486、586(pentium)、pentium-mmx 现在应该没有人还在用...十分使用扩展指令基对大规模计算来说很重要,如昨天加了-mmmx -march=i686打包了一下GIMP,发现有些处理(如马赛克滤镜)快了5倍以上。...另外,如果浮点运算使用-mfpmath=sse -msse的话,浮点除法速度有近百倍提高,这对浮点运算偏重的如音、视频解码,编码很重要。...希望开发者能考虑一下,把/usr/lib/rpm/rpmrcbuildtranslator xxx:i386改为 xxx:i686,并在optflag i686:中加入 -mmmx。

    4.5K10

    使用STL vector 作为XNAMath快速灵活SIMD数据容器

    在做过一些研究后, 我发现XNAMath最符合我做SIMD移植要求. 只有5个头文件, 全是内联SSE/SSE2指令, 并且有完善文档和支持....最棒是它可以像在Direct3D那样应用在OpenGL. 把矩阵转置成列主序消耗并不是很大, 毕竟头文件就在那里, 实在不行还可以自己改嘛....缺点就是这是个预处理指令, 你必须书写和编译相同SSE/SSE2和FPU指令代码, 并且测试哪一个版本适用于目标平台. 当然, 除非你想支持非SSE处理器, 否则不会遇到这种状况....函数参数也不是16位对齐, 它会产生一个编译错误'C2719'. 非对齐类型XMFLOAT4是一个包含4个单精度浮点结构体, 可以用在堆内存对齐vector类....不要以为参数是XMFLOAT4A类型, 我们数据在容器是XMFLOAT4类型(XMFLOAT4在堆上对齐, XMFLOAT4A因为'C2719'错误不能使用).

    76630

    cpu(了解了以下8条,没人敢和你忽悠CPU)

    说白了,在台式机我们所说超频,都是超CPU外频(当然一般情况下,CPU倍频都是被锁住)相信这点是很好理解。但对于服务器CPU来讲,超频是绝对不允许。...等都是CPU扩展指令集,分别增强了CPU多媒体、图形图象和Internet等处理能力。我们通常会把 CPU扩展指令集称为"CPU指令集"。...X86指令集是Intel为其第一块16位CPU(i8086)专门开发,IBM1981 年推出世界第一台PC机CPU—i8088(i8086简化版)使用也是X86指令,同时电脑中为提高浮点数据处理能力增加了...X87芯片,以后就将X86指令集和X87指令集统称为X86指令集。...核心,完全相同运行频率;最后,尽可能保持相同产品序列编号,因为两个生产批次CPU作为处理器运行时候,有可能会发生一颗CPU负担过高,另一颗负担很少情况,无法发挥最大性能,更糟糕是可能导致死机

    1.4K40

    各种开源汇编、反汇编引擎非专业比较

    指令集支持不全,由于Ollydbg年久失修,现在甚至连对MMX指令集都不全,现在INTEL/AMD扩展指令集标准又更新了多个版本,什么SSE5/AVX/AES/XOP就更别提了,完全无法解析。...在使用过程基本上没有发现什么明显缺点,不常用扩展指令集也实现了不少。   ...目前实现扩展指令集有: FPU, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, VMX, CLMUL, AES, MPX   同时它也给不同种类指令进行了分类...udis86支持X86扩展指令集有: MMX, FPU (x87), AMD 3DNow, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AES, AMD-V,...,因为解码速度虽然不行,但是BUG很少(因为LLVM有苹果那么大个公司做支撑),流图和指令分析(还不完善)目前仍然使用BeaEngine,这也是没办法事,毕竟性能也很重要。

    3.3K30

    Objective-C源文件编译过程

    token指的是程序一个基本组成单元—词法单元。token作用相当于一个句子单词,从某种意义上来说,一个单词无论出现在哪个句子代表意思都是一样,是一个表义基本单元。...注意:这里位置是从1开始,而非0。 上述token'int'、'main' 就是词素。...代码生成一个至关重要方面是合力分配寄存器以存放变量值。 LLVM IR 有些编译器结构单纯分为前端和后端,比如GCC。LLVM结构并不是单纯分为前端和后端。...LLVM编译器集合是围绕着一组精心设计中间表示形式创建,这些中间表示形式使得我们可以把特定语言前端和特定目标机后端相结合。...如果将来LLVM需要支持一款新机器架构,只需要针对这款机器架构提供一个新后端。LLVM IR优化器是通用。这样一来LLVM就变得易扩展

    9.5K51

    跟Google学写代码--Chromiumbase--cpu源码学习及应用

    Chromium是一个伟大、庞大开源工程,很多值得我们学习地方。...SSE(Streaming SIMD Extensions)是英特尔在AMD3D Now!发布一年之后,在其计算机芯片Pentium III引入指令集,是MMX超集。...SSE2 SSE2是Intel在Pentium 4处理器最初版本引入,但是AMD后来在Opteron 和Athlon 64处理器也加入了SSE2支持。...SSE2指令集添加了对64位精度浮点支持。这个指令集还增加了对CPU快取控制指令。AMD对扩展增加了8个XMM寄存器,但是需要切换到64位模式(AMD64)才可以使用这些寄存器。...以及对超执行绪技术支持。 SSSE3 SSSE3是Intel针对SSE3指令集一次额外扩充,最早内建于Core 2 Duo处理器

    94970

    Python(一)

    请确保你在缩进中使用数量一致空格,否则你程序将不会运行,或引发不期望行为。错误缩进可能会导致错误,我们不能任意开始一个新语句块。...字符串是不可变 这意味着一旦你创造了一串字符串,你就不能再改变。 格式化方法 有时候我们会想要从其他信息构建字符串。我们会使用 format() 函数。...其次,转换至字符串工作将由 format 方法自动完成,不是如这般需要明确转换至字符串。...在一个字符串,一个放置在末尾反斜杠表示字符串将在下一行继续,但不会添加新一行。...-8') # b'\xe4\xb8\xad\xe6\x96\x87' 反过来,如果我们从网络或磁盘上读取了字节流,那么读到数据就是 bytes。

    77620

    armeabi-v7a架构(sv7a)

    armeabi与armeabi-v7a表示支持不同CPU类型armeabi是指该so库用于ARM通用CPU,v7aCPU支持硬件浮点运算。...v5 cpu,armeabi-v7a是针对有浮点运算或高级扩展功能arm v7 cpu。...SSE: 英特尔推出类似 NEON 工具SSE 指面向英特尔架构(IA)SIMD 流指令扩展。 目前,英特尔® 凌动™ 最高支持 SSSE3(补充 SIMD 流指令扩展 3)。...如欲了解详细信息,请参阅英特尔《IA-32 和 IA-64 软件开发人员手册》“第一卷: 基础架构”部分。...提供 SSE、SSE2、SSE3 和 SSSE3 操作码。注意,数据运算通常会涉及到处理基于精度打包浮点数值;并且需要在 XMM 寄存器之间,或在这些寄存器与内存之间批量传输数据。

    1.2K10
    领券