快速迭代的AI 行业到底需要什么芯片
- 来源:电脑报 smarty:if $article.tag?>
- 关键字:AI ,芯片,迭代 smarty:/if?>
- 发布时间:2023-12-08 20:56
Shoot
GPU并不完全等同于AI芯片
自去年11 月起,ChatGPT 的横空出世引领了一波生成式AI 浪潮,至今未休,中国乃至全球大型科技公司纷纷跟进AI 大模型,对“算力基建”的需求也随之激增。
总的来看,“百模大战”的基础仍然是AI 发展三要素:数据、算法与算力,而这三要素恰恰都与AI 芯片息息相关。毕竟ChatGPT 之所以能比它的前辈们更强,是因为它有成熟的模型底座、丰富的数据库、繁复细致的人工调整,更重要的是有庞大的计算网络支持其模型训练。
当Open AI 发布ChatGPT 时,也公开了其庞大模型训练背后的计算网络——Azure AI 超算平台。这个微软专门建设的高性能网络集群有1 万颗英伟达公司生产的V100 GPU(图形处理器)和28.5 万个CPU(中央处理器)内核,以及400Gbps 网络连接,总算力消耗超过3640 PF-days:假如每秒计算1000 万亿次,需要计算3640 天。
而所谓的“AI 芯片”到底和普通芯片有什么区别?广义上讲,只要能够用于人工智能算法或处理人工智能应用中的计算任务的芯片都属于AI 芯片;但从狭义上解读,AI 芯片其实是指专门针对AI 算法做了加速设计的ASIC(定制/ 专用芯片),上述GPU 作为一种通用型芯片并不算在其中。GPU,尤其是英伟达的A100,现在已经是主流
AI 厂商做大模型训练和算力部署的核心硬件,动辄上万美金市面上还一度“一卡难求”。如果GPU 不算“标准”AI 芯片,为什么又能广泛用于AI 大模型之中?
英伟达选对路
在专业人士看来,GPU 用于AI 大模型训练实在有些大材小用。一般而言,在数据中心架构中,通用性更高的CPU 负责数据的查询、存储;而GPU 虽然也有其他功能逻辑单元,但其中运算单元比重大,且更擅长并行计算,因此承担了推理的任务,也更适合用于AI运算之中。
不过GPU 的主要功能其实是渲染复杂的图形,主要应用领域一直是游戏尤其是3A 大作和游戏主机,而用于AI 模型训练的数据精度根本比不上游戏渲染的精度。GPU 之所以用于AI 训练始于一次“意外”。
2012 年,多伦多大学研究员Alex Krizhevsky联合同学llya Sutskever 与导师Geoffrey Hinton 设计了一个深度卷积神经网络 (CNN) ,训练这一神经网络需要庞大的CPU 资源,但是CPU 网路中大部分都是控制单元和储存单元,用于并行运算需要花上几个月时间。
导师Geoffrey 建议他们尝试用GPU 做训练。尽管Alex 和llya 彼时还没搞懂GPU 要怎么发挥作用,但当他们将两张英伟达为大型PC 游戏准备的GPUGTX580 投入试验后发现,GPU 架构原来十分适合用来训练CNN——它可以训练得更快,能够做的数据规模也远超从前。最后不到一周时间,这个神经网络训练就完成了。
等llya 成为了OpenAI 联合创始人以及首席科学家后,GPU 在大模型训练领域的地位也进一步得到强化。如今,全球GPU 市场已经进入寡头竞争时代,许多人工智能和深度学习项目都将英伟达GPU视为首选,而这也得益于英伟达CEO 黄仁勋的精准押注。
黄仁勋领导的英伟达在GPU 领域已经深耕数十年,早已建立起强大的软件生态,这也是其能够恰逢其时搭上AI 东风、垄断GPU 市场的关键之一。2006年,英伟达推出GPU 计算平台和编程模型“CUDA”(Compute Unified Device Architecture)架构。CUDA 提供的是一个简单且灵活的编程模型,包括核函数的调用、内存管理、线程同步等功能,开发人员能够更轻松地利用GPU 的并行计算能力,开发高性能的通用计算应用程序。
早期英伟达哪怕入不敷出,都要走“买硬件送软件”的路径推广CUDA,为什么?因为在CUDA 发布前,开发者如果想设置GPU 需要用到底层计算机语言,而CUDA 包含一系列开发工具,所有英伟达的GPU 都支持CUDA。CUDA 架构的开放性和工具支持便捷性意味着从学生到科学家,任何人都可以用常用的高级计算机语言完成软件开发。CUDA 因此逐渐成为了应用最广泛的GPU 计算平台,这一强大的生态系统又与英伟达GPU 的更新换代形成良性循环,不断推动其市场份额的增长。
“标准”AI芯片太有限
在GPU 需求爆发之前,业内曾看好ASIC,认为像谷歌的TPU(张量处理器)才是AI 芯片未来演进的方向。
在专业人士看来,无论是CPU 还是GPU,都是基于冯诺依曼架构的通用处理器,即存储单元和运算单元分开,指令和数据均放置于存储单元中,而这一架构带有天然的“瓶颈”。CPU 或GPU 每次运算结果都会先保存在存储单元中,下一次运算时再调用;内存容量指数级提升以后,运算单元需要频繁地访问存储单元,不仅限制了数据传输量也带来了极大能耗。
因此像TPU 这种专门针对AI 训练和推理所研发的ASIC 也就有了一席之地。这种AI 芯片针对的是常用计算加速,包括平行计算、降低计算精度、加速存储单元存取速度等项目的着重优化,大幅降低了冯诺依曼架构瓶颈。
可惜在实际应用后,ASIC 被证明在现阶段AI 迭代中用途有限。业内人士解释,ASIC 是按照固定函数设计的,通常用于特定任务或算法,比如之前专门用于“挖矿”的专用芯片,用一段时间就会随着行业起伏而淘汰,因为这种芯片设计出来就为了“挖矿”不能用于其他目的;但优势在于,算法写得好效率会很高。
回到AI 领域,如果大规模应用ASIC,那么一旦出现新的架构和模型,上一批ASIC 就会面临淘汰。考虑到成本和效率,通用性、易用性和高性能仍然是当下互联网企业和AI 厂商衡量AI 芯片的标准,也因此,GPU 在当下仍是最好的通用计算加速方案。
