全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210672025.0 (22)申请日 2022.06.15 (71)申请人 中科物栖 (北京) 科技有限责任公司 地址 100086 北京市海淀区大钟寺东路9号 1幢B座三层310室 (72)发明人 张磊 高成思  (74)专利代理 机构 北京君有知识产权代理事务 所(普通合伙) 11630 专利代理师 焦丽雅 (51)Int.Cl. G06F 9/48(2006.01) G06F 9/50(2006.01) G06N 3/063(2006.01) (54)发明名称 多核神经网络处理器及用 于该处理器多任 务分配调度方法 (57)摘要 多核神经网络处理器及用 于该处理器的多 任务分配调度方法, 包括: 获取包含多个神经网 络任务的列表; 利用离线编译模块依次对多任务 列表中的各个任务进行编译, 得到有多个编译 版 本的结果; 根据系统状态, 在线调度模块从每个 任务已经编译的多个版本中, 选择最优的版本进 行调度执行;通过离线编译模块, 该技术既可 以 得到多个满足不同拥塞情况和分配情况的最优 编译版本, 又可以不用保留所有的编译版本, 节 省存储开销。 通过在线调度模块, 动态的从待调 度层的多个版本中选择性能最优的编译版本执 行, 并且调度多个不同任务的层在多核神经网络 处理器上并行, 提高多系统的性能。 权利要求书1页 说明书8页 附图4页 CN 114860417 A 2022.08.05 CN 114860417 A 1.用于多 核神经网络处 理器的多任务分配和调度方法, 其特 征为: 包括如下步骤: 步骤1: 获取包 含多个神经网络任务的列表; 步骤2: 利用离线编译模块依次对多任务列表中的各个任务进行编译, 得到有多个编译 版本的结果; 步骤3: 根据系统状态, 在线调度模块从每个任务已经编译的多个版本中, 选择最优的 版本进行调度执 行。 2.根据权利要求1所述的用于多核神经网络处理器的多任务分配和调度方法, 其特征 为: 所述步骤1进一 步包括如下内容: 获取待调度的多个神经网络任务的信息, 包括每个神经网络任务的模型信息、 每一层 的尺寸信息, 计算类型, 以及每 个神经网络任务设定的截止时间。 3.根据权利要求1所述的用于多核神经网络处理器的多任务分配和调度方法, 其特征 为: 所述步骤2进一 步包括如下内容: 步骤S302, 所述离线编译模块用分析评估模型依次对神经网络的每一层进行评估, 获 取在给定分配资源和指定配置下, 每层的预估延迟和资源利用率; 步骤S303, 通过动态并行策略, 在给定分配资源下, 搜索神经网络任务每层在不同拥塞 情况下资源利用率 最高的并行 策略, 形成集 合Si; 步骤S304, 根据系统设置, 改变每层的资源分配情况, 并利用动态并行策略获得每种分 配情况下的集合Si, 在获得所有资源分配情况下的Si后, 只保留每层性能位于帕累托最优线 上的分配方案, 形成多个版本的编译结果; 步骤S305, 根据编译到该层累积的计算量和该任务的总计算量, 离线编译模块对于每 一层生成一个预估进度。 4.根据权利要求1所述的用于多核神经网络处理器的多任务分配和调度方法, 其特征 为: 所述步骤3进一 步包括如下内容: 步骤S401, 根据每个任务的截止时间, 在线调度模块计算每个任务的优先级, 按照优先 级从高到低依次对每 个任务按层调度; 步骤S402, 对于每个待调度任务的层, 在线调度模块根据系统状态和该层的编译结果, 利用拥塞评估器预估每 个编译版本在当前系统状态下的性能表现; 步骤S403, 在线调度模块根据上述预估的性能表现, 从每层的多个编译版本中, 选择性 能最优的结果进行调度。 5.多核神经网络处理器, 用于实施上述权利要求1 ‑4任一所述的用于多核神经网络处 理器的多任务分配和调 度方法; 其特征为: 该多核神经网络处理器由N个同构的单核神经网 络处理器构成, N为大于1的整 数, 每个神经网络处理器内部是一个二 维的阵列, 以用于完成 卷积计算; 单个神经网络处理器连接到片上 的路由器中, 并通过片上网络互相连接在一起 进行数据交换。 6.一种控制系统, 其特征为: 所述控制系统中包括权利要求5所述的多核神经网络处理 器。权 利 要 求 书 1/1 页 2 CN 114860417 A 2多核神经 网络处理器及用于该处理 器多任务分配调度方 法 技术领域 [0001]本发明涉及人工智能技术领域, 尤其是涉及一种多核神经网络处理器以及用于该 多核神经网络处 理器的多任务分配和调度方法。 背景技术 [0002]神经网络处理器 (neur al processing  unit, NPU) 是设计用来高效的支持神经网 络 (neural  network, NN) 的执行和计算, 它的基本组成单元为权重缓存器 (weight   buffer), 统一缓存器 (unified  buffer), 计算阵列以及激活单元 (Norm/Activation   module) 。 weight  buffer用于存放NN中的权重信息。 uni fied buffer主要用于存放输入特 征值 (ifmaps) 和输出特征值 (ofmaps) 。 计算阵列主要用于计算NN中的卷积等操作, 它由多 个处理单元 (processing elements, PEs) 构成, 每个PE 内部有一个乘加器可以完成权重和 输入特征值的相乘。 激活单元用于完成对输出特征值 非线性计算。 一个典型的NPU架构如图 1 (a) 所示。 [0003]随着神经网络对算力的要求越来越高, 单核的神经网络处理器已经无法满足现有 的需求, 在这种情况下, 研究者们将单核的NPU扩展为了多核神经网络处理器。 多核神经网 络处理器主要有多个单核的NPU构成, 他们之间通过片上网络 (Network ‑on‑Chip, NoC) 连接 起来, 一个典型的多核神经网络处理器如图1 (b) 所示, 其中N代表了单核的NPU, R代表了片 上网络的路由器 (r outer) , 它用于片上网络中的数据转发和交换。 每个NPU都连接到一个本 地的router上, 由此接入N oC。 [0004]同时, 神经网络非凡的准确性和性能使其在许多应用中得到广泛应用, 例如自动 驾驶, 增强现实和虚拟现实 (AR/VR) 等。 而在这些应用中, 他们往往都包含多个子任务, 使用 了多个神经网络模型, 例如表1列出了AR/VR中包含的子任务和对应的神经网络模型。 为了 能够发挥出多核神经网络处理器的高性能, 需要将这些多任务的应用映射到多核神经网络 处理器上, 而且需要保证这些多个任务需要在规定的截止时间内完成, 这样才能保证用户 的体验和应用的实时性。 在这个过程中有两个重要的配置需要考虑, 第一个是给每个神经 网络任务分配多少计算资源, 即多少数量的神经网络处理器。 第二个是每个神经网络的层 如何在分配的多个神经网络处理器上并行, 即每一层的并行策略, 目前的并行策略主要有4 种, 分别为批次并行 (Batch) , 输入特征值并行 (ifmap) , 输出并行 (output) ,  输入并行 (input) 。说 明 书 1/8 页 3 CN 114860417 A 3

.PDF文档 专利 多核神经网络处理器及用于该处理器多任务分配调度方法

文档预览
中文文档 14 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共14页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 多核神经网络处理器及用于该处理器多任务分配调度方法 第 1 页 专利 多核神经网络处理器及用于该处理器多任务分配调度方法 第 2 页 专利 多核神经网络处理器及用于该处理器多任务分配调度方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 13:32:02上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。