CANN 5.0黑科技解密 | 算力虚拟化,让AI算力“物尽其用”
摘要:算力虚拟化技术对消费者而言,可有效降低算力的使用成本,对于设备商或运营商而言,则可极大提升算力资源的利用率,降低设备运营成本。
为什么要做算力虚拟化
近年来,人工智能领域呈井喷式发展,算力就是生产力,以AI集群为基础的人工智能计算中心在国内多点开花,为政府、企业及个人,提供了一种新的城市公共资源,成为了智能世界的“黑土地”。
算力资源共享势必会带来资源分配问题,无论是人工智能计算中心这种大型AI基础设施还是AI计算卡这种小型AI计算资源,都承载着用户多样化的AI算力诉求。
比如,在某些算力要求不高的场景下,AI模型在训练或推理时并不需要占用整张AI计算卡,希望更低的资源配置满足要求,比如1/4切片;再或者,在教学场景,一台AI服务器(可由单张或多张计算卡组成)希望可共享给整个班级使用。
借助虚拟化技术可轻松应对以上问题!
我们将整卡或整机的计算资源虚拟化为多个虚拟计算设备,并在上面部署不同的虚拟机或容器,分别运行AI训练或推理应用服务。
对消费者而言,可有效降低算力的使用成本,对于设备商或运营商而言,则可极大提升算力资源的利用率,降低设备运营成本。
业界常见虚拟化技术
业界常见的虚拟化技术有「基于时间分片」和「基于计算实例隔离」。
举个例子,三胎政策来了,未来几年,妈妈们可能会面临同时应付三个神兽的情况,老大要辅导作业,老二要读绘本,老三要喝奶…先忙谁都有意见,怎么办?
遇事不要慌,坐等天塌是没用的,基于时间分片的虚拟化技术为三胎妈妈提供了友好的解决方案,让每个娃都不会等太久,雨露均沾,不偏不倚:
这实际上是对计算资源从时间层面上划分,与CPU进程调度类似,各任务进程按时间切片占用全部的物理设备资源。
而基于计算实例隔离的虚拟化技术,是对计算资源本身的直接划分,正如文章开头的举例,老师在教学时,将一台AI服务器划分成N个虚拟组并做好安全隔离,然后共享给整个班级使用,使得每个学生都能独立使用,互不干扰,实现多个虚拟机实例共享同一硬件资源。
显而易见,两种虚拟化技术均能有效提升算力资源利用率,但并不是天衣无缝。
基于时间分片,无法做到AI任务之间的安全隔离;而基于计算实例分片,在目前市面上支持的切分粒度不够细,不能满足用户更高规格的切分诉求。
而华为提供的AI算力虚拟化技术,支持足够细致的切分粒度,且在各个虚拟设备间可做到足够安全的相互隔离,无论从切分粒度还是安全角度来说,都要更胜一筹!
下面我们就来看看,华为是怎样做到的。
华为AI算力虚拟化技术解读
众所周知,昇腾910是华为推出的一款具有超高算力的AI处理器,它集成了32个达芬奇架构的AI Core计算引擎,可高效执行矩阵、向量计算密集的算子任务,八位整数精度(INT8)下的性能达到640 TOPS,16位浮点数(FP16)下的性能达到320 TFLOPS。
单片昇腾910 AI处理器提供的算力如此之大,为了使其“物尽其用”,必须充分利用好虚拟化技术,将硬件的计算资源利用到极致。
CANN作为AI领域的异构计算架构,不仅能充分做好本职工作——极大程度释放硬件性能,为AI应用提供强大的算力支持,还在最新的5.0版本中,借助“基于AI Core切分的算力虚拟化技术”,最高可支持切分成32个分片,充分提升了硬件的资源利用率。
下图是CANN 5.0的算力虚拟化框架:
基于该框架,可支持虚拟机、容器的单一或混合部署,并能支持不同类型算力单元的划分,实现算力、内存、带宽的灵活切分、隔离。
下表是昇腾910支持的基于AI Core切分的算力虚拟化典型配置:
比如,教学场景下,有人算力诉求小,有人算力诉求大,基于AI Core切分的算力虚拟化技术,能够将一片昇腾910 AI处理器进行灵活切分,以匹配开发者多样化的算力诉求:
算力就是智能时代的粮草,半丝半缕弥足珍贵,正是得益于CANN超小粒度的算力切分机制,让小算力场景下算力分配更加合理,宝贵的计算资源才能得到更加充分的利用。
CANN在实现算力切分的同时,也实现了各个虚拟设备间的安全隔离,包括:
- 支持虚拟设备间内存隔离:
通过算力配置,实现HBM、DDR等内存的自动切分和隔离。
- 支持虚拟设备间的数据隔离
通过虚拟设备的标识,实现用户数据按照虚拟设备自动处理和隔离。
- 支持虚拟设备间的业务故障管理隔离
各个虚拟设备的故障信息反馈给对应的虚拟机或容器。
除了支持对单个昇腾910 AI处理器按照AI Core级别进行算力切分,CANN还支持在搭载多个昇腾910 AI处理器的AI Server或集群系统中,按照昇腾910 AI处理器维度做算力划分。
从技术角度看,CANN 5.0的算力虚拟化方式切分更细致、隔离更安全,给予了行业开发者更多选择;
从性能角度看,虚拟化和非虚拟化场景下性能持平,提升灵活性的同时,也妥善保证了用户体验不打折!
写在最后
CANN 5.0在算力虚拟化方面做出的努力,可有效降低管理成本,提高系统利用率和安全性。
自此,云端个人用户或者小企业客户,只用按需购买资源和算力,即可以最低成本完成AI应用部署。
未来的智能世界里,AI一定是人人皆可得的通用技术,算力也必然是人人皆可用的平民化资源。
借力于CANN 5.0,AI正在逐步成为大家“用得起”的普惠AI。
未来不远,已在路上,你准备好了么?
CANN 5.0黑科技解密 | 算力虚拟化,让AI算力“物尽其用”的更多相关文章
- CANN5.0黑科技解密 | 别眨眼!缩小隧道,让你的AI模型“身轻如燕”!
摘要:CANN作为释放昇腾硬件算力的关键平台,通过深耕先进的模型压缩技术,聚力打造AMCT模型压缩工具,在保证模型精度前提下,不遗余力地降低模型的存储空间和计算量. 随着深度学习的发展,推理模型巨大的 ...
- 黑科技如何制造人类V2.0?
黑科技泛指人类尚未成熟但具有巨大潜力的科学技术,智能手机.大数据.扫码支付.电子地图等等都曾属于黑科技范畴,随着时间的推移,它们慢慢成熟,且展现出巨大的能力,影响人类进程,最终黑科技转变成人类伟大的创 ...
- Java黑科技之源:JVMTI完全解读
Java生态中有一些非常规的技术,它们能达到一些特别的效果.这些技术的实现原理不去深究的话一般并不是广为人知.这种技术通常被称为黑科技.而这些黑科技中的绝大部分底层都是通过JVMTI实现的. 形象地说 ...
- ACM: FZU 2105 Digits Count - 位运算的线段树【黑科技福利】
FZU 2105 Digits Count Time Limit:10000MS Memory Limit:262144KB 64bit IO Format:%I64d & ...
- [自己动手玩黑科技] 1、小黑科技——如何将普通的家电改造成可以与手机App联动的“智能硬件”
NOW, 步 将此黑科技传授予你~ 一.普通家电控制电路板分析 普通家电,其人机接口一般由按键和指示灯组成(高端的会稍微复杂,这里不考虑) 这样交互过程,其实就是:由当前指示灯信息,按照操作流程按相应 ...
- C++的黑科技
周二面了腾讯,之前只投了TST内推,貌似就是TST面试了 其中有一个问题,"如何产生一个不能被继承的类",这道题我反反复复只想到,将父类的构造函数私有,让子类不能调用,最后归结出一 ...
- Android黑科技,读取用户短信+修改系统短信数据库
安卓系统比起ios系统最大的缺点,相信大家都知道,就是系统安全问题.这篇博客就秀一波“黑科技”. 读取用户短信 Android应用能读取用户手机上的短信,相信已经不是什么新鲜事,比如我们收到的短信验证 ...
- iOS 关于UITableView的黑科技
UITableView是我们最常用的控件了,今天我就来介绍一些关于UITableView的黑科技和一些注意的地方. 1.修改左滑删除按钮的高度 左滑删除这是iOS最先发明的,之后安卓开始模仿. ...
- Cnblogs关于嵌入js和css的一些黑科技
#pong .spoiler{cursor:none;display:inline-block;line-height:1.5;}sup{cursor:help;color:#3BA03B;} Pon ...
- 微软黑科技强力注入,.NET C#全面支持人工智能
微软黑科技强力注入,.NET C#全面支持人工智能,AI编程领域开始C#.Py--百花齐放 就像武侠小说中,一个普通人突然得到绝世高手的几十年内力注入,招式还没学,一身内力有点方 Introducin ...
随机推荐
- nginx防盗链+flv.js拉流地址防盗
需要此版本nginx的私信留邮箱,支持http-flv,支持rtmp,支持secure_link nginx.conf配置: c#后端生成链接 结果:
- 如何借助python第三方库存取不同应用程序的用户名、密码
在之前的一系列文章中,小爬分享了很多用Pywin32.uiAutomation.sap Gui Script等技术实现应用程序或者Web网站(如SAP.Excel.outLook邮件系统.OA系统)的 ...
- P9580 「Cfz Round 1」Wqs Game 题解
题目链接 挺好的博弈论题,这是一个跟官方题解不太一样的做法. 遇到这种组合游戏可以先考虑逆推胜负,把握一下规律,我们先从一个区间的胜负判断开始入手. 考察区间中最后一个数字的从属关系,如果它属于弈,因 ...
- 高性能渲染——详解Html Canvas的优势与性能
本文由葡萄城技术团队原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 一.什么是Canvas 想必学习前端的同学们对Canvas 都不陌生,它是 ...
- 阿里Java一面,难度适中!(下篇)
上一次因为文章篇幅和个人精力有限的原因,只分享了淘天的前 6 道题及其答案(点击访问上一篇).接下来,咱们把其他几道题面试题及答案也分享给大家. 1.公司简介 淘天集团就是"淘宝" ...
- Net 高级调试之七:线程操作相关命令介绍
一.简介 今天是<Net 高级调试>的第六篇文章.上一篇文章我们说了值类型,引用类型,数组等的内存表现形式.有了这个基础,我们可以更好的了解我们的程序在运行时的状态,内存里有什么东西,它们 ...
- 大白话说Python+Flask入门(三)
写在前面 今天状态很不好,我发现学这部分知识的时候,会出现溜号或者注意力无法集中的情况. 我能想到的是,大概率是这部分知识,应该是超出了我现在的水平了,也就是说我存在知识断层了,整体感觉真的是一知半解 ...
- 吉特日化MES-日化生产相关设备区分
在化妆品生产过程中约到各种各样的设备,对日化生产设备做一些简单的整理汇总,便于学习(其中设备根据其所在的产品以及领域会有一定的不同) 从产品的角度可以将产品划分为: (1) 乳化剂类产品 (2) 分类 ...
- 5分钟搞懂Kubernetes:轻松理解所有组件
之前我曾经提到了一系列关于服务网格的内容.然而,我意识到有些同学可能对Kubernetes的了解相对较少,更不用说应用服务网格这个概念了.因此,今天我决定带着大家快速理解Kubernetes中的一些专 ...
- CISC与RISC