• 我的订阅
  • 科技

算子开发到推理加速,一位00后开发者的“升级打怪”之旅

类别:科技 发布时间:2024-04-27 19:00:00 来源:砍柴网

来源 / Alter

两年多前,郑辉还是一个即将毕业的大四学生,每天沉迷在代码的世界里,忙着准备研究生复试,从未对AI有过太多想法。

没有人会想到,两年后的郑辉已经是一位资深的AI开发者,他独立开发的NonZero算子被合入异构计算架构CANN主线,参与开发的深度学习框架降低了大模型训练的门槛,目前正在做大模型分布式推理加速,希望可以帮助其他开发者在生产环境中高效部署在线推理服务。

在昇腾AI的生态里,像郑辉这样为大模型浪潮默默贡献自己力量的开发者不胜枚举。他们还不是世界的“主角”,却在用自己的方式改变着世界。

01 “导师安排的第一个项目”

时间回到2022年4月,因为优秀的笔试成绩,郑辉顺利进入到杭州电子科技大学的研究生复试。当导师问及有没有感兴趣的研究方向时,郑辉分享了自己解决Bug的经历,第一次接触到了分布式机器学习。

同样是在2022年4月,昇腾AI开发者创享日在西安举行,正式发布了“昇腾众智计划2022”,推出了包含算子、模型开发、系列创新应用在内的4000多个任务,杭州电子科技大学正是签约合作的高校之一。

刚进实验室的郑辉,由此被导师安排了第一个项目——使用C++开发NonZero算子与调优。

算子开发到推理加速,一位00后开发者的“升级打怪”之旅

深度学习算法由一个个计算单元组成,这些计算单元被称为算子,可以理解为实现特定运算逻辑的代码模块,比如文本生成、翻译、情感分析等任务。一个优秀的算子不仅可以提高模型的效率和性能,还能够降低模型的资源消耗,在相同的计算资源下完成更多任务。

因为算子在模型中扮演了重要角色,自己也是第一次做类似的项目,郑辉心里泛起了嘀咕:“我的能力够不够,最后能不能做好,会不会影响别人的进度?”向实验室的师姐请教后,郑辉“硬着头皮”接下了任务。

为了学习算子开发的知识,郑辉在B站上看了不少视频课程,发现昇思MindSpore上有详细的开发文档和现成的算子库,遇到不懂的问题可以直接和昇腾AI的工程师沟通,逐渐有了把项目做好的信心。

让郑辉印象深刻的是:“开发算子时看到代码里已经有一个for循环,不理解为何还要去实现for循环的并行,在我看来收益并不大。但昇腾AI的工程师告诉我,就算是一个微小的提升,在庞大的数据面前也会产生有价值的收益。”

经过近两个月的钻研,郑辉提交的PR被审核通过,通过引入Parallel.For循环实现了算子开多核,可以进行多线程提速,让昇思MindSpore的NonZero算子有着不逊于Tensorflow和Pytorch的精度,目前代码已合入CANN主线。

相较于最后的结果,郑辉认为自己从过程中获得了更大的价值:“算子开发是我的第一个项目,经过算子的需求分析、性能分析、开发、测试、性能优化等一整套开发流程,让我深入了解了大模型的内部运行机制,包括数据流、计算图和并行计算。更重要的是,让我有勇气去承担更大的项目,每次遇到困难时,总会劝自己试一试,不试试怎么知道自己不行,万一成功了呢。”

两个月的时间并不长,但让郑辉完成了从懵懂少年到“众智开发者”的蜕变,同时也印证了昇腾AI发起众智计划时的构想:通过汇聚产业界智慧和力量,加速基础软件创新突破,共促多样性计算产业发展和生态繁荣。

02 “难点在于找到应用场景”

喜欢琢磨事的郑辉,不想在象牙塔里做一个学术派,而是在项目中解决问题。在他的认知里,人工智能落地应用最大的难点已经不是技术实现,而是场景的选择,怎么让生成式AI在更多场景中发挥价值。

郑辉的想法并非没有道理,AI工程化早已是一个热门课题。

即使是谷歌这样的互联网“头羊”,AI科学家和工程师们也常常会遇到“开发一周,上线三月”的情况,需要对模型花费数个月的时间进行鲁棒性、数据时序穿越、线上线下一致性、数据完整性等各个维度的排查。能否为业务场景带来更好的效果、更大的价值,将是AI走进千行万业的关键。

除了算子、深度学习框架等基础开发,郑辉不愿错过任何一个将AI在场景中应用的机会。昇腾AI创新大赛2023的活动发起后,郑辉毫不犹豫地参与其中,甚至没有选择自己有过项目经历的昇思赛道,而是更有挑战性的应用赛道。

算子开发到推理加速,一位00后开发者的“升级打怪”之旅

“我在团队中是主要负责场景的选择,以及整个船舶监测系统平台的设计。像智慧海防监测这样的场景,对数据安全有着极高要求,特别适合运行在软硬件一体的国产生态上。所以我们基于昇腾算力平台,将AI应用于海洋渔船作业场景,通过预测渔船航行线路,来提高安全保障。”

不同于一些为了比赛而比赛的现象,昇腾AI创新大赛2023已经结束了半年,郑辉所在的小组仍在继续推进项目:“今年将不再局限于部分地区的港口,计划将沿海各省的数据都纳入范围,我们的目标是在全国沿海城市实现这个项目,通过整合更广泛的一个数据资源,为出海渔船构建一道隐形的安全防线。”

很多人说2023年是“生成式AI元年”,各行各业都在训练自己的大模型。可“大炼模型”终归只是AI走进产业第一步,在现实和智能之间,仍然横亘着一片鲜有人涉足的“荒海”,需要千千万万的开发者去扮演“渡舟”的角色,通过一个个落地应用的项目或产品,照亮千行万业的智能化之路。

正在读研二的郑辉,某种程度上让外界看到了中国AI的希望所在。

就像在“渔船航行线路”项目中,郑辉特意提到了后续的商业化问题:“我们可以和保险公司合作,在他们的风控体系中增加渔船的航行线路,在给渔船提供金融服务的时候,有一个更全面的风险分析。”

兴趣使然的开发者,总会有激情消退的时候;能看到商业机会的开发者,才会是理想的“渡舟”,最开始也许只是一条“木筏”,可只要找到了商业化的路径,“木筏”就会一步步进化成舢舨、帆船、货轮,载着更多场景驶向智能化的彼岸。

03 “让大模型的推理快起来”

因为算子开发的机会,郑辉踏入了人工智能的河流;因为昇腾AI创新大赛2023,郑辉认识到了场景应用过程中的种种痛点。曾经对AI“不太感冒”的大男孩儿,慢慢有了更多的想法,开始做一些更有挑战性的项目。

比如ChatGPT刚火的时候,郑辉就跑去问各种问题,发现ChatGPT的回答速度很慢,认为“这种体验感大大降低了用户的兴趣”。原因在于,基于Transformer的大模型具有多次迭代的特性,导致在推理方面存在负载不均衡、算力资源无法充分利用等问题,在大模型的实际使用中,推理速度往往成为制约性能的一大瓶颈。

过去一年多时间里,大模型训练始终是技术圈的焦点,其实推理加速比训练加速更难。训练加速主要受数据并行性和模型并行性的影响,而推理加速更多地受到模型结构、计算图优化、内存访问、实时性等方面的影响,需要在短时间内处理大量数据,而且要求极低的延迟。

为了解决大模型推理问题,华为2012实验室和杭州电子科技大学联合组建了“攻坚小组”。郑辉主动向导师请缨,参与了MindSpore Serving的研发,旨在帮助开发者在生产环境中高效部署在线推理服务。

不同于外界降低精度来提升推理速度的做法,郑辉的策略是实现并优化Fastserve论文,通过多级请求等待队列,将不同请求划分到不同的等待队列,实现抢占式调度用于降低请求延迟、饥饿调度用于唤醒低优先级请求、主动式Kvcache管理用于充分利用算力资源,在提高推理服务系统吞吐性能的同时,降低请求的平均完成时间。

“如果没有最初做算子开发的经验,恐怕也不敢去做大模型的推理加速。从算子的角度看大模型,推理加速其实就是对算子的优化,然后利用算子就行脚本编写,从而实现推理加速和吞吐量的提高。”郑辉回忆道。

和一个人做算子开发的经历相比,与团队成员协同完成Fastserve策略的过程,让郑辉对团队合作有了更深刻的认识:“一个人可以走的更快,但一群人可以走的更远。个人在团队里好比一颗齿轮,扎实的技术深度就是齿轮驻扎在一台庞大机器里的深度,协作能力好比齿轮的边缘,同事的配合会使我这颗齿轮的转动更顺利。”

对于23岁的郑辉来说,加入AI开发的时间并不算长,却走出了一条典型的成长路线:因为各种机缘接触到了昇腾AI生态,开始了在AI世界的“升级打怪之旅“,起步时还有些生涩,但通过一个个项目中不断发现问题、解决问题,对场景和技术理解的深度不断提升,不断攀登更高的山峰。同时在一次次碰撞中,学会了高效协同,集众智、合众力去解决更复杂的难题。

04 结语

以梦为马的奔跑,终将成就熠熠生辉的人生。

正是像郑辉这样有技术、有想法、有商业嗅觉的年轻人,以一种无畏向上的精神踏入人工智能赛道,沉浸在代码的世界里挥洒汗水,用智慧和毅力解决了一个又一个技术问题,让我们看到了AI走进千行万业的希望。返回搜狐,查看更多

责任编辑:

以上内容为资讯信息快照,由td.fyun.cc爬虫进行采集并收录,本站未对信息做任何修改,信息内容不代表本站立场。

快照生成时间:2024-04-27 23:45:07

本站信息快照查询为非营利公共服务,如有侵权请联系我们进行删除。

信息原文地址:

华为全面启动鲲鹏昇腾原生开发
5月11日消息,鲲鹏昇腾开发者大会昨日在北京中关村国际创新中心举办,主题为“心怀挚爱,共绽光芒”,会上推出了原生使能计划、启动鲲鹏昇腾科教创新卓越中心、鲲鹏昇腾原生创新汇等。华为
2024-05-12 03:14:00
华为张迪煊:共筑智能根基,引领AI新未来
...进了更多的行业、城市、高校和科研单位,更多的伙伴和开发者都选择昇腾作为创新的首选。截至目前,昇腾已认证了30多家硬件伙伴、1200多家软件伙伴,联合孵化了2500多个AI场景
2023-07-13 19:00:00
鲲鹏开发者套件DevKit全新升级!鲲鹏昇腾开发者峰会2023举办
今天,以“创未来 享非凡”为主题的鲲鹏昇腾开发者峰2023在东莞松山湖举办。鲲鹏产业生态繁荣,稳步发展,正在成为行业核心场景及科研领域首选,加速推动数字化转型;昇腾产业快速蓬勃向
2023-05-06 17:00:00
加速替代CUDA!摩尔线程开源vLLM-MUSA 加速国产GPU AI
...大语言模型高速推理框架开源项目vLLM的MUSA移植版本,为开发者提供基于摩尔线程全功能GPU进行开源项目MUSA移植的范例
2024-11-05 21:09:00
摩尔线程万卡GPU集群新进展!性能可提升20倍
...成了Triton编译器在MUSA架构上适配的完整方案,力求实现开发者在基于摩尔线程全功能GPU进行Triton开发算子过程中
2024-07-18 22:51:00
...本的模型参数可选。围绕星火大模型,科大讯飞正在构建开发者生态,目前有4000多个助手开发者团队加入星火平台。
2023-08-16 09:02:00
CPU,正在被AI时代抛弃?
...模型平台(下文简称“千帆大模型平台”)作为一个面向开发者和企业的人工智能服务平台,提供了丰富的大模型,对大模型的推理及部署服务优化积攒了很多作为开发平台的经验,他们发现,CP
2024-07-11 16:45:00
文心大模型4.0 Turbo来了!百度推出文心快码2.5,已覆盖内部80%程序员
...水青智东西6月28日报道,今天,百度在WAVE SUMMIT深度学习开发者大会2024上,正式发布文心大模型4.0 Turbo版本
2024-07-01 09:21:00
产品周报250期 | 领英宣布中国本土化应用“领英职场”将关停,微信公众号可带货“视频号小店”
...片。一、值得关注华为发布昇腾Ascend C编程语言鲲鹏昇腾开发者峰会2023期间,面向算子开发场景,华为正式发布昇腾Ascend C编程语言
2023-05-12 09:00:00
更多关于科技的资讯: