当前位置: 首页 > 编程日记 > 正文

王炸不断,半导体巨头们到底在打什么牌?

作者 | 马超  责编 | 欧阳姝黎

出品 | CSDN博客

头图 | 下载于视觉中国

最近整个半导体行业实在风起云涌,IBM 推出了 2nm 的芯片,苹果春季发布会上搭载 M1 的 iPad Pro 再度炸场、四月中旬 ARM 推出了新一代的 ARMv9、英特尔也拿出了最的至强三代 Ice Lake-SP,四月初英伟达推出号称能将 AI 算力提升 10 倍的 CPU 芯片 Grace,年初 AMD 的 ZEN3 系列芯片也正式亮相。接下来,笔者带大家看一下半导体的巨头们到底打的什么技术牌。

指令集-RISC vs CISC宿命的对决

我们在聊龙芯的时候,有热心的读者就说希望把 CISC 的 X86 指令与龙芯 LoongArch 进行对比,这次我们就来详细聊一下这方面的话题,目前 RISC 阵营的最强处理器苹果 M1 其之所以性能如此劲爆,8 路的译码器提供了强大的助力作用。我们根据代码来看一下这方面的情况。

Int a;Int test(void){Return a;}

上述代码在 X86 的处理上,反编译之后得到的汇编语言如下,具体反编译的过程请大家参考《龙芯自主指令集到底强在何处》这里不加赘述了。

 test o: file format elf64-x 86-64Disassembly of p. text:0000000000000000<test>:Int a;int test(void)(0:55 push %rbp1:48 89 e5  mov %rsp %rbreturn a:4:8b 05 00 00 00 00 mov 0x0(%rip),%eax #a <test+Oxa>}a: c9 leaveqb: c3    retq

对应 ARM 平台的汇编指令如下:

00000000 <test>: int a; int test(void) {return a;} 0: e52db004 push {fp} ; (str fp, [sp, #-4]!)4: e28db000 add fp, sp, #08: e59f3010 ldr r3, [pc, #16] ; 20 <test+0x20>c: e5933000 ldr r3, [r3]10: e1a00003 mov r0, r314: e28bd000 add sp, fp, #018: e49db004 pop {fp} ; (ldr fp, [sp], #4)1c: e12fff1e bx lr20: 00000000 .word 0x00000000

可以看到 X86 的汇编语言相对比较短,因为 CISC 一条指令可以完成比较复杂的任务,不过本质上讲这段程序在 X86 的执行过程就是由 push %rbp 来构造栈,然后就可以把%eax 赋值给结果就完成了。

但是 X86 这样的做法也有着反噬,我们可以把 push move 这些指令左边的数字简单为机器指令,可以看到 X86 为代表的 CISC 是不定长的,而龙芯 LA64 和 ARM 是定长的,对比 CISC 的架构来看现代的 RISC 芯片一般都是以流水线机制运行。像 AMD 最新的 ZEN3 系列 CPU,也只配备了 4 个译码器,因为不定长所以 X86 的 CPU 必须对可能的编码开始位置同时进行译码,并处理很多的错误,我们在前文也介绍过计算机的运行就怕分支预测,一旦预测不准,就会在流水线上产生气泡,这所带来的惩罚效应惊人。

多路译码的关键在于以 ARM 为代表的 RISC 指令集基本上是定长的,这也是苹果 M1 能有 8 路译码器的原因,当然从结果上看,ZEN3 还是要比 M1 略强一点的,但是 ZEN3 的译码器主频是 5Ghz,而 M1 只有 3.2Ghz,个人认为苹果之所以没有将 M1 的主频调教的很高还是出于控制能耗原因,而不代表他不能这么做。因此从这个角度来看未来在桌面领域 X86 为代表的 CISC 恐怕前景不妙。

多方安全计算-软硬结合才是趋势?

之前笔者曾经写过一篇《ARM V9 到底强在哪》(https://blog.csdn.net/BEYONDMA/article/details/115494678)曾经指出过 ARM V9 的有一项重要的新特性就是安全计算指令集,但是当时笔者并不太看好这项技术,上周F发布的《为什么谷歌被骂上热搜一点也不冤,详解 FloC 背后联邦计算》也指出 FloC 其实是一种联邦计算技术。

说起安全计算这项技术,他的历史已经非常久远了,这个问题起源于百万富翁问题,假如两个百万富翁街头邂逅,他们都想炫一下富,比比谁更有钱,但是出于隐私,都不想让对方知道自己到底拥有多少财富,如何在不借助第三方的情况下,让他们知道彼此之间到底谁更有钱?针对百万富翁问题上世纪80年代,清华大学的姚期智院士提出了解决方案,并因此获取了图灵奖,从理论层面证明了多方可信计算问题的可行性。

其实英特尔安全计算指令集的 SGX 技术早在几年前就已经实现了,这是一种从硬件角度打消用户疑虑的技术,安全计算指令集实际是给计算机加了一个安全密室,即使拥有最高权限的特权管理员也不能进入安全密室,更无法在安全密室前布放监控。安全密室与外界的一切交互全部要经过加密并进行完整性校验。

但当时 SGX 能创建的内存空间只有 128M,而目前的 AI 机器学习模型动辙要上百 M,大的甚至要几十上百个 G,当时的 SGX 根本放不下这样的模型,无法在多方安全计算中使用。不过这次英特尔至强三代的 Ice Lake-SP 和即将到来的 ARM V9 中都可以支持 TB 级的安全空间,可见安全计算也是巨头们的一个重要发展方向。但在实践层面多方安全计算依然困扰业界,如果两个富翁只比一次那么一切好说,但是如果有恶意假扮者,不断和同一个富翁A比富,那么富翁A的信息泄漏是迟早的事。

笔者看到目前比如像蓝象智联的 GAIA CUBE 等联邦计算平台,就有将区块链技术与硬件安全计算结合的方案,避免同一用户的信息被不断的碰撞学习,保障数据安全性,做到最终数据可用不可见,打破数据孤岛。软硬结合实现安全联邦计算可能是一个今后业界发展的重要趋势之一。

AI 算力-可变长 SIMD VS 内存-显存通道提速

我们看到最近亮相的英特尔的至强三代 Ice Lake-SP 和安谋的 ARM v9 以及英伟达的首款 CPU 处理器 Grace,都把宝押在了 AI 算力方面。不过显然英伟达选择的技术路线与英特尔以及 ARM 不同,虽然 Grace 是基于 ARM 的,但是黄教主的方案是打通内存与显存之间的数据交换瓶颈。

正如我们刚才所说 ARM 等 RISC 处理器在指令预测等方面同天然比 X86 更有优势,能耗也比 X86 更低。当然这些都是 ARM 相对于 X86 的传统优势,本次 Grace 最大的创新点在于把 CPU 与 GPU 之间的通信速度提升了近 10 倍。根据黄仁勋的说法,“这是一万名工程人员历经几年的研发成果,旨在满足当前世界最先进应用程序的计算需求,其具备的计算性能和吞吐速率是以往任何架构所无法比拟的。”

CPU 和 GPU 的通信速度的重要性,也可以用苹果 M1 的例子来加以说明,我们知道苹果 M1 显卡与内存加在一起只有 16 个 G,对比上一代 Mac PRO 内存 128G,光是显存都有 16G,不过搭载 M1 的入门版 Mac 在进行图像处理等需要 CPU 与 GPU 进行协同的运算任务时,至少比上一代顶配的 Mac 性能高出近一倍。其中的秘决就是将内存与显卡进行统一管理,从而大大提高了 CPU 与 GPU 的通信效率。Grace 体系中 GPU 核心与 CPU 核心之间的通信不需要 CPU 的调度,也不需要占用数据总线的带宽,之前 CPU 必须将数据从其内存的区域复制到 GPU 使用的区域,而在 Grace 的加持下,CPU 只需要告诉 GPU 在内存的某位置有 30MB 的向量数据,然后就可以去做其它事了,GPU 则可以通过 Grace 复制通道迅速开始计算任务。

同时我们把目光转移到 Grace 发布上,英伟达还拿出了很多软件产品,比如 Transformers 训练框架 NVIDIA Megatron、Morpheus 数据中心安全平台、新一代人工智能对话机器人 NVIDIA Jarvis、推荐系统是 NVIDIA Merlin、隐私保护加强的 AI 辅助套件 NVIDIA TAO,今后软硬结合的一体化计算框架可能也会成为趋势。

云计算的激烈争夺

在英伟达发起了收购 ARM 的要约之后,必然预示云计算市场将是各大巨头重要的争夺方向。

在云计算这种多租户的场景下,可能有很多用户依靠虚拟化技术使用同一 CPU 工作,这就要求不同用户使用的内存要严格隔离,因此苹果 M1 以及英伟达 Grace 将内存与显存混用打通 CPU 与 GPU 的方式不利于虚拟化的加速。基于上述原因,目前英伟达和苹果 M1 的算力提升还暂时影响不到云计算市场,目前英特尔在云计算方面还是占据不少优势。据笔者了解到的情况看,在最新的至强三代 Ice Lake-SP 系列中中有两款专为云计算虚拟机和容器进行优化的型号,其中

P后缀:专为虚拟化层提供优化,为虚拟机提供更高的频率。

V后缀:代表为 SaaS 优化,针对高密度、低功耗容器环境,提高编排效率。

阿里云是目前使用至强三代比较多的国内云厂商之一。阿里云与英特尔同步发布的第七代 ECS 云产品,搭载的就是这款 Ice Lack,如果笔者所料不错的话,其小型号就应该是我们刚刚提到的 8358P 系列的芯片。

以上就是笔者对于最近半导体行业最新进展的一些解读,欢迎大家一起交流探讨。

更多精彩推荐  Python 爬影评,《悬崖之上》好看在哪里?
美国燃油“动脉”被黑客切断,网络安全走向哪里?专访山石网科热文 | 卷积神经网络入门案例,轻松实现花朵分类
AI 3D 传感器市场竞争白热化,中国掌握自主可控核心技术时不我待!小心!你家的 IoT 设备可能已成为僵尸网络“肉鸡”
点分享点收藏点点赞点在看

相关文章:

什么是软件定义数据中心

近年来&#xff0c;“云计算”已经成为一个被滥用的名称&#xff0c;现在几乎所有的IT公司的项目都用云计算来冠名&#xff0c;似乎贴上了“云”标签&#xff0c;立刻变得高大上起来。提到云计算&#xff0c;很多人第一反应都是&#xff0c;亚马逊的AWS服务&#xff0c;或者谷歌…

React Native常用组件之ListView

1. ListView常用属性 ScrollView 相关属性样式全部继承dataSource ListViewDataSource 设置ListView的数据源initialListSize number 设置ListView组件刚刚加载的时候渲染的列表行数&#xff0c;用这个属性确定首屏或者首页加载的数量&#xff0c;而不是花大量的时间渲染加载很…

Oracle中merge into的使用

http://blog.csdn.net/yuzhic/article/details/1896878 http://blog.csdn.net/macle2010/article/details/5980965 该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据. ORACLE 9i 中&#xff0c;使用此命令必须同时指定UPDATE 和INSERT 关键词,ORACLE 10g 做了…

C#运算符资料

☆C#的运算符定义只有四种形式:--------------------------------------- ①public static 返回类型 operator ?(单形参) ②public static 返回类型 operator ?(双形参) ③public static implicit operator 隐转目标类型(单源类型形参) ④public static explicit operator 显…

厉害了,网易伏羲三篇论文上榜 AI 顶会 ACL

近日&#xff0c;国际AI顶尖学术会议ACL 2021&#xff08;Annual Meeting of the Associationfor Computational Linguistics&#xff09;公布了论文录用结果。网易伏羲共有三项研究被本届ACL收录&#xff0c;内容包括自然语言生成、无监督文本表示学习等方向&#xff0c;相关技…

软件架构设计学习总结(1):标准Web系统的架构分层

1、架构体系分层图 在上图中我们描述了Web系统架构中的组成部分。并且给出了每一层常用的技术组件/服务实现。需要注意以下几点&#xff1a; 系统架构是灵活的&#xff0c;根据需求的不同&#xff0c;不一定每一层的技术都需要使用。例如&#xff1a;一些简单的CRM系统可能在产…

iOS 设置UILabel 的内边距

iOS 设置UILabel 的内边距 - (void)drawTextInRect:(CGRect)rect {UIEdgeInsets insets {0, 5, 0, 5};[super drawTextInRect:UIEdgeInsetsInsetRect(rect, insets)]; } 参考&#xff1a;http://stackoverflow.com/questions/3476646/uilabel-text-margin http://unmi.cc/uila…

从程序媛到启明星辰集团云安全总经理,郭春梅博士揭秘云时代安全攻防之道...

从无序中寻找踪迹&#xff0c;从眼前事探索未来。2021 年正值黄金十年新开端&#xff0c;CSDN 以中立技术社区专业、客观的角度&#xff0c;深度探讨中国前沿 IT 技术演进&#xff0c;推出年度重磅企划栏目——「拟合」&#xff0c;通过对话企业技术高管大咖&#xff0c;跟踪报…

javascript 异步实现方案

1、回调函数 fn1( fn2 ); 2、事件监听 fn1.on(done, fn2);function fn1() {setTimeout(function(){fn1.trigger(done);},1000) }3、发布-订阅 &#xff08;1&#xff09;fn2像“信号中心”订阅了done信号Jquery.subscribe("done", fn2);(2) fn1向信号中心发布信…

csc命令帮助

大家还是要常用用csc&#xff0c;个人感觉有时vs有不少不太方便的东西。C:/>csc /help |more Microsoft (R) Visual C# 编译器版本7.00.9254 [CLR version v1.0.2914] 版权所有 (C) Microsoft Corp 2000-2001。保留所有权利。 Visual C# 编译器选项…

利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(三)(网内首发超详细版)...

3.3 权限配置样例注意&#xff1a;* 权限配置文件中出现的用户名必须已在用户配置文件中定义。* 对权限配置文件的修改立即生效&#xff0c;不必重启svn。用户组格式&#xff1a;[groups] ,其中&#xff0c;1个用户组可以包含1个或多个用户&#xff0c;用户间以逗号分隔。版本库…

Java知识全面总结:并发编程+JVM+设计模式+常用框架+....

本文整理的Java知识体系主要包括基础知识&#xff0c;工具&#xff0c;并发编程&#xff0c;数据结构与算法&#xff0c;数据库&#xff0c;JVM&#xff0c;架构设计&#xff0c;应用框架&#xff0c;中间件&#xff0c;微服务架构&#xff0c;分布式架构等内容。同时也有作为程…

JPA主键生成策略

GeneratedValue&#xff1a; 为一个实体类生成一个唯一标识的主键(JPA要求每一个实体Entity,必须有且只有一个主键)。它有两个属性&#xff0c;分别是strategy和generator。 generator&#xff1a;默认为空字符串&#xff0c;它定义了主键生成器的名称&#xff0c;对应的生成器…

Silverlight 预定义颜色速查表

预定义颜色可以使用 SolidColorBrush 绘制&#xff0c;它使用预定义纯色。这可以是 Colors 的静态属性 (Property) 名称&#xff0c;也可以是指定为 XAML 属性 (Attribute) 值时直接作为字符串处理的另外一组颜色名称中的一个。有关已命名颜色表以及如何在代码中指定已命名颜色…

腾讯云TDSQL-A发布公有云版本 支持第七次全国人口普查等海量数据场景

5月18日&#xff0c;腾讯云发布首款全自研分布式分析型数据库TDSQL-A&#xff0c;全力应对海量数据实时分析需求。 这是腾讯云数据库在品牌升级后的首次新品发布&#xff0c;意味着腾讯云将这种多年积累的经验更加广泛全面地向社会行业开放&#xff0c;助力行业推进数字化进程…

Spring Boot 和 testNG 和 eclipse背景色

通过之前的博文&#xff0c;我们已经验证&#xff0c;Spring环境下完成access数据访问没有问题。下面我们直接在Spring环境下部署我们的升级项目。1.导入Spring BootSpring Boot是Spring的子项目&#xff0c;用来解决项目配置复杂性的问题&#xff0c;降低Spring的使用门槛使得…

免费丨AI内行盛会!2021北京智源大会带你与图灵奖和200+位大牛一起共话AI

数据在爆炸&#xff0c;AI在茁壮。从2012到2018年&#xff0c;深度学习模型的计算能力增长了30万倍&#xff0c;早已打破摩尔定律。可以预见的是&#xff0c;未来必然属于超大数据和超大模型&#xff0c;而破纪录的中文预训练生成语言模型智源“悟道2.0”发布在即&#xff0c;A…

LVM创建,缩减及快照备份

管理逻辑卷工具&#xff1a;LVM逻辑卷&#xff1a;灵活可动态存储的一种逻辑上的存储最底层需要通过工具变成“物理卷”&#xff1a;存储设备&#xff0c;Raid &#xff0c;分区等VG:&#xff08;1&#xff09;底层设备容量之和。&#xff08;2&#xff09;PE大小*数量卷组上面…

前端 排序算法总结

前言 排序算法可能是你学编程第一个学习的算法&#xff0c;还记得冒泡吗&#xff1f; 当然&#xff0c;排序和查找两类算法是面试的热门选项。如果你是一个会写快排的程序猿&#xff0c;面试官在比较你和一个连快排都不会写的人的时候&#xff0c;会优先选择你的。那么&#xf…

django 快速实现登录

前言 对于web开来说&#xff0c;用户登陆、注册、文件上传等是最基础的功能&#xff0c;针对不同的web框架&#xff0c;相关的文章非常多&#xff0c;但搜索之后发现大多都不具有完整性&#xff0c;对于想学习web开发的新手来说不具有很强的操作性&#xff1b;对于web应用来说&…

“云智一体”的全场景智能视频技术是什么?

全视频时代到来&#xff0c;各行各业对视频的应用、体验和效能提出全新升级需求&#xff0c;AI与云计算的发展则为智能视频进入新阶段注入充足动力。5月13日&#xff0c;百度智能云“云智技术论坛-智能视频专场”活动在北京举行&#xff0c;重磅发布了智能视频云3.0全景图。百度…

背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue...

原文:背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue[源码下载] 背水一战 Windows 10 (18) - 绑定: 与 Element 绑定, 与 Indexer 绑定, TargetNullValue, FallbackValue作者&#xff1a;webabcd介绍背水一战 Windows 10…

2-sat问题,输出方案,几种方法(赵爽的论文染色解法+其完全改进版)浅析 / POJ3683...

本文原创于 2014-02-12 09:26。 今复习之用&#xff0c;有新体会&#xff0c;故重新编辑。 2014-02-12 09:26&#xff1a; 2-sat之第二斩&#xff01;昨天看了半天论文&#xff08;赵爽的和俉昱的&#xff09;&#xff0c;终于看明白了&#xff01;好激动有木有&#xff01;终…

C#方法/函数

本节课向你介绍C#的方法&#xff0c;其目的是&#xff1a; 1.了解方法的结构格式2.了解静态和实例方法之间的区别3.学会实例对象的使用4.学会如何调用实例化的对象5.学会方法的四种参数类型的使用6.学会使用"this"引用以往&#xff0c;对于每个程序来说&#xff0c;所…

Python 的一万种用法:生成字符视频

作者 | ZackSock来源 | 新建文件夹X头图 | 下载于视觉中国前言在之前也写过生成字符视频的文章&#xff0c;但是使用的是命令行窗口输出&#xff0c;效果不是很好&#xff0c;而且存在卡顿的情况。于是我打算直接生成一个mp4的字符视频。大致思路和之前一样&#xff1a;Python2…

Codeforces 862B - Mahmoud and Ehab and the bipartiteness

862B - Mahmoud and Ehab and the bipartiteness 思路&#xff1a;先染色&#xff0c;然后找一种颜色dfs遍历每一个点求答案。 代码&#xff1a; #include<bits/stdc.h> using namespace std; #define ll long long #define pb push_back #define mem(a,b) memset(a,b,si…

C#表达式,类型和变量

本节课将介绍C# 语言的表达式&#xff0c;类型和变量。本节课要达到如下几个目的&#xff1a; 1.了解什么是"变量"2.学习C#的简单类型3.对C#表达式有个初步的了解4.了解什么是String类型5.学习如何使用数组"变量"仅仅是数据的存储位置。你可以把数据存放到…

张一鸣卸任CEO,立下10年之约,期望突破线性延伸

整理 | 寇雪芹头图 | 下载于视觉中国出品 | AI 科技大本营&#xff08;ID:rgznai100&#xff09;5月20日&#xff0c;字节跳动创始人张一鸣发布内部全员信&#xff0c;宣布卸任CEO&#xff0c;联合创始人梁汝波将接任这一职位。张一鸣在全员信中表示&#xff0c;“我决定卸任CE…

【译】使用Kotlin和RxJava测试MVP架构的完整示例 - 第1部分

原文链接&#xff1a;android.jlelse.eu/complete-ex… 最近我创建了一个playground项目来了解更多关于Kotlin和RxJava的信息。 这是一个非常简单的项目&#xff0c;但有一部分&#xff0c;我进行了一些尝试&#xff1a;测试。 在kotlin的测试上可能会有一些陷阱&#xff0c;而…

智能改变未来,创新引领世界,第二届深圳国际人工智能展暨智能制造创新高峰论坛盛大启幕!

2021年5月20日&#xff0c;由深圳市科学技术协会、深圳市商务局、深圳市福田区人民政府共同指导&#xff0c;深圳市科技开发交流中心、深圳市人工智能行业协会联合主办的2021第二届深圳国际人工智能展开幕式暨智能制造创新高峰论坛在深圳会展中心&#xff08;福田&#xff09;启…