1.4.2 人工智能的硬件
随着人工智能技术的进一步发展,模型训练所需要的巨大算力对相关硬件提出了更高的要求。作为人工智能产业的重要基石,人工智能芯片具有重要的产业价值和战略地位。人工智能芯片通常指对人工智能算法进行加速运算的芯片,也叫做AI加速器或者计算卡,根据技术架构可以分成GPU、FPGA、ASIC和类脑芯片。
1)GPU
GPU是graphics processing unit(图形处理器)的简称,是一种专门用于完成图形或图像运算的处理器。对比于CPU,GPU支持并行加速运算,同时编程方法更加灵活,所以被广泛用于人工智能算法的运算训练过程中。图1-9是CPU与GPU的结构对比,可以看出CPU中占绝大多数的是控制单元和存储单元,而GPU更多的是运算单元,因此不难得出GPU的结构更加适合对密集型数据进行并行处理,其运算速度要比CPU更快。
图1-9 CPU与GPU的结构对比
GPU根据接入系统的方式不同,可以分为集成型GPU(integrated GPU,iGPU)和离散型GPU(discrete GPU,dGPU)两种,前者就是日常所说的集显,后者就是日常所说的独显。集成型GPU一般嵌入在CPU的旁边,功耗低,适合于一般的应用办公场景。离散型GPU是以独立板卡的形式出现,一般连接在PCL接口上,功耗要比集成型GPU大,并且价格更贵,主要用于大型游戏、图像处理、视频渲染、人工智能模型运算等需要算力的应用场景。表1-1给出了两种类型GPU的对比。
表1-1 两种类型GPU的对比
选择合适的GPU需要综合考虑计算需求、预算限制、硬件兼容性、驱动和支持、品牌和型号选择等因素。目前,GPU厂商主要以国外的英伟达(NVIDIA)、AMD、英特尔为主,而我国的GPU厂商主要有景嘉微、沐曦集成电路、壁仞科技、燧原科技、地平线等。其中较受欢迎的是英伟达,因为在完成深度学习任务时,绝大多数开发者会使用到该公司推出的并行计算架构(compute unified device architecture,CUDA)。CUDA使用C语言进行编写,主要功能是利用GPU的并行计算能力解决复杂的计算问题,提升计算速度,如今基于CUDA的GPU被广泛用于图像与视频处理、计算生物学和化学、流体力学模拟、CT图像再现、地震分析以及光线追踪等领域。
2)FPGA
可编程逻辑门阵列(field programmable gate array, FPGA),是一种半定制电路,被广泛应用于专用集成电路领域。FPGA的特点在于用户可以通过烧入FPGA配置文件来定义门电路以及存储器之间的连线,从而实现不同的逻辑功能。在深度学习领域,FPGA可以用于加速模型推理和训练。与传统的CPU和GPU相比,FPGA具有更低的功耗和更高的并行性,可以实现更快的计算速度和更高的计算效率。同时,FPGA还可以在运行时根据需要进行动态定点化和量化,可以进一步提高计算效率和节约资源。目前FPGA的国外主要厂商有Xlinx(赛灵思)、Lattice(莱迪斯)、Actel、Achronix等。国内厂商主要有深圳紫光同创、上海安路科技、广东高云、西安智多晶、京微齐力、上海遨格芯、成都华微科技、上海复旦微电子等。
3)ASIC
集成电路(application-specific integrated circuit, ASIC),是一种专门用于特定目的而设计制造的集成电路。相比于通用的CPU、GPU或者半定制的FPGA,ASIC具有更小的体积、更低的功耗、更高的可靠性、更高的计算效率和更强的保密性等优点,这使得它被广泛应用在一些对计算效率和安全性要求较高的领域,如加密、通信、人工智能等。ASIC的设计和制造过程需要高度专业化的技术和经验,需要根据具体的应用场景进行优化和设计,以确保ASIC能够满足特定的功能和性能指标。ASIC成本较高,通常适用于需要高性能和高可靠性的特定应用场景。
用一个形象化的例子对比FPGA和ASIC。比如,你想要买一个玩具车,摆在面前的有两种选择:一种是类比FPGA,你可以购买乐高积木搭;另一种类比ASIC是寻找玩具加工厂进行专门定制。用乐高积木搭,你只需要确定好车的外形后选择相应的积木零件即可。而定制化需要你不仅设计出外形,还需考虑诸如安全性、材质等一系列问题。因此使用FPGA对整个项目的开发时间影响较小,但定制化的ASIC要比FPGA更加适合整个项目。
4)类脑芯片
为了满足人工智能模型对硬件算力的巨大需求,芯片的发展可以分为两种方式。一种是像GPU、FPGA、ASIC一样继续使用传统的冯·诺依曼架构;另一种则是通过利用神经元结构设计的芯片来模拟人脑的工作方式,这种芯片称为类脑芯片。类脑芯片将微电子技术与各种神经形态器件相结合,突破了冯·诺依曼架构的瓶颈,实现了存储和计算的深度融合,从而提高了芯片的计算效率并降低了功耗。类脑芯片在人工智能、机器学习、图像识别、自然语言处理等领域具有广泛的应用前景,其具有高效、低功耗、高度并行等特点,可以大幅提升人工智能系统的性能和效率。一些大型科技公司和研究机构已经开始研制和应用类脑芯片,预计未来类脑芯片将成为人工智能技术发展的重要方向。