训练千亿参数模型的法宝,昇腾CANN异构计算架构来了~
摘要:盘古的训练以「昇腾AI处理器」为基座,同时借助了「CANN 异构计算架构」,让硬件算力得以充分释放,大大缩短了训练时间!
2021年4月,“华为云盘古大模型”一炮走红AI人工智能领域。
如果你问:明明明明明白白白喜欢他,但他就是不说,白白喜欢谁?
你的同伴可能还要犹豫3秒钟,而盘古却能轻松地回答出:明明!
诸如此类的「中文同词不同义」的快速语义识别也仅仅是它的雕虫小技而已。
领先的语言理解和模型生成能力,这个大网红瞬间被贴上了“最接近人类中文理解能力”、“全球最大中文语言(NLP)预训练模型”各类标签。
标签不是白帖的,在AI领域,大智慧就意味着大模型,他背后的“千亿参数”、“TB 级内存模型”绝对是他成功的法宝!
模型大,意味着数据也大,你想到如何训练出这样大的模型了么?
盘古的训练以「昇腾AI处理器」为基座,同时借助了「CANN 异构计算架构」,让硬件算力得以充分释放,大大缩短了训练时间!
什么是CANN?
以提升用户开发效率和释放昇腾AI处理器极致算力为目标,昇腾CANN(Compute Architecture for Neural Networks)是华为针对AI场景推出的异构计算架构。它对上支持业界主流前端框架,向下对用户屏蔽系列化芯片的硬件差异,以丰富的软件栈功能满足用户全场景的人工智能应用诉求。
当前CANN已经发布到3.0的版本,统一编程架构,同时支持推理+训练的端、边、云全量场景,实现三大使能。
使能全场景:通过支持业界主流AI框架,支持14+种主流操作系统,实现一次开发,全场景各种硬件形态和运行环境的灵活部署。
使能极简开发:通过统一编程接口AscendCL(Ascend Computing Language),为开发者屏蔽底层处理器的差异,支持开发者只需要掌握一套API,就可以全面应用于昇腾全系列芯片+推理、训练全场景。
使能极致性能:通过软硬协同优化,亲和昇腾的图编译技术,以及超过1200个高性能算子,来释放昇腾芯片的澎湃算力。
CANN的开放能力:
CANN为开发者提供算子开发、模型开发、应用开发的全流程开发体验,可覆盖全场景应用。
- 算子开发
- DSL语言开发接口:提供了一套基于内存的开发接口,处理器上的指令映射和调度是自动实现的。开发者仅需要关注算子的数学逻辑计算,不需要了解硬件细节,即可开发出高性能的算子。根据统计可以满足60%以上算子开发需求。
- TIK语言开发接口:提供了一套比较完备的基于处理器内部Buffer可见的编程语言,开发者可以自行决定搬进搬出数据量的大小,从而充分发挥芯片的能力,提升开发算子的性能。
- 模型开发
- 支持多种模型开发框架MindSpore,TensorFlow, PyTorch, ONNX 等
- 支持通过标准化的Ascend IR(Intermediate Representation)接口隔离上层框架差异,进行直接构图和模型开发
- 应用开发
- 提供一套标准的AscendCL编程接口,提升用户APP编程效率
CANN的硬核技术:
- 高性能算子库:支持包括TensorFlow、Pytorch、Mindspore、Onnx框架在内1200+算子,开发者直接基于内置算子即可开发模型。
- 自动融合技术: 支持基于算子、子图、SCOPE多维度的自动融合,支持动态DSL融合,可有效减少计算节点,缩短计算时间,让昇腾AI处理器瞬间加速。
- 异构部署调度框架:充分利用昇腾芯片的异构执行单元,将不同的计算任务分配给最合适的计算引擎,高效协同异步流水,提升计算任务整体效率。
- 高效的内存生命周期管理算法:兼顾内存的充分复用以及数据交换的效能,实现资源与效率的均衡。
- 预置的业界主流模型库:华为昇腾Model Zoo提供100+主流模型的代码以及相应的调优参数example,为开发者提供货架式的参考实现,详细信息参见:https://www.hiascend.com/software/modelzoo
- 高性能的图下沉执行框架:将所有计算下沉到芯片,减少Host CPU与芯片之间的交互时间,实现高性能的训练和推理。
- 高性能动态图调度:支持基于异步流水的单算子执行框架,支持灵活的H2D、D2H交互,解决PyTorch等框架下动态图模式的高性能运行问题。
- 业界领先的智能调优:支持基于强化学习、遗传算法、CostModel等多种智能调优算法,提供算子级或者图级调优选择,为用户提供自动的极致性能调优体验。
CANN的5.0版本会给你带来更多想象,了解更多信息,请访问昇腾社区。
训练千亿参数模型的法宝,昇腾CANN异构计算架构来了~的更多相关文章
- 千亿参数开源大模型 BLOOM 背后的技术
假设你现在有了数据,也搞到了预算,一切就绪,准备开始训练一个大模型,一显身手了,"一朝看尽长安花"似乎近在眼前 -- 且慢!训练可不仅仅像这两个字的发音那么简单,看看 BLOOM ...
- DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍 1. 概述 近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮. 这场风潮对数字世 ...
- 横瓜先生如何用MDB和XLS等低性能数据库来处理千亿级数据量。
横瓜先生如何用MDB和XLS等低性能数据库来处理千亿级数据量. 横瓜先生曾经用ACCESS做数据库,开发出高性能CMS来处理过TB级的文本数据量,任何请求都可以在10MS内完成,基本就是硬盘延迟的时间 ...
- 闲聊 “今日头条Go建千亿级微服务的实践”
背景 今天跟同事偶然看到<今日头条Go建千亿级微服务的实践>文章,故做了一些探讨,与大家分享下,也欢迎大家多多共同探讨!. 其他资料: 如何理解 Golang 中“不 ...
- K2签约龙光地产,为集团实现“千亿目标”保驾护航
随着房地产行业步入成熟期,行业整合及转型速度变快,房企要在数字经济的背景下实现稳步发展,企业信息化建设是其中的重要一环.此次龙光地产选择与K2携手,用统一流程平台为集团保驾护航,向实现千亿目标迈进. ...
- TOP100summit 2017:投资千亿成立达摩院,揭秘阿里在人工智能领域的探索
今天上午,阿里巴巴云栖大会在杭州开幕,第一条重磅消息是阿里首席技术官张建锋宣布成立达摩院,在全球各地建立实验室,3年内投入千亿在全球建立实验室.和高校建立研究所.建立全球研究中心等事务. 该院由全球实 ...
- 千亿级SaaS市场:企业级服务的必争之地
2015年企业级服务融资案例数量飙升,大额融资频现.不少企业纷纷涉足企业级服务市场,其中,以IM为主打的阿里钉钉,以企业CRM为主的纷享逍客高调进入人们的视野,以产品管理为核心.集成多种工具服务的iC ...
- 微博轻量级RPC框架Motan正式开源:支撑千亿调用
支撑微博千亿调用的轻量级 RPC 框架 Motan 正式开源了,项目地址为https://github.com/weibocom/motan. 微博轻量级RPC框架Motan正式开源 Motan 是微 ...
- 今日头条Go建千亿级微服务的实践
今日头条Go建千亿级微服务的实践_36氪 http://36kr.com/p/5073181.html
- 雅虎日本如何用 Pulsar 构建日均千亿的消息平台
雅虎日本是一家雅虎和软银合资的日本互联网公司,是日本最受欢迎的门户网站之一.雅虎日本的互联网服务在日本市场占主导地位. 下图从三个维度显示了雅虎日本的经营规模.第一个是服务数量,雅虎日本提供上百种互联 ...
随机推荐
- 又拍云+PicGo搭建图床教程
具体搭建方法 https://blog.csdn.net/qq_41684621/article/details/114068076 这里有个细节 注意这里一定要加上 http:// 否则在自动生成 ...
- GCD Inside: GCD 宏
1 __OBJC__ __OBJC__宏的定义在 GCD 源码中找不到,它定义在 LLVM 的源码中: // initPreprocessor.cpp static void InitializeSt ...
- .NET6中的await原理浅析
前言 看过不少关于 await 的原理的文章,也知道背后是编译器给转成了状态机实现的,但是具体是怎么完成的,回调又是如何衔接的,一直都没有搞清楚,这次下定决心把源码自己跑了下,终于豁然开朗了 本文的演 ...
- 《最新出炉》系列初窥篇-Python+Playwright自动化测试-29-处理日历时间控件-中篇
1.简介 上一篇的日历时间控件宏哥介绍的比较传统也是很常见的.宏哥不能说它很low,但是相比较一些高端.大气.上档次的日历时间控件,结果就一目了然了:确实很low. 2.被测网站 2.1高大上日历时间 ...
- 按既定顺序创建目标数组 (leetcode181周赛T1)
给你两个整数数组 nums 和 index.你需要按照以下规则创建目标数组: 目标数组 target 最初为空. 按从左到右的顺序依次读取 nums[i] 和 index[i],在 target 数组 ...
- ArmSoM-W3应用开发之安装docker
1. 简介 RK3588从入门到精通系列专题 开发板:ArmSoM-W3 Kernel:5.10.160 OS:Debian11 本⽂介绍ArmSoM-W3在Debian11下如何安装使用docker ...
- Jdk_HashMap 源码 —— hash(Object)
Jdk 源码 HashMap 的源码是在面试中考的算是比较多的,其中有很多高性能的经典写法,也值得多学习学习. 本文是本人在阅读和学习源码的过程中的笔记(不是教程),如有错误欢迎指正. Jdk Ver ...
- 视觉差缓动效果的轮播--React版
React实现视觉差效果缓动轮播 效果如下(图片帧率低看起来有点卡顿,看个大概就行): 分享一下思路: 1.正常引入一个轮播组件(站在巨人肩膀省时省力),去除指示点.引导箭头等不需要的元素,有些组件支 ...
- 基于TensorFlow 2与PaddlePaddle 2预测泰坦尼克号旅客生存概率的比较
目录 1,程序比较 2,训练过程对比: 3,训练结果对比 AI框架经过大浪淘沙之后,目前真正能够完整用于生产.科研.学术的只剩下了谷歌.脸书.百度三家的框架,本文通过一个泰坦尼克号旅客生存概率预 ...
- 【结对作业】 第一周 | 学习体会day05
实现了单条地铁线路的直达 进行了页面的优化,实现了侧边栏功能 并且对第二天(今天)的任务进行了规划.