通用类脑计算系统研究
Research on General-Purpose Brain-Inspired Computing Systems
-
摘要:导 读 JCST于2024年第1期出版一篇关于类脑计算系统的研究综述论文。该论文针对类脑计算面临的软硬件碎片化问题,从通用计算机等的发展脉络及启示入手,提出研发“通用”类脑计算系统并介绍了团队近期在这方面的工作,认为这是整合这一领域应用/系统/芯片多个层面协作研发与演进的关键,有利于打造良好的类脑计算生态环境。本篇论文由来自清华大学计算机系、精仪系的联合研究团队共同撰写。论文信息 标题:Research on General-Purpose Brain-Inspired Computing Systems作者:Peng Qu (渠鹏), Xing-Long Ji (纪兴龙), Jia-Jie Chen (陈嘉杰), Meng Pang (庞猛), Yu-Chen Li (李宇晨), Xiao-Yi Liu (刘晓义), You-Hui Zhang (张悠慧)单位:清华大学计算机系;清华大学精仪系关键词:类脑计算、神经形态芯片、编译器、脉冲神经网络(spiking neural network, SNN)引用格式:Qu P, Ji XL, Chen JJ et al. Research on general-purpose brain-inspired computing systems. JOURNAL OFCOMPUTER SCIENCE AND TECHNOLOGY 39(1): 4−21 Jan. 2024. DOI: 10.1007/s11390-023-4002-3核心观点 ●类脑计算系统发展的核心问题之一是如何高效便捷地支持特征各异的多种类脑计算应用与驱动架构跨度大的多种类脑计算芯片,即设计“通用”类脑计算系统。●“通用”类脑计算系统的基本研究方法可从传统的通用计算机设计方法论里汲取经验,包括运行高效能与编程灵活性平衡的类脑计算指令集/微架构、面向芯片/工具链开发者的易于复用编译资源的编译器基础设施(compiler infrastructure)等。●针对类脑计算与深度学习的融合发展趋势,设计实现支持广谱学习算法的脉冲神经网络(spiking neural network, SNN)开发以及支持SNN与人工神经网络(artificial neural network, ANN)混合的“通用”开发工具,能够有效降低应用开发难度、提升效率。背景意义 类脑计算被认为是迈向新一代人工智能的极具潜力的技术路径,类脑计算架构也是后摩尔时代体系结构重大发展方向之一。类脑计算芯片与系统在多样化蓬勃发展的同时,面临着因缺乏公认的技术路径而带来的软硬件碎片化问题;类脑计算与深度学习的融合发展以及计算神经学的精细化计算需求也给类脑计算系统提出了新的挑战,由此我们提出需要研究“通用”类脑计算系统。研究进展 在类脑芯片微体系结构多样性演进的同时,类脑计算应用也正从神经学仿真、类脑智能领域扩展到越来越多的通用计算领域。这就使得类脑计算系统发展面临一个核心挑战,即如何高效便捷地支持特征各异的多种类脑计算应用并驱动架构跨度大的多种类脑计算芯片。反之,如果以类脑芯片为核心的计算系统仍然采用软硬件紧耦合技术路线,且不同系统之间缺乏应用可移植性与资源共享的话,将导致类脑计算领域碎片化,不利于建立良性生态,并阻碍“杀手级”应用的出现。我们的前期工作提出了类脑计算完备性以及系统层次结构,使得软硬件去耦合的多层次类脑计算系统成为可行。在此基础上,针对类脑计算与深度学习的融合发展趋势,设计实现支持广谱学习算法的脉冲神经网络(SNN)开发仿真工具,以及支持SNN与人工神经网络(ANN)混合的开发工具,降低应用开发难度、提升效率。同时,借鉴精简指令集计算机设计方法,设计兼顾编程灵活性与编程高性能的类脑计算指令集与类脑芯片微架构(包括第三代天机芯Tianjic-X),使得软硬件能够发挥各自的优势以更好适应多样化应用需求。在应用与芯片之间,则从领域特定体系结构及其编译技术的发展中获得方法论与资源支持,针对软硬件碎片化问题开发了类脑计算编译框架,利于简化类脑芯片编译器的开发难度,提升应用可移植性。结论与展望 目前,类脑计算研究面临着系统碎片化问题。我们从通用计算机的发展历史和设计理念中汲取灵感,提出并研发“通用”类脑计算系统。此类系统采用软硬件去耦合层次结构,包括应用开发框架、编译基础架构和灵活可编程的神经形态芯片,能够支持广谱的SNN训练算法、SNN/ANN混合开发以及多种硬件后端,同时简化了应用和编译器开发。我们相信这一系列工作有利于构建良好的类脑计算生态环境,进而促进其研究发展和产业化。Abstract: Brain-inspired computing is a new technology that draws on the principles of brain science and is oriented to the efficient development of artificial general intelligence (AGI), and a brain-inspired computing system is a hierarchical system composed of neuromorphic chips, basic software and hardware, and algorithms/applications that embody this technology. While the system is developing rapidly, it faces various challenges and opportunities brought by interdisciplinary research, including the issue of software and hardware fragmentation. This paper analyzes the status quo of brain-inspired computing systems. Enlightened by some design principle and methodology of general-purpose computers, it is proposed to construct “general-purpose” brain-inspired computing systems. A general-purpose brain-inspired computing system refers to a brain-inspired computing hierarchy constructed based on the design philosophy of decoupling software and hardware, which can flexibly support various brain-inspired computing applications and neuromorphic chips with different architectures. Further, this paper introduces our recent work in these aspects, including the ANN (artificial neural network)/SNN (spiking neural network) development tools, the hardware agnostic compilation infrastructure, and the chip micro-architecture with high flexibility of programming and high performance; these studies show that the “general-purpose” system can remarkably improve the efficiency of application development and enhance the productivity of basic software, thereby being conductive to accelerating the advancement of various brain-inspired algorithms and applications. We believe that this is the key to the collaborative research and development, and the evolution of applications, basic software and chips in this field, and conducive to building a favorable software/hardware ecosystem of brain-inspired computing.