昆仑芯科技芯片研发总监漆维:昆仑芯AI芯片,,让计算更智能

在近日闭幕的2022北京智源大会上,昆仑核心技术芯片研发总监邹伟应邀参加了“芯片前沿技术”论坛。针对当前学术领域亟待解决的紧迫问题以及产业落地过程中存在的诸多挑战,朱伟与中国科学院、清华大学、北京大学、杜克大学、伦敦帝国理工学院的专家学者分享了主要成果和见解,为芯片前沿技术提供了一场真诚的盛宴。以下内容在主题报告“昆仑核心AI芯片:让计算更智能”中进行了总结。

昆仑核心技术芯片研发总监Paint Wei大家好,我是昆仑核心技术的Paint Wei。我想很多朋友都会同意,现在是芯片最好的时代。我个人很幸运,很早就进入了人工智能芯片的轨道,接下来,我将根据我和团队十年的积累,谈谈我们对这一领域的理解。AI芯片机遇:空前繁荣的AI生态系统今天整个AI芯片生态系统非常繁荣。从场景来看,在语音、视觉、自然语言处理等不同场景中,AI算法都有持续的突破。这些算法的突破不仅为现有业务提供了新的动力,而且还极大地促进了人们的日常生活。人工智能算法继续取得突破,工程师们正在尝试更大的模型,将人工智能功能带到每个行业。国外GPT-3是第一个千亿规模的模式,国内的文人心,启蒙智慧的源泉,如百度也有很多积累和突破。如果你在几年前研究人工智能,你可能会认为它是“AI+”,因为它将增强现有业务。但事实上,近年来,人工智能已经开始推动行业的变革。1万亿规模的自动驾驶市场可能会改变人们的出行方式。Alphafold对蛋白质结构进行预测。通过这种方式,人工智能算法在解决当前科学问题方面有着巨大的机会。整个AI生态系统非常繁荣,AI算法并没有先提出,为什么过去十年的发展特别好呢?这是因为底层的人工智能计算提供了支持。当然,摩尔定律正在逐渐崩溃,传统的处理器架构不再满足支持的要求。GPU受益于HPC的早期布局,架构也得到了迭代。除了NV GPU,国外还以谷歌为例,结合自己的场景和需求,自主开发了AI芯片。在中国,互联网正在衰落,以打造核心,许多人工智能初创公司正在进入这一轨道。对于AI芯片来说,这确实是一个历史性的新机遇。理想是非常好的,整个生态系统和算法都依赖硬件底层,而自主研发的AI芯片不仅解决了这一需求,也是一个国家人民的难题。但回到现实中,它并不富裕,这是一件非常具有挑战性的事情。人工智能芯片的挑战人工智能芯片能够在行业中大规模落地是一件非常具有挑战性的事情。首先是算法的多样性。如前所述,人工智能有许多产品,包括语音、视觉和自然语言处理,不同的业务场景都有自己的算法模型和对底层计算精度的要求。此外,即使在同一业务线上,算法也得到了优化,并不断取得突破。今天的算法需求和设计的芯片是否能够满足未来的需求也是一个挑战。一个有趣的例子是谷歌在一篇关于GPU的论文中,当它开始制造芯片时,它与业务团队进行了交谈,并被告知1%的准确率损失是可以接受的。我们发现,当芯片完成并推向业务进行着陆部署时,业务发生了变化,之前提到的模型准确性被颠覆了。这也是AI芯片设计面临的挑战。第二,行业存在巨大的生态壁垒。每个人都乐观地进入了这条轨道,但实际上,这并不是一片蓝海。这条赛道是行业巨头领先的。一方面,它确实是比较早的,十多年的积累到现在,已经形成了一条非常强大的护城河。我们也在不断创新自己的架构。随着人工智能算法的需求,GPU产品可以适应所有主流框架。使用GPU来应用AI算法是很自然的。面对新的硬件、定制指令集和微架构以及整个新的软件生态系统,客户为什么选择你?必须有一条心理防线。因此,您必须同时执行这两个维度。首先,它有非常实质性的绩效效益来吸引企业。另一方面,整个软件堆栈必须非常灵活,以最小的迁移成本打破客户的心理防线。第三,“严格”的客户需求。客户的需求不是一成不变的,而是非常严格的。以互联网为例,客户并不关心单一指标。他们关心的是延迟、吞吐量和TCO,这些指标通常是集成的。例如,客户可能会担心单个卡将带来多少吞吐量,以满足特定的延迟条件。它甚至要求CPU、整个AI芯片、整个GPU都有一定的利用率,以确保整个业务系统的鲁棒性。TCO不是指单个卡的性能和成本,而是指单个卡与整个服务器的适应性,在实际业务应用场景中整体成本的分担,甚至是共享网络成本、功耗成本等。最后是复杂的现实世界部署环境。从研发人员的角度来看,他们会觉得制作和点亮芯片是一个非常重要的里程碑。但实际上,从照明到芯片,在现实商业场景中实现规模落地,都存在着非常大的工程挑战。这是硬件和软件以及整个系统面临的挑战。在硬件层面上,10万级、10万级甚至更高的稳定性怎么样?成本对企业来说是否可以接受?整个软件堆栈需要适应国内外主流操作系统,甚至适应不同的深度学习框架,如适应不同的模型。这些都是真正的工程工作,当你在实际的业务部署中克服这两个模块时,你就不会做单线程作业,有时候会做多线程混合,甚至是两个不同的业务线混合,以提高整体运营资源利用率。在这种情况下,AI卡的实际性能是否稳定,是量产后需要面对的工程挑战。AI芯片:从定制到通用

由于上述挑战,我们团队的发展分为两个阶段。第一阶段:从2011年到2017年,随着整个AI算法的迭代,AI逐渐登陆更多的业务线。为了配合这一阶段,我们开发了基于FPGA的AI加速集群,以实现非常大规模和有影响力的行业部署。16-17一年后,英特尔收购了Altera,亚马逊推出了FPGA云服务,FPGA突然变得火热起来。但是,由于我们在这个领域的布局很早,我们可以感受到FPGA业务形态和架构的瓶颈。我们在2017年至2018年开始转型,并于2018年正式开始昆仑芯片的开发。目前,两代芯片已经正式投入生产。为什么要使用通用AI处理器?特别是在芯片这样的高投资场景中,如前所述,整个业务的算法实际上仍在不断迭代和变化。如果你想做一个AI芯片,特别是要真正实现量产,你需要一个通用的软件堆栈,可以灵活地支持所有的应用和产品,同时,可以对接所有的业务系统。这需要一个非常灵活和可编程的解决方案,以适应业务需求。此外,商业化还应将相应的软件成本和用户迁移成本降至最低。昆仑酷睿2代将以昆仑酷睿第2代芯片架构XPU-R为例。该架构的两个核心部分是集群和SDNN。集群是通用计算单元,具有自定义指令集,支持标量和向量计算。从某种意义上说,软件可以被编程为编写扩展和处理器。SDNN是AI运算的指令和加速单元,主要是支持高频和高运算能力要求的运算符,如卷积、矩阵乘法等。SDNN是软件定义的神经网络。为什么是软件定义?事实上,在早期,也有部分定制的架构,但问题是,当模型不断变化时,它们并不总是得到支持,特别是在分支跳跃和动态重塑方面。在另一个维度中,整个算法必须不断迭代,在未来,新模型和新算法将出现。Cluster和SDNN在一定程度上对CUDA Core和Tensor Core进行了基准测试。除了这两个模块之外,整个内存的设计与我们的产品定义相结合。例如,在芯片上有大量的共享内存,支持集群和SDNN之间的数据交互。片外设备内存在这种情况下,昆仑内核2代选择GDDR6,可以考虑带宽和成本。Kunlun Core2也是国内首款应用GDDR6的AI芯片。主机接口集成了PCIe4.0协议。同时,它还具有芯片间互连功能,多个芯片可以相互通信,支持训练和大规模推理的应用场景。它有许多功能,包括内部开发的调度系统。人工智能芯片的计算速度有时会低于微秒,当非常重的处理器被调度或依赖主机时,性能就会受到影响。因此,我们还开发了一个调度系统,可以进行ns(纳秒)级别的调度,以获得非常高的硬件整体利用率。如果芯片提供了这种功能,那么整个软件堆栈就关系到产品能否在多种业务场景或批量生产中快速落地。我们还提供了一套非常全面的SDK,包括低级驱动程序、运行时、高性能控制库和图形编译引擎。通过结合不同客户的需求,可以实现更快的实施和部署。昆仑核是第二代AI芯片。这一代芯片使用7纳米工艺,计算能力高达256TOPs@INT8。

我们还为芯片引入了许多新功能,包括硬件虚拟化。此外,芯片集成了视频编解码器和图像处理功能,可以实现整个视频过程。在GEMM、BERT/ERNIE、YOLOv3和ResNet-50等机型中,昆仑酷睿2的实际性能总体领先,在许多业务实际机型中也能提供出色的性能。目前,昆仑核两代已经在部分场景落地。在互联网领域,不仅是百度集团,外部也有很好的突破。与智源研究所项目等智能计算中心合作。虽然有一些新的领域,如生物计算,但一些项目已经登陆,与国内大学,社会系统和公司合作探索。这意味着我们的产品不仅限于AI。

面向未来,第三代AI芯片已经投入研发,第四代产品也在规划中。昆仑核心技术刚刚庆祝其成立一周年,但在考虑实际性能的同时,我们仍在考虑应用场景和性能的地方。在这个过程中,如何定义一个产品,是否可以拥有更先进的技术,甚至产品是否可以做到“AI+”,是否可以实现行业转型,做更大的场景,这些都是我们日常工作中不断思考的问题。最后,我很高兴有机会在未来与同事和跨行业人士进行更多的互动。

返回列表
上一篇:
下一篇:

文章评论