一种通过AI自主学习进行调度算法优选的芯片系统技术方案

技术编号:34773924 阅读:15 留言:0更新日期:2022-08-31 19:41
本发明专利技术公开了一种通过AI自主学习进行调度算法优选的芯片系统,芯片系统软件部分包括AI推理模块、AI训练模块、任务调度模块、任务计算模块、任务访存模块以及性能监测模块。芯片系统的硬件结构为系统级芯片,包括供电系统、片外总线、片上总线以及与片上总线相连接的核心处理器、计算加速器、缓存介质、持久化存储介质和直接存储访问器等。芯片系统每执行一个用户任务,即对AI模型进行一次训练,通过自主的增量学习,不断适应用户场景,最终能够进行调度算法的优选。与现有的使用人力成本对芯片进行性能调优相比,该方案节省了这一部分的开销,获得了由人力到智能自动化的进步,不仅能够适应各种用户场景,而且每种场景下性能都能达到最优。达到最优。达到最优。

【技术实现步骤摘要】
一种通过AI自主学习进行调度算法优选的芯片系统


[0001]本专利技术公开了一种通过AI自主学习进行调度算法优选的芯片系统,涉及芯片设计


技术介绍

[0002]现有的加速卡或AI芯片,市场性能需求高,但因为执行时调度效率低下,难以发挥全部的硬件性能。
[0003]在大数据量高并发运算下,客户的开发人员难以调试和追踪,出现资源利用率低的问题后难以复现当时的情景并找出问题的根源所在,加之客户的开发人员对芯片底层了解不够深入,因此难以对芯片性能进行优化。
[0004]而现有技术中,要么追求通用性更佳而牺牲了芯片的性能,要么定制化开发保证了性能但使得芯片用途单一难以复用在其他业务场景。芯片内的调度算法虽然尽可能优秀,但是太过死板难以适应实际执行时的复杂情景。

技术实现思路

[0005]本专利技术所要解决的技术问题是:针对现有技术的缺陷,提供一种通过AI自主学习进行调度算法优选的芯片系统,通过AI增量学习,智能地选择每个执行情景下适合采用的调度算法,以优化芯片性能。
[0006]本专利技术为解决上述技术问题采用以下技术方案:一种通过AI自主学习进行调度算法优选的芯片系统,所述芯片系统的软件包括驱动程序、操作系统、应用程序等,从逻辑上可以分为AI推理模块、AI训练模块、任务调度模块、任务计算模块、任务访存模块以及性能监测模块;芯片系统从用户主机接收到任务,对任务程序、任务数据量、当前芯片中各项软硬件资源的状态等信息进行数学建模,生成执行情景,并计算出理论最优性能;AI推理模块基于AI模型,从执行情景中提取特征,推理出性能最优的调度算法;任务调度模块依照该算法调度任务的执行,让任务计算模块和任务访存模块充分地利用资源;任务计算模块和任务访存模块执行完毕得出任务结果,返回给用户主机;性能监测模块记录执行过程中的调度情况、资源利用率、任务耗时等信息,作为该执行情景在该调度算法下的实际性能数据;AI训练模块将理论最优性能和实际性能数据带入损失函数,使用梯度下降进行反向传播,调整改进AI模型;所述芯片系统每执行一个用户任务,都是对AI模型的一次训练,通过自主的增量学习,不断适应用户场景,最终能够进行调度算法的优选。
[0007]作为本专利技术的进一步优选方案,用户主机发布的任务类型包括:通用计算任务、AI训练计算任务、AI推理计算任务等。该任务由所述任务计算模块和任务访存模块执行,用户
的AI相关任务与所述的AI推理模块和AI训练模块无关。
[0008]作为本专利技术的进一步优选方案,所述系统的硬件为系统级芯片,除必要的供电等设备以外,还包括:片外总线、片上总线以及与片上总线相连接的核心处理器、计算加速器、缓存介质、持久化存储介质和直接存储访问器等。
[0009]作为本专利技术的进一步优选方案,所述的系统级芯片的各部分硬件结构的具体类型包括但不限于下述内容:所述系统级芯片中,所述片上总线为AMBA、Wishbone、Avalon或者CoreConnect;所述片外总线为高速串行计算机扩展总线或者通用串行总线;所述核心处理器为中央处理器;所述计算加速器为通用计算图形处理器或深度学习加速器;所述缓存介质为双倍速率同步动态随机存储器或静态随机存取存储器;所述持久化存储介质为闪存、固态硬盘、混合硬盘或者机械硬盘;所述直接存储访问器为直接存储器存取。
[0010]本专利技术采用以上技术方案与现有技术相比,具有以下技术效果:与现有的耗费客户开发人员人力成本对芯片进行的性能调优相比,本专利技术节省了这一部分的开销,获得了由人力到智能自动化的进步,不仅能够适应各种用户场景,而且每种场景下调度性能都能达到最优。
附图说明
[0011]图1是本专利技术中芯片系统的硬件关系示意图;图2是本专利技术中芯片系统的软件模块交互示意图;图3是本专利技术中芯片系统的运行流程示意图。
具体实施方式
[0012]下面详细描述本专利技术的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本专利技术,而不能解释为对本专利技术的限制。
[0013]下面结合附图对本专利技术的技术方案做进一步的详细说明:本专利技术中芯片系统的硬件关系示意图如图1所示,其中:Host为用户主机;PCIE为片外总线,负责连接用户主机和片上总线;OCB(On Chip Bus)为片上总线,负责连接其余各设备;CPU负责芯片系统内部所有软件模块的执行;DLA负责大数据量高并发运算,为任务计算模块、任务调度模块、性能监测模块、AI推理模块和AI训练模块提供支持;DDR和SRAM负责所有数据的缓存,为任务访存模块、任务调度模块和性能监测模块提供支持;Flash负责存储AI模型、性能监测数据、所有软件模块的程序及其依赖的环境等;DMA负责加速数据的拷贝。
[0014]本专利技术中芯片系统的软件模块交互示意图如图2所示。
[0015]A1:芯片系统从用户主机接收到任务,传入AI推理模块。
[0016]A2:AI推理模块得出一个调度算法,交由任务调度模块执行。
[0017]A3、A4:任务调度模块开始执行用户任务,依照调度算法调度任务计算模块和任务访存模块。
[0018]A5、A6:任务计算模块和任务访存模块执行完毕得出任务结果。
[0019]A7:将任务结果返回用户主机。
[0020]A8、A9:性能监测模块记录任务计算模块和任务访存模块执行过程中的实际性能数据。
[0021]A10:性能监测模块将实际性能数据传入AI训练模块。
[0022]A11:AI训练模块对AI模型以性能最优为目标进行调整。随着用户的多次使用,AI模型不断适应用户的场景,芯片系统的性能逐渐优化。
[0023]本专利技术的芯片系统的运行流程示意图如图3所示。
[0024]B1:用户任务包括:用户程序和该程序所需的数据;B2:执行情景为一个数学模型,由任务程序、任务数据量、当前芯片中各项软硬件资源的状态等信息生成;B3:AI模型为一个分类模型,最初会内置一个预先训练好的通用模型,能够根据常见的执行情景推理出对应的性能最优调度算法,但是根据用户的执行情景推理未必能得出性能最优的调度算法,因此将每次用户的执行情景作为训练数据进行增量学习,以适应当前用户的场景;B4:芯片系统会内置大量的调度算法,AI模型会在其中选择一个作为分类结果。调度算法不会影响用户任务的执行结果,但会影响任务执行的性能;B5:任务执行时,用户程序的计算指令由计算加速器执行,用户程序的访存指令由片上总线、缓存介质和直接存储访问器协同执行,性能监测由核心处理器执行;B6:任务的执行结果会及时返回给用户,标志本次任务的完成;B7:实际性能数据由调度情况、资源利用率、任务耗时等信息组成;B8:理论最优性能由执行情景中的各项数据综合计算得出,影响因素包括但不限于:任务程序中计算和访存指令的类型和数目、任务数据量、计算加速器的算力、工作线程数、总线和缓存介质的带本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通过AI自主学习进行调度算法优选的芯片系统,所述芯片系统的软件部分包括驱动程序、操作系统和应用程序,其特征在于:所述软件部分从逻辑上分为AI推理模块、AI训练模块、任务调度模块、任务计算模块、任务访存模块以及性能监测模块;芯片系统接收用户主机发布的任务,对任务程序、任务数据量、当前芯片中各项软硬件资源的状态信息进行数学建模,生成执行情景,并计算出理论最优性能;所述AI推理模块基于AI模型,从执行情景中提取特征,推理出性能最优的调度算法;所述任务调度模块依照上述调度算法调度任务的执行;所述任务计算模块和任务访存模块执行完毕得出任务结果,返回给用户主机;所述性能监测模块记录执行过程中的相关信息,作为该执行情景在该调度算法下的实际性能数据;所述AI训练模块将理论最优性能和实际性能数据带入损失函数,使用梯度下降进行反向传播,调整改进AI模型;所述芯片系统每执行一个用户任务,即对AI模型进行一次训练,通过自主的增量学习适应用户场景,进行调度算法的优选。2.如权利要求1所述的一种通过AI自主学习进行调度算法优选的芯片系统,其特征在于,用户主机发布的任务,其类型包括:通...

【专利技术属性】
技术研发人员:莫轩陈渊深李睿李力游小约翰
申请(专利权)人:南京蓝洋智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1