MMX

✍ dations ◷ 2025-08-19 11:06:59 #并发计算,X86架构

MMX是由英特尔开发的一种SIMD多媒体指令集,共有57条指令。它于1996年集成在英特尔奔腾(Pentium)MMX处理器上,以提高其多媒体数据的处理能力。

其优点是增加了处理器关于多媒体方面的处理能力,缺点是占用浮点数寄存器进行运算(64位MMX寄存器实际上就是浮点数寄存器的别名)以至于MMX指令和浮点数操作不能同时工作。为了减少在MMX和浮点数模式切换之间所消耗的时间,程序员们尽可能减少模式切换的次数,也就是说,这两种操作在应用上是互斥的。AMD在此基础上发展出3D Now!指令集。

3D Now!发布一年后,Intel在MMX基础上发展出SSE(Streaming SIMD Extensions)指令集,用来取代MMX。现在,新开发的程序不再仅使用MMX来最优化软件运行性能,而是改使用如SSE、3DNOW!等更容易最优化性能的新一代多媒体指令集,不过目前的处理器大多仍可以运行针对MMX最优化的较早期软件。

1997年,Intel公司起诉AMD公司与Cyrix公司非法使用(misuse)了商标MMX。随后这起诉讼庭外和解,AMD公司承认MMX为Intel的商标,Intel允许AMD公司使用MMX作为一项技术的名称。在这起诉讼中,AMD披露MMX是Intel命名的矩阵数学扩展(Matrix Math eXtensions)的字母缩写。

MMX寄存器,称作MM0到MM7,实际上就是处理器内部80比特字长的浮点寄存器栈st(0)到st (7)的尾数部分(64比特长)的复用。由于浮点栈寄存器的高16位未被MMX技术使用,因此这16位都置为1,因此从栈寄存器的角度看,其浮点值为NaN或Infinities,这可用于区分寄存器是处于浮点栈状态还是MMX状态。作为MMX寄存器都是直接访问。利用了装配数据类型(packed data type)的概念,每个MMX寄存器的64比特字长可以看作是2个32位整数、或者4个16位整数、或者8个8位整数,从而可以执行整数SIMD运算。这对于1990年代中期的2D、3D计算的加速还是很有意义的,因为当时的计算机的图形处理器(GPU)还很不发达。但现在MMX整数SIMD运算对于图形运算来说是多余的技术了。不过MMX的饱和算术运算(saturation arithmetic operations)对于一些数字信号处理应用还是有用的。

继MMX技术之后,Intel又于1999年在Pentium-III处理器上推出SSE技术,引入了新的128位宽的寄存器集(register file),称作XMM0到XMM7。这些XMM寄存器用于4个单精度浮点数运算的SIMD执行,并可以与MMX整数运算或x87浮点运算混合执行。2001年在Pentium 4上引入了SSE2技术,进一步扩展了指令集,使得XMM寄存器上可以执行8/16/32位宽的整数SIMD运算或双精度浮点数的SIMD运算。这使得SIMD技术基本完善。

相关

  • 挡风玻璃挡风玻璃指的是飞机、汽车、公车、机车以及电车等前面部分的窗户。现代的挡风玻璃通常是以层压过的安全玻璃所制作,里外各一层弯曲的玻璃,中间夹着一层被层压过的塑胶作为安全
  • 聚丁烯聚丁烯(Polybutene,PB)是一种高分子惰性聚合物,主要是由丁烯聚合而成。与聚丙烯和聚乙烯皆为经常使用的塑胶材料。聚丁烯主要用于自来水管、热水管与暖气管等等管道的管壁材料。
  • 布城布城(/pʊtrɑːdʒɑːjə/,英语和马来语:Putrajaya,全称:“布城联邦直辖区”)原名“Prang Besar”,旧译“布特拉再也”和“太子城”,是政府建立的新市镇,也是马来西亚的行政首都,是
  • 死神少女《死神少女》(英文:Gloomy Salad Days)是公视拥抱青春灵魂最深处三部曲之二部曲。由《漂浪青春》周美玲导演。2010年4月27日举行开拍记者会,公视于2010年10月9日晚间9点首播。周
  • 2013年土耳其塔克西姆广场抗议反政府抗议者(最初是环保主义者)土耳其抗议者:政府人士:50,000人以上(Istanbul) 20,000(安卡拉)2013年土耳其抗议运动是从2013年5月28日在土耳其发生至今的抗议运动,被抗议者称为“
  • 灵芝属灵芝属(学名:),又称木灵芝、神芝、芝草、仙草、瑞草,广义上灵芝包括灵芝科(英语:Ganodermataceae)及其近缘科属的种类,狭义上则是指广泛栽培的特定种类。中国古代认为灵芝具有长生不
  • 大西洋奴隶贸易大西洋奴隶贸易,或称为跨大西洋奴隶贸易。是指16世纪至19世纪时期(也有人认为早至15世纪,并持续至20世纪),在环大西洋地区将非洲大陆人民作为廉价劳动力提供给美洲大陆殖民地地区
  • 如樱花般美好的你“如樱花般美好的你”是生物股长的生物的第8张单曲,是二专Life Album的先行单,和前一张单曲茜色の约束之间相隔约三个月,是2008年的第1张单曲,2008年1月30日由Epic Records Japa
  • 布劳尔维尔布劳尔维尔(英语:Browerville)是一个美国城市,位于明尼苏达州托德县。根据2010年的人口普查,当地人口为790人。根据美国人口普查局,该城市的总面积为1.06平方英里(2.75平方千米)。
  • 怀俄明州单一国会选区怀俄明州单一国会选区(英语:Wyoming's At-large congressional district)是美国怀俄明州一个众议院选区,始于1890年,范围包括怀俄明州全州。2000年人口493,782人,是美国人口最少的