
技术摘要:
本文中所述的实施例提供任务关键型人工智能(AI)处理器(MAIP),其包括指令缓冲区、处理电路、数据缓冲区、命令电路、以及通信电路。在操作期间,该指令缓冲区存储第一硬件指令及第二硬件指令。该处理电路执行该第一硬件指令,其计算AI模型的中间阶段。该数据缓冲区存储 全部
背景技术:
AI应用的指数级增长已使它们成为任务关键型系统(例如实时自动驾驶车辆或关 键金融交易)的受欢迎的媒介。此类应用带来对有效AI处理的不断增长的需求。因此,设备 供应商竞相制造具有多种功能(例如图形处理)的更大且更快的处理器,以有效处理AI相关 应用。不过,图形处理器可能不适合有效处理任务关键型数据,该图形处理器可能受处理限 制及设计复杂性等因素的限制。 随着越来越多的任务关键型特征(例如,依赖于快速且准确的决策的特征)被实施 于各种系统中(例如,车辆的自动制动),AI系统作为系统设计者的价值主张正变得越来越 重要。通常,AI系统使用数据、AI模型、以及计算能力。输入装置(例如,传感器、相机等)的广 泛使用导致AI系统所使用的大量数据的生成,其常常被称为“大数据”。AI系统可使用大而 复杂的模型,从而可从大数据推断决策。不过,在大数据上执行大模型的效率依赖于计算能 力,它可能成为AI系统的瓶颈。为解决此问题,AI系统可使用能够处理AI模型的处理器。 因此,常常想要为处理器配备AI能力。通常,常使用张量来表示与AI系统相关的数 据,存储AI操作的内部表示,以及分析和训练AI模型。为有效地处理张量,一些供应商使用 张量处理单元(tensor processing unit;TPU),该些单元是为处理基于张量的计算而设计 的处理单元。TPU可用于运行AI模型,并可为低精度数学运算提供高吞吐量。 尽管TPU为AI系统带来许多想要的特征,但对于处理任务关键性情景,一些问题仍 未被解决。
技术实现要素:
本文中所述的实施例提供任务关键型人工智能(AI)处理器(mission-critical artificial intelligence;MAIP),其包括指令缓冲区(buffer)、处理电路、数据缓冲区、命 令电路、以及通信电路。在操作期间,该指令缓冲区存储第一硬件指令及第二硬件指令。该 处理电路执行该第一硬件指令,其计算AI模型的中间阶段。该数据缓冲区存储由执行该第 一硬件指令所生成的数据。该命令电路确定该第二硬件指令是用于传送来自该数据缓冲区 5 CN 111602117 A 说 明 书 2/13 页 的该数据的硬件启动存储指令。基于该硬件启动存储指令,该通信电路经由通信接口将来 自该数据缓冲区的该数据传送至包括该任务关键型处理器的计算系统的存储器装置。 在该实施例的一个变体中,该通信接口为以下的其中之一:周边组件互连快速 (peripheral component interconnect express;PCIe)接口;以及网络接口卡(network interface card;NIC)。 在该实施例的一个变体中,该MAIP还包括加密电路,其加密该数据缓冲区中的该 数据。 在该实施例的一个变体中,该处理电路包括多个处理单元,其包括以下的其中一 个或多个:(i)数据流处理单元(dataflow processing unit;DPU),包括标量计算单元及向 量计算单元;以及(ii)张量计算单元(tensor computing unit;TCU),包括DPU集群 (cluster)、高带宽存储器装置、以及输入/输出(input/output;I/O)装置。 在另一个变体中,该MAIP包括控制电路,其通过关闭该多个处理单元的其中一个 或多个处理单元而以低功率模式操作该处理电路。 在该实施例的一个变体中,该通信电路可在该计算系统的状态缓冲区中存储该处 理电路的计算状态。这允许该计算系统的第二MAIP恢复与该计算状态相关的操作。 在该实施例的一个变体中,该通信电路利用远程存储器访问协议经由该通信接口 在远程计算装置的存储装置中存储该数据。 在该实施例的一个变体中,该指令缓冲区可通过以下的其中一种来存储该第一及 第二硬件指令:在运行时间之前存储该第一及第二硬件指令;以及在运行时间之前存储该 第一硬件指令并在运行时间期间动态插入该第二硬件指令。 在该实施例的一个变体中,基于该硬件启动存储指令,该通信电路还将与该MAIP 相关的上下文信息(contextual information)传送至该存储器装置。该上下文信息包括以 下的其中一种或多种:与该数据缓冲区中的该数据相关的特征映射(feature maps);以及 与该MAIP的一个或多个计算单元相关的信息。该信息包括以下的其中一种或多种:温度、工 作条件、使用率、以及性能统计。 本文中的实施例提供一种促进任务关键型系统的硬件指令的系统。在操作期间, 该系统识别包括一组硬件指令的指令块,其计算人工智能(AI)模型的中间阶段。该指令块 的各指令可执行于任务关键型AI处理器(MAIP)上。基于一组参数,该系统确定与该指令块 相关的上下文是否应当被记录。如果与该指令块相关的该上下文应当被记录,则该系统将 硬件启动指令附加至该指令块。该硬件启动指令启动由该指令块所生成的数据向该MAIP的 外部的传送。接着,该系统向该MAIP提供具有该硬件启动指令的该指令块。 在该实施例的一个变体中,该组参数包括可用存储、通信带宽、以及外部输入,外 部输入包括数据中心的策略、客户偏好、开发者偏好、以及环境反馈。 在该实施例的一个变体中,在该MAIP的运行时间之前,该系统向该MAIP提供该指 令块。 本文中的实施例提供一种任务关键型系统,其包括系统处理器、系统存储器装置、 通信接口及与该通信接口耦接的第一任务关键型人工智能(AI)处理器(MAIP)、以及操作模 块。该第一MAIP可包括指令缓冲区、处理电路、数据缓冲区、命令电路、以及通信电路。在操 作期间,该操作模块在该第一MAIP的该指令缓冲区中加载(load)第一及第二硬件指令。该 6 CN 111602117 A 说 明 书 3/13 页 处理电路执行该第一硬件指令,其计算AI模型的中间阶段。该数据缓冲区存储由执行该第 一硬件指令所生成的数据。该命令电路确定该第二硬件指令是用于传送来自该数据缓冲区 的该数据的硬件启动存储指令。基于该硬件启动存储指令,该通信电路经由该通信接口将 来自该数据缓冲区的该数据传送至该系统存储器装置。 在该实施例的一个变体中,该通信接口为以下的其中之一:周边组件互连快速 (PCIe)接口;以及网络接口卡(NIC)。 在该实施例的一个变体中,该第一MAIP的该处理电路包括多个处理单元,其包括 以下的其中一个或多个:(i)数据流处理单元(DPU),包括标量计算单元及向量计算单元;以 及(ii)张量计算单元(TCU),包括DPU集群、高带宽存储器装置、以及输入/输出(I/O)装置。 在该实施例的一个变体中,该系统还包括备用功率(power)源以及功率电路。该功 率电路可检测该系统的功率故障,将该第一MAIP切换至该备用功率源,以及减少该第一 MAIP的操作以节约功率。 在该实施例的一个变体中,该系统还包括状态缓冲区以及高可用性电路。该状态 缓冲区存储该第一MAIP的计算状态。该高可用性电路可检测该第一MAIP的故障。接着,该高 可用性电路将该第一MAIP的该计算状态从该状态缓冲区加载至第二MAIP,并利用该第二 MAIP恢复与该计算状态相关的操作。 在该实施例的一个变体中,该系统还包括网络接口,其可将该数据从该存储器装 置传送至远程计算系统,用于回放该数据。 在该实施例的一个变体中,该操作模块可在运行时间之前在该任务关键性系统上 电(power up)时加载该第一与第二硬件指令两者。或者,该操作模块可在运行时间之前在 该任务关键性系统上电时加载该第一硬件指令,并在运行时间期间动态插入该第二硬件指 令。 在该实施例的一个变体中,基于该硬件启动存储指令,该第一MAIP的该通信电路 还将与该第一MAIP相关的上下文信息传送至该系统存储器装置。该上下文信息包括以下的 其中一种或多种:与该数据缓冲区中的该数据相关的特征映射,以及与该第一MAIP的一个 或多个计算单元相关的信息。此类信息包括以下的其中一种或多种:温度、工作条件、使用 率、以及性能统计。 附图说明 图1A显示依据本申请的一个实施例配备有支持存储及回放的任务关键型AI处理 器(MAIP)的示例任务关键型系统。 图1B显示依据本申请的一个实施例的任务关键型系统的示例系统堆叠。 图2A显示依据本申请的一个实施例在支持存储及回放的MAIP中的张量计算单元 (TCU)的示例芯片架构。 图2B显示依据本申请的一个实施例在支持存储及回放的MAIP中的TCU集群的示例 芯片架构。 图3显示依据本申请的一个实施例的MAIP的示例硬件启动存储指令。 图4A显示依据本申请的一个实施例支持硬件启动存储指令的MAIP的示例架构。 图4B显示依据本申请的一个实施例在MAIP中示例纳入硬件启动存储指令。 7 CN 111602117 A 说 明 书 4/13 页 图5A显示依据本申请的一个实施例任务关键型系统虚拟化可用AI资源的方法的 流程图。 图5B显示依据本申请的一个实施例任务关键型系统促进高可用性的方法的流程 图。 图5C显示依据本申请的一个实施例任务关键型系统以低功率及降低的性能操作 的方法的流程图。 图6A显示依据本申请的一个实施例编译器将硬件启动存储指令纳入与中间层相 关的指令块中的方法的流程图。 图6B显示依据本申请的一个实施例MAIP的派发器执行硬件启动存储指令的方法 的流程图。 图7显示依据本申请的一个实施例支持任务关键型系统的示例电脑系统。 图8显示依据本申请的一个实施例支持任务关键型系统的示例设备。