欢迎光临GGAMen游戏资讯




【x86 兴衰史】奠定 Intel Xeon Phi 技术基础的“x86 处理器显卡”:Larrabee

2024-11-25 213

Intel 终于在今年 8 月处理器业界年度盛事之一的 IEEE HotChips 29,公布了针对深度学习最佳化的新款 Xeon Phi“Knights Mill”,Intel 鸭子划水多年的 MIC(Many Integrated Core,整合众核架构)总算又多了一点曝光度,但你知道 Intel 的超级多核心产品线,是早在十年前,酝酿于极度疯狂的“x86 处理器架构显卡”吗?

喔齁。

2006 年底至 2007 年中的显卡市场,正处于 GPGPU 随着 DirectX 10 与统一着色器架构的实用化,而开始萌芽的关键时刻,nVidia GeForce 8 系列成为初代 CUDA 的载具,AMD Radeon HD 2900 则开双倍浮点精确度之先河,因此一谈到绘图芯片通用运算这档事,完全不缺抬杠的话题。

但当时最欢乐异常的焦点,并非集中在显示芯片双雄的新产品,而是聚焦于 Intel,着手超级多核心多执行绪 x86 处理器架构的“显卡”,你可把它当成“Intel 的 GPGPU”,虽然它从未在市场现身过。

Intel 首度在 2007 年 4 月北京 IDF(Intel Developer Forum)公开 Larrabee 这个研发代号,并公开呛声“Larrabee 出现后,会使显示核心在两到三年内消失”。但事实上,早在 2006 年底某份未刻意保密的研讨会简报,详细描述了 Larrabee 规格概观,规格比较表还不小心一并爆破了从希伯来文的“砂桥”(Gesher)正名而来的 Sandy Bridge 处理器。

像 Intel 这样的大公司,很难隐藏所有秘密,不提公开的专利,光历年 IDF 和各类学术活动的议程简报,就多次无预警避开该公司法务和行销的耳目,让多年后才会开花结果的机密计划,提前曝光在世人眼前。

加上该文件内,出现某张爆炸性的显卡架构图,和大剌剌的“Discrete High End GPU”字样,国内外无数知名网站的讨论区,就开始暴动了,还意外波及乏人问津到连蚊子都不想骚扰的笔者部落格,甚至还有电脑杂志的编辑,高潮到写下“因为一切软件搞定,这将是历史上首款往前相容未来 3D API 的显卡架构”。

一图胜千言,你可清楚看到,这是 16 核心的 x86 处理器,实际上核心数绝不会这么少。

接着你就了解,每个支援四条多执行绪的循序执行(In Order)核心,那显眼的 SIMD-16,意谓整颗 16 核心处理器,每个时脉可进行 256 个 32 位元单倍浮点精确度 SIMD 运算,账面上优于 nVidia 最高阶显卡 GeForce 8800 GTX 的 128 个。

但你会不会隐约感觉到……有什么恐怖的秘密藏在这张简报里?似乎有什么不能告人的机密,被前面的方块图挡住了?

各位,欢声雷动吧,感谢原始文件是 PowerPoint 格式,移除挡在前面的动画图片,世界奇观般的“x86 处理器架构显卡”,包括 GDDR 内存、外接电源、视讯输出、音讯输入等近代显卡的必备特征,一丝不挂在读者眼前裸奔了。

接连几年的故事,就是 Intel 慢慢面对现实,被迫承认如此疯狂的构想,无力追赶急速进步的 GPU,而“转进”高效能运算和人工智能的过程。

Larrabee 全貌如下:

  • “相对”于 8 核心而言的超级多核心架构,核心初步规划 16 至 24 个(直到加码至 48 核),时脉 1.7Ghz~2.5GHz,标准设计功耗约 150W,单芯片理论效能最高可达 1 Tera Flops,当 32 核、时脉 2GHz,更达 2 Tera Flops,为同时期 8 核心 x86 处理器“Sandy Bridge”的 5 至 10 倍。
  • 预定 2009 年问世,采用 45nm 或 32nm 制程,晶粒面积不明,但封装后的芯片面积高达 2450.25(49.5×49.5)平方毫米,果然颇具高阶显示芯片的威势。
  • 核心复杂度约为 P54C(没有 MMX 指令集的 Pentium)等级,不具备非循序指令执行能力(Out-Of-Order Execution,OOOE),支援 4 条同时多执行绪,以掩盖来自运算与内存存取的延迟,24核 心就是 96 条执行绪,48 核心则 192 执行绪,以此类推。但跟 GPU 相比,仍小巫见大巫。

  • 每个核心拥有 16 组 32 位元运算单元,总计 512 位元宽,可同时执行 16 个单倍精确度浮点运算(SIMD-16),亦可处理 32 位元整数与 64 位元双倍精确度浮点。此外,每个核心内建 32kB 第一阶资料与 32kB 指令快取,延迟仅有一时脉周期。

  • LNI(Larrabee New Instructions,或称 LRBni)SIMD 扩充,包含约 100 个新指令,定义聚集(Gather)/分散(Scatter)指令、32 个 512 位元宽资料暂存器,与 8 个 16 位元遮罩暂存器,使 Larrabee 更接近向量电脑。

  • 单一处理器核心 4 个执行绪,各自有独立的资料暂存器,共用 256kB 第二阶快取,透过环状总线(Ring Bus)连接所有第二阶快取、内存控制器,及材质处理等固定功能单元。该总线理论传输带宽介于 435.2GB/s 至 640GB/s,每时脉周期 256byte。
  • 双通道内存控制器支援 DDR3、FB-DIMM 或 GDDR5,视不同的内存种类,单颗 Larrabee 最高记体容量介于 4GB 至 32GB,理论带宽 40GB 至 128GB。另外,Larrabee 支援虚拟内存共享,与系统处理器之间可共用定址空间,彼此互通有无。
  • 内建 3 组双埠 CSI(日后改称 QPI),单向理论传输带宽 17GB/s,延迟 50ns,可建构多处理器环境。是的,Larrabee 是可以做为执行操作系统的运算平台,并不限于“外挂”的显卡或运算卡。

现在开始插播脑残问答时间。

Larrabee 是什么?

Larrabee 不是什么特殊品种的蜜蜂(不过谣传 Intel 内部相关团队的电子邮件签名档,全员都会统一放一只蜜蜂的图示),而是 Intel 发神经搞出来的超级多核心/多执行绪 x86 处理器,号称“单芯片运算能量 1 Tera Flops”,沿用已成骨灰、设计图捐给美国政府的 P54C 等级、连 MMX 都没有的 Pentium 核心,笔者还满担心大多数读者,早就遗忘初代 Pentium 长得什么样子了。

兼具“CPU 的可编程性”与“GPU 的高平行度”,完美的交会点就是 Larrabee,充分彰显了 Intel 内 x86 义和团的疯狂野心。

为何 Intel 要开发 Larrabee?

看在 AMD 在 2006 年购并 ATI、摆明要整合处理器和显示芯片、与未来两者指令集架构的份上,输人不输阵,Intel 势必有所回应,只是让人意想不到 Intel 所谓“重新启动独立显示芯片计划”竟是让众人眼镜碎满一地的夸张设计,从 i740 到 Larrabee,根本是时空跳跃等级的差距。

在高效能运算市场,nVidia 的 CUDA,是对 Intel 更明显的威胁,对 Intel,开发 Larrabee 是不得不为。

那 Intel 干么吃饱太闲,要用 x86 指令集,而不是 XScale(前 StrongARM)或 IA-64(Itanium)?

看在既有 x86 庞大软件资源的份上,在编译器领域长期投入庞大投资的 Intel,可尽量多卖出几套他们的软件开发工具。事实上,Intel 最热中谈论 Larrabee 的部门,就是急速膨胀的软件事业群。

此外,太多显示芯片技术专利掌握在 nVidia 和 AMD 手上,假若 Intel 不希望被拿着 ATI 专利的 AMD 天天找上法院喝咖啡,这的确是避开专利麻烦的途径,还很可能是唯一的手段。

像 Intel 的 GMA-X3000 的 Triangle Setup 竟然还是用统一着色器硬干出来的,“专利地雷”的潜在威胁有多大,由此可见一斑,欢迎来到专利恐怖主义的时代。

Larrabee 是史上第一颗“单芯片 1 Tera Flops”的产品?

完完全全不可能,2008 年底 AMD Radeon HD 4800 就先声夺人了,而且 Larrabee 是起码拖到 2009 年才会问市的产品,在这之前,IBM、Sony 也肯定推出理论运算效能到达 1 Tera Flops 的新版 Cell 处理器。2007 年宣布注定落后竞争对手、还呛可让竞争者 3 年内消失的高技术风险产品,想想也满屌的。

Larrabee 最疯狂的地方是?

几乎纯软件的可程式化绘图管线。请见 Intel 自己的呈堂证供,不要吓坏。

Intel 的思维不外乎“老子就是市场的领导者”,宁可发挥自己的影响力,逼迫其他人跟进。更何况,Intel 并不希望 3D 绘图的基础架构诠释权,长期被微软等软件厂商把持。从当初 Intel 蛮干 IA-64 一路到 Larrabee,思考逻辑一点都没改变。

nVidia 黄仁勋当时曾批评,未在可程式化与固定硬件功能取得平衡的 Larrabee,在老旧 x86 架构的拖累下,主要绘图运算都靠可程式化实作,表现势必糟糕,可惜最终我们也无从得知,到底会惨烈到什么程度。

纯软件绘图管线有什么好处?

可充分发挥 x86 指令集号称易于开发的“潜力”,也可对运算资源做出最大限度的利用。Intel 曾列举了 3 款知名游戏,做为其印证其理论基础所言不虚的令箭。

x86 指令集究竟适不适合显示系统?

为何 x86 处理器必须一路叠床架屋,延续指令集相容性,处理器微架构一用就好几年,而显示芯片却相反,微软 DirectX 的 Shader Model 在短短几年就出好几版,显示芯片架构却动辄大兴土木?你有听说过一台个人电脑,开机前要安装“处理器驱动程式”吗?当然没有,但显示芯片却可透过驱动程式,与 I/O 装置的间接性,维持对过往老旧应用程序界面的相容性。

既然如此,我们也可想见,以 nVidia 与 AMD 为首,内建巨大可程式化着色运算单元的高效能显示芯片,其底层指令集架构与相对应的实作加速机制,不像 x86 之类的泛用指令集,有着巨大的历史包袱,可随时针对绘图需求量身订做。

那么,Intel 选择 x86 指令集第一个问题点就浮现出来了,x86 处理器与绘图芯片双雄的 GPU 相比,两边底层指令集架构的“血统纯正度”,根本天差地远,而我们也有充分的理由相信,后者绝对远比前者更适合绘图系统的需要。

指令品质,以卵击石?

也许你会质疑,Intel 只要新增绘图专用指令,不就得了?事实上,Larrabee 并非 Intel 首度尝试将泛用处理器导入绘图应用,早在 1988 年号称“Cray on a chip”的 i860,就为此特别增加绘图相关指令与 3D 绘图功能单元。

但 x86 毕竟就是 x86,其先天不良加上后天失调的原罪,也限制了日后扩充的弹性。以暂存器数目来说好了,在 AVX 和 LRBni 之前,受限于指令编码字段,导致历代 x86 指令集扩充一次顶多增加 8 个暂存器,但微软 Shader Model 4.0 光是“暂存用的”暂存器就高达“4,096”个。

x86 的双算子指令格式(像 a+b=b)则是另一个问题点,除了大幅降低暂存器的利用效率(因会摧毁其中一个暂存器的资料,如需重复利用,就必须把资料搬移到其他的暂存器),也难以实作图学常用的乘积和指令(Multiply-Add,如 a×b+c=d),必须使用内存当其中一个来源算子(Source Operand),这也是到了 AVX 之后,才逐渐克服的瓶颈,但仍远远不够。

种种不利因素累积下来,Intel 想拿残破不堪的 SIMD 指令集扩充,去对抗重武装的 GPU,无异以卵击石。细心的读者也可以注意到,Larrabee 第一阶快取内存存取延迟只有 1 cycle,摆明用来弥补暂存器不足。但能否迎刃而解,笔者二话不说,打上大大的问号。

其实很多重要观念,早已陈述于先前《一窝疯“人工智能芯片”前,你需要知道的几件关于 GPGPU 的事》,请有兴趣的读者有空多看几次。

纯软件的 3D 绘图管线是否可行?

行文至此,读者心中会产生疑惑:我哪管 x86 指令集适不适合,只要 Intel 真的有本事硬干出一颗真的拥有 1 Tera Flops 效能的 x86 处理器,光凭借著巨大的“赛猪公”数字,就充满了无限的想像空间和璀璨光明的未来。

这让笔者想起,十几年前,某份描述 PS3 心脏 Cell 处理器的专利被曝光后,“单芯片浮点 1 Tera Flops”成为看似伸手可及的愿景,就有不少人在猜测,PS3 会不会就此放弃独立显示芯片,整个 3D 绘图管线统统透过软件手段实作。

事后证明,还好 Sony 没有发疯,在 PS3 内,乖乖的摆了一颗 nVidia 从 G70 衍生而来的 RSX 显示芯片,而 PS3 搭载的 Cell 处理器,也仅为“完全体”的四分之一规模。

“纯软件 3D 绘图管线可不可行”是非常复杂且需长篇大论解释的题目,唯一可以确定的是,就算要纯软件实作,x86 指令集的适用性,也肯定远远不及 Cell 的设计(如果不嫌弃 SPE 内存搬搬乐很麻烦)。Intel 公布的 Larrabee 架构图标明了“Fixed Function”,Intel 看来也没有丧心病狂到把全部的希望,都寄托在一堆简单 x86 核心身上。

用 x86 处理器硬干出显示芯片是一回事,Intel 总得提供驱动程式给用户下载吧?很不幸的,那时候的 Intel 绘图驱动程式品质满糟糕,自己也承认这方面不如绘图芯片双雄,连“正统”GPU 驱动程式都写不好,变态至极的 Larrabee 难道会比较简单?还可支援“未来”的 3D API?无异缘木求鱼。

Larrabee 真正的杀手级应用是什么?

回归原点,Larrabee 真正的优势,在于结合 x86 指令集的巨大软件资源,与 Intel 的高效率编译器,进军高效能运算应用。

姑且不论 Larrabee 能否实现单芯片 1 Tera Flops 的效能表现,Intel 的确颇有机会藉 Larrabee,大举入侵原本由特化 RISC 处理器独领风骚的超级电脑市场,如 IBM 的 BlueGene。

事后证明,Intel 误打误撞走上一条正确的道路,只不过到头来,不得不脱下裤子跟 nVidia 拼了。

国王的芯片

Intel 在 2008 年积极宣传 Larrabee,不仅与显卡制造商洽谈产品案,同时也设法说服 Sony、任天堂和微软,使用 Larrabee 打造新一代游戏机。江湖传言,时任 SCEI 代表取缔役社长、现任 Sony 首席执行官的平井一夫,曾受邀至 Intel 总部整整被洗脑了一周,差点决定采用 Larrabee 为 PS4 的心脏。

但时程一再延宕,才是 Larrabee 最大的罩门,原先预定 2008 年提供样品、2009 年上市,却整整延后了一年,偏偏 2009 到 2010 年这段期间,又是 nVidia、AMD 开始 GPGPU 硬件规格熟成期“顶上决战”的起跑点,Intel 只能默默站在一旁看戏。

结果 2009 年 11 月 4 日,Intel 正式宣布 Larrabee 不会有消费性绘图产品问世,变相判了“软件实现一切昔日硬件实作功能的梦幻个人电脑 x86 处理器架构显卡”不可重新上诉的唯一死刑。

2010 年 5 月 25 日,Intel 透过官方部落格,昭告天下,Larrabee 也不会做为图形处理器,而是转进高效能运算市场,与 nVidia 的 Tesla 等专业运算卡正面较量。

同场加映:2008 年,已经和 AMD 长达 3 年合作关系的梦工厂(DreamWorks),转向与 Intel 合作,改用 Nehalem 微架构处理器,搭配 Larrabee 专业绘图卡,做为新世代的动画绘制硬件平台,还由公司高层出面解释琵琶别抱的缘由。让人满好奇 Larrabee 转职为“国王的芯片”后,这档惨剧最后如何收尾。

骑士行进曲:再次放弃独立显卡市场,转战高效能运算最佳化的整合众核架构

后来就是我们熟知的 MIC 发展史,一连串悠扬的“骑士行进曲”,然后 Intel 其余的研究案,像 48 个 x86 核心“单芯片云端电脑”和 80 个 96 位元宽度 VLIW 核心组成的 1 Tera Flops 单芯片,在此就先束之高阁了:

  • 2010 年,连同 Larrabee 图形处理电路都一并继承,32 核、45nm 制程的“Knights Ferry”为内部验证概念的研发案。
  • 2012 年,第一世代,50 核、22nm 制程、只能当外接运算卡的“Knights Corner”则是 Xeon Phi x100 品牌的首发,也是 MIC 首度接受市场的考验。
  • 2016 年,第二世代,72 个崭新 Silvermont 核心、14nm 制程、结合 AVX-512 指令集与高效能嵌入式内存,并不再保留 Larrabee“绘图遗产”的 Xeon Phi x200 系列“Knights Landing”,完备为可兼具独立运算平台与外接运算卡双重用途的产品,Skylake-SP 引进的芯片内网状网络(Mesh Network),也是这时的成果。
  • 2017 年,以 Knights Landing 为基础,针对人工智能深度学习最佳化的衍生品“Knights Mill”,在 IEEE HotChips 29 正式发表。
  • 10nm 制程的第三世代“Knights Hill”,Intel 的超级多核骑士越爬越高,希望不会不小心摔下来。

我相信胸怀大志的电脑玩家,内心一定会有一股“有为者亦若是”的冲动:

当年无缘一亲芳泽 3dfx 末代产品 Rampage,网络仅流传几张初版芯片的开机照片,好遗憾,假如可以弄到一张 Larrabee 显卡,装在自己的电脑跑跑看,一定很酷。天啊,用 x86 处理器做的显卡耶!

即使有 87% 的概率,跑起来慢得要命。

(首图来源:Intel)

延伸阅读:

  • 【x86 兴衰史】为何 AMD 近十年 x86 CPU 打不过 Intel?战局会改观吗?
  • 一窝疯“人工智能芯片”前,你需要知道的几件关于 GPGPU 的事
2019-03-22 19:30:00

标签:   游戏头条 资讯头条 ggamen科技资讯 ggamen科技 ggamen科技资讯头条 科技资讯头条 ggamen游戏财经 新闻网 科技新闻网 科技新闻 ggamen ggamen游戏新闻网 科技新闻 科技新闻网 新闻网 ggamen游戏财经 科技资讯头条 ggamen科技资讯头条 ggamen科技资讯 游戏头条 ggamen ggamen游戏新闻网 科技新闻 科技新闻网 新闻网 科技资讯头条 ggamen科技资讯头条 ggamen科技 ggamen科技资讯 游戏头条
0