CN117271241A - 一种智能芯片系统的调试方法、装置、设备及介质 - Google Patents

一种智能芯片系统的调试方法、装置、设备及介质 Download PDF

Info

Publication number
CN117271241A
CN117271241A CN202311239477.0A CN202311239477A CN117271241A CN 117271241 A CN117271241 A CN 117271241A CN 202311239477 A CN202311239477 A CN 202311239477A CN 117271241 A CN117271241 A CN 117271241A
Authority
CN
China
Prior art keywords
chip system
debugged
algorithm model
constructing
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311239477.0A
Other languages
English (en)
Inventor
廖金龙
姚建国
吴长平
许士芳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suiyuan Intelligent Technology Chengdu Co ltd
Original Assignee
Suiyuan Intelligent Technology Chengdu Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suiyuan Intelligent Technology Chengdu Co ltd filed Critical Suiyuan Intelligent Technology Chengdu Co ltd
Priority to CN202311239477.0A priority Critical patent/CN117271241A/zh
Publication of CN117271241A publication Critical patent/CN117271241A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了智能芯片系统的调试方法、装置、设备及介质。包括根据待调试芯片系统的功能项构建算法模型,并针对算法模型构建数据获取模块;将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,并根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能,并针对异常功能对待调试芯片系统进行调试。根据待调试芯片系统的功能项构建算法模型,将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,根据在各系统上运行过程中产生的数据所构建的计算流程图的对比结果对异常功能进行定位和调试,提高了智能芯片系统调试的效率以及准确性。

Description

一种智能芯片系统的调试方法、装置、设备及介质
技术领域
本发明实施例涉及智能芯片技术领域,尤其涉及一种智能芯片系统的调试方法、装置、设备及介质。
背景技术
人工智能芯片系统是人工智能算法模型的算力基础,即人工智能算法模型的计算正确性和收敛性依赖于整套人工智能芯片系统的正确性,因此人工智能芯片系统的正确性对人工智能算法模型执行结果的准确性有着重要的作用。
但是当新型人工智能芯片系统被设计开发出来之后,迭代升级阶段时的正确性和收敛性无法得到稳定持续的保证,直观的表现就是面对较多主流的复杂算法模型还无法运行正确和获得收敛,由于人工智能芯片系统的复杂性高、耦合性强,常常难以定位查找问题,导致人工智能芯片系统使用体验差。
发明内容
本发明实施例提供一种智能芯片系统的调试方法、装置、设备及介质,以提高智能芯片系统调试的效率和准确性。
第一方面,本发明实施例提供了一种智能芯片系统的调试方法,包括:根据待调试芯片系统的功能项构建算法模型,并针对所述算法模型构建数据获取模块;
将所述算法模型分别在所述待调试芯片系统和已验证的标准芯片系统上运行,并根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,并针对所述异常功能项对所述待调试芯片系统进行调试。
第二方面,本发明实施例提供了一种智能芯片系统的调试装置,包括:数据获取模块构建模块,用于根据待调试芯片系统的功能项构建算法模型,并针对所述算法模型构建数据获取模块;
计算流程图构建模块,用于将所述算法模型分别在所述待调试芯片系统和已验证的标准芯片系统上运行,并根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
芯片系统调试模块,用于根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,并针对所述异常功能项对所述待调试芯片系统进行调试。
第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法。
第四方面,本发明实施例提供了一种计算机可执行指令的存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述方法。
附图说明
图1是本发明实施例一提供的一种智能芯片系统的调试方式的流程图;
图2是本发明实施例一提供的一种插入采集探针的算法模型的示例;
图3是本发明实施例一提供的一种待调试芯片系统的计算流程图的示例;
图4是本发明实施例二提供的一种智能芯片系统的调试方式的流程图;
图5是本发明实施例三提供的一种智能芯片系统的调试装置的结构示意图;
图6是本发明实施例四中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种智能芯片系统的调试方法的流程图,本实施例可适用于对智能芯片系统进行调试的场景,该方法可以由本发明实施例中的智能芯片系统的调试装置来执行,该装置可以采用硬件和/或软件的形式实现。如图1所示,该方法包括:
步骤S101,根据待调试芯片系统的功能项构建算法模型,并针对算法模型构建数据获取模块。
可选的,根据待调试芯片系统的功能项构建算法模型,包括:确定待调试芯片系统所对应的功能项,并根据功能项设定模型参数,其中,模型参数包括模型输入、模型权重、随机种子和迭代次数;根据模型参数进行代码编译,以构建算法模型,其中,算法模型以代码的形式反映功能项。
具体的说,本实施方式中需要使用到两套芯片系统,一套是待调试芯片系统,一套是已经经过验证的标注芯片系统,如目前占据主流生态位的GPU芯片系统或者CPU芯片系统,部分算法模型的特性无法在CPU芯片上运行,则使用GPU芯片系统,因此本实施方式中可以根据实际需求确定标准芯片系统的类型。
其中,由于算法模型是建立在人工智能芯片系统的应用,理论上芯片系统局部出现问题,最终都会导致算法模型计算错误并导致loss曲线不收敛。另外,芯片系统的局部单元测试即便通过,当系统内部耦合在一起也可能会对最终算法模型的计算产生影响。因此从芯片系统的应用层—算法模型,自上而下的调试更容易发现和定位芯片系统存在的问题。并且算法模型的层出不穷且愈发复杂,可充分验证底层芯片系统的各个功能特性,因此本实施方式中会确定出待调试系统所对应的功能项,例如,功能项1、功能项2...功能项N,并根据功能项设定模型参数,其中,模型参数包括模型输入、模型权重、随机种子和迭代次数等,其中,为了防止不同芯片系统之间允许的计算差异累积造成的误判,迭代次数可以为1-3个,当然,本实施方式中仅是举例说明,而并不对模型参数的具体内容进行限定,根据上述模型参数进行代码编译以构建出算法模型来,因此本实施方式中的算法模型是以代码的形式反映芯片系统的各功能项。
可选的,针对算法模型构建数据获取模块,包括:针对算法模型确定采集数据的指定类型,其中,指定类型包括模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数;针对指定类型在算法模型中的指定位置插入采集探针,其中,采集探针在被启动时用于对指定类型的算法模型运行数据进行采集;根据指定类型和采集探针构建数据获取模块。
具体的说,本实施方式中在构建出算法模型之后,还会针对算法模型确定采集数据的指定类型,例如,模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数等,当然,本实施方式中仅是举例说明,而并不对所采集数据的类型进行限定。并且本实施方式中会针对指定类型在算法模型中的指定位置插入采集探针,如图2所示为插入采集探针的算法模型的示例,从而根据指定类型和采集探针构建数据获取模块。例如,在算法模型初始化处插入获取算法模型初始化参数和前向计算模型输入的代码。在算法模型代码的每个forward前向模块,插入获取前向计算流数据的代码,包括每行代码前向计算的输入和输出;同时通过插入register_hook函数,获取反向计算流数据,包括每行代码前向计算的输入和输出的反向梯度。确定在构建前向计算流数据和反向计算流数据的获取模块时,所要打上的流程图构建标识,包括代码唯一标识和遍历顺序标识,目的为构建整个前向计算和反向计算的流程图。最后在优化器更新之后,插入获取更新后的模型参数的代码。
步骤S102,将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,并根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图。
可选的,根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图,包括:当算法模型在运行过程中触发到数据获取模块的采集探针时,通过采集探针对算法模型所产生的指定类型的运行数据进行采集;针对采集的运行数据分别按照采集顺序构建标识;针对待调试芯片系统上所采集的运行数据以及所构建的标识构建第一前向计算流程图,并针对标准芯片系统上所采集的运行数据以及所构建的标识构建第二前向计算流程图,其中,第一前向计算流程图和第二前向计算流程图中的节点分别与算法模型中的代码行对应。
具体的说,本实施方式中在构建出算法模型以及与算法模型所对应的获取模块之后,会将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,并且可以按照所设置的迭代次数运行1—3次。并且当算法模型分别在待调试芯片系统和标准芯片系统上运行的过程中,当触发到数据获取模块上的采集探针时,会通过采集探针对算法模型所产生的运行数据进行采集,例如,模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数,并且会根据采集的运行数据分别按照采集顺序构建标识,然后根据构建标识构建前向计算流程图和反向计算流程图,并根据待调试芯片系统上的前向计算流程图和反向计算流程图构建出第一前向计算流程图,如图3所示为待调试芯片系统的计算流程图的示例,并且第一前向计算流程图中的节点分别与算法模型中的代码行对应,例如,图3中的节点“(1)0(A),1(B)”与图2中的代码行“A+1=B”是对应的。当然,本实施方式中仅是以获取待调试芯片系统所对应的第一计算流程图为例进行说明,对于获取标准芯片系统所对应的第二计算流程图的方式与此大致相同,本实施方式中不再进行赘述。
步骤S103,根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能项,并针对异常功能项对待调试芯片系统进行调试。
可选的,根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能项,包括:将第一前向计算流程图和第二前向计算流程图进行对比获取目标节点;确定算法模型中与目标节点所对应的目标代码行,将目标代码行所反映的功能项作为待调试芯片系统的异常功能项。
可选的,将第一前向计算流程图和第二前向计算流程图进行对比获取目标节点,包括:将第一前向计算流程图和第二前向计算流程图各对应节点的张量组合数据进行对比获取相似度值;将相似度值小于预设阈值的张量组合数据所对应的节点作为目标节点。
具体的说,本实施方式中在获取到待调试芯片系统所对应的第一前向计算流程图,以及标准芯片系统所对应的第二前向计算流程图之后,由于标准芯片系统上的第二前向计算流程图是准确无误的,因此会将两个芯片系统上所获取的前向计算流程图进行对比确定出存在差异的目标节点。在获取目标节点的过程中,由于流程图各节点可以一个或者多个tensor组合的数据。使用余弦相似度,在tensor级别的粒度进行比对,即对于多个tensor的数据,要拆分成一个一个tensor比对,对两套芯片系统上获得的数据进行比对获得相似度值。设定相似度阈值为0.97,相似度低于该阈值即判定比对失败,对于多个tensor组合的数据,只要有一个tensor的相似度未超过阈值也判断比对失败,从而将对比失败的节点作为目标节点。
其中,在确定出计算流程图中的目标节点之后,由于计算流程图上的节点与算法模型中的代码行是对应的,因此,可快速定位出算法模型代码步骤存在的计算差异,即确定出算法模型中与目标节点所对应的目标代码行,由于算法模型代码是基于待调试芯片的功能项所构建的,因此可以进一步将目标代码行所反映的功能项作为待调试芯片系统的异常功能项。例如,当确定目标节点为图3中的节点“(1),0(A),1(B)”,从而将图2中与目标节点所对应的代码行“A+1=B”所对应的功能项1作为异常功能项,在确定出待调试芯片系统的异常功能项之后,则可以针对异常功能项对待调试芯片系统进行调试。
本实施方式中,根据待调试芯片系统的功能项构建算法模型,将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,根据在各系统上运行过程中产生的数据所构建的计算流程图的对比结果对异常功能进行定位和调试,提高了智能芯片系统调试的效率以及准确性。
实施例二
图4为本发明实施例二提供的一种智能芯片系统的调试方法的流程图,本实施例以上述实施例为基础,针对异常功能项对待调试芯片系统进行调试进行说明,如图4所示,该方法包括:
步骤S201,根据待调试芯片系统的功能项构建算法模型,并针对算法模型构建数据获取模块。
可选的,根据待调试芯片系统的功能项构建算法模型,包括:确定待调试芯片系统所对应的功能项,并根据功能项设定模型参数,其中,模型参数包括模型输入、模型权重、随机种子和迭代次数;根据模型参数进行代码编译,以构建算法模型,其中,算法模型以代码的形式反映功能项。
可选的,针对算法模型构建数据获取模块,包括:针对算法模型确定采集数据的指定类型,其中,指定类型包括模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数;针对指定类型在算法模型中的指定位置插入采集探针,其中,采集探针在被启动时用于对指定类型的算法模型运行数据进行采集;根据指定类型和采集探针构建数据获取模块。
步骤S202,将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,并根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图。
可选的,根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图,包括:当算法模型在运行过程中触发到数据获取模块的采集探针时,通过采集探针对算法模型所产生的指定类型的运行数据进行采集;针对采集的运行数据分别按照采集顺序构建标识;针对待调试芯片系统上所采集的运行数据以及所构建的标识构建第一前向计算流程图,并针对标准芯片系统上所采集的运行数据以及所构建的标识构建第二前向计算流程图,其中,第一前向计算流程图和第二前向计算流程图中的节点分别与算法模型中的代码行对应。
步骤S203,根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能项。
可选的,根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能项,包括:将第一前向计算流程图和第二前向计算流程图进行对比获取目标节点;确定算法模型中与目标节点所对应的目标代码行,将目标代码行所反映的功能项作为待调试芯片系统的异常功能项。
可选的,将第一前向计算流程图和第二前向计算流程图进行对比获取目标节点,包括:将第一前向计算流程图和第二前向计算流程图各对应节点的张量组合数据进行对比获取相似度值;将相似度值小于预设阈值的张量组合数据所对应的节点作为目标节点。
步骤S204,确定待调试芯片系统中支持异常功能项运行的目标系统结构。
具体的说,本实施方式中会获取功能项参数列表,而在功能项参数列表中记载了待调试芯片系统所配置的功能项,以及支持各功能项正常运行的系统结构,因此当确定出异常功能项为功能项1,并且通过查询功能项参数列表确定支持功能项1运行的系统结构为驱动程序和分布式框架,在将驱动程序和分布式框架作为目标系统结构。当然,本实施方式中仅是举例说明,而并不对确定目标系统结构的具体方式进行限定。
步骤S205,对确定出的目标系统结构进行调试。
具体的说,本实施方式中所确定出的目标系统结构可以是软件结构也可以是硬件结构,或者软件结构或硬件结构的组合,本实施方式中并不对目标系统结构的具体类型进行限定。并且在确定出目标系统结构后,会对目标系统结构进行调试。
其中,在对目标系统结构进行调试时,针对硬件结构可以采用新的系统结构对当前所使用的目标系统结构进行更换;针对软件结构可以进行指定参数进行调整,例如,功能项1的运行效率较低,通过提高目标系统结构的参数X可以提高运行效率的情况下,则可以增大参数X的数值,当然,本实施方式中仅是举例说明,而并不对目标系统结构的具体调试方式进行限定。
本实施方式中,根据待调试芯片系统的功能项构建算法模型,将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,根据在各系统上运行过程中产生的数据所构建的计算流程图的对比结果对异常功能进行定位和调试,提高了智能芯片系统调试的效率以及准确性。
实施例三
图5为本发明实施例四提供的一种智能芯片系统的调试装置的结构示意图,该装置可以执行上述各实施例中涉及到的智能芯片系统的调试方法。该装置可采用软件和/或硬件的方式实现,如图5所示,智能芯片系统的调试装置具体包括:算法模型和数据获取模块构建模块310、计算流程图构建模块320和芯片系统调试模块330。
算法模型和数据获取模块构建模块310,用于根据待调试芯片系统的功能项构建算法模型,并针对算法模型构建数据获取模块;
计算流程图构建模块320,用于将算法模型分别在待调试芯片系统和已验证的标准芯片系统上运行,并根据数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
芯片系统调试模块330,用于根据不同芯片系统所对应的计算流程图确定出待调试芯片系统的异常功能项,并针对异常功能项对待调试芯片系统进行调试。
可选的,算法模型和数据获取模块构建模块包括算法模型构建单元,用于确定待调试芯片系统所对应的功能项,并根据功能项设定模型参数,其中,模型参数包括模型输入、模型权重、随机种子和迭代次数;
根据模型参数进行代码编译,以构建算法模型,其中,算法模型以代码的形式反映功能项。
可选的,算法模型和数据获取模块构建模块包括数据获取模块构建单元,用于针对算法模型确定采集数据的指定类型,其中,指定类型包括模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数;
针对指定类型在算法模型中的指定位置插入采集探针,其中,采集探针在被启动时用于对指定类型的算法模型运行数据进行采集;
根据指定类型和采集探针构建数据获取模块。
可选的,计算流程图构建模块,用于当算法模型在运行过程中触发到数据获取模块的采集探针时,通过采集探针对算法模型所产生的指定类型的运行数据进行采集;
针对采集的运行数据分别按照采集顺序构建标识;
针对待调试芯片系统上所采集的运行数据以及所构建的标识构建第一前向计算流程图,并针对标准芯片系统上所采集的运行数据以及所构建的标识构建第二前向计算流程图,
其中,第一前向计算流程图和第二前向计算流程图中的节点分别与算法模型中的代码行对应。
可选的,芯片系统调试模块包括异常功能项确定单元,用于将第一前向计算流程图和第二前向计算流程图进行对比获取目标节点;
确定算法模型中与目标节点所对应的目标代码行,将目标代码行所反映的功能项作为待调试芯片系统的异常功能项。
可选的,异常功能项确定单元,还用于将第一前向计算流程图和第二前向计算流程图各对应节点的张量组合数据进行对比获取相似度值;
将相似度值小于预设阈值的张量组合数据所对应的节点作为目标节点。
可选的,芯片系统调试模块包括调试单元,用于确定待调试芯片系统中支持异常功能项运行的目标系统结构,其中,目标系统结构包括人工智能芯片、驱动程序、编程模型、加速库、AI框架或分布式框架;
对确定出的目标系统结构进行调试。
本发明实施例所提供的智能芯片系统的调试装置可执行本发明任意实施例所提供的智能芯片系统的调试方法,具备执行方法相应的功能模块和有益效果。
实施例四
图6示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图6所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如智能芯片系统的调试方法。
在一些实施例中,智能芯片系统的调试方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的智能芯片系统的调试方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行智能芯片系统的调试方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种智能芯片系统的调试方法;
根据待调试芯片系统的功能项构建算法模型,并针对所述算法模型构建数据获取模块;
将所述算法模型分别在所述待调试芯片系统和已验证的标准芯片系统上运行,并根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,并针对所述异常功能项对所述待调试芯片系统进行调试。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的智能芯片系统的调试方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种智能芯片系统的调试方法,其特征在于,包括:
根据待调试芯片系统的功能项构建算法模型,并针对所述算法模型构建数据获取模块;
将所述算法模型分别在所述待调试芯片系统和已验证的标准芯片系统上运行,并根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,并针对所述异常功能项对所述待调试芯片系统进行调试。
2.根据权利要求1所述的方法,其特征在于,所述根据待调试芯片系统的功能项构建算法模型,包括:
确定所述待调试芯片系统所对应的功能项,并根据所述功能项设定模型参数,其中,所述模型参数包括模型输入、模型权重、随机种子和迭代次数;
根据所述模型参数进行代码编译,以构建所述算法模型,其中,所述算法模型以代码的形式反映所述功能项。
3.根据权利要求1所述的方法,其特征在于,所述针对所述算法模型构建数据获取模块,包括:
针对所述算法模型确定采集数据的指定类型,其中,所述指定类型包括模型初始化参数、前向计算流数据、反向计算流数据和优化器更新后的模型参数;
针对所述指定类型在所述算法模型中的指定位置插入采集探针,其中,所述采集探针在被启动时用于对所述指定类型的算法模型运行数据进行采集;
根据所述指定类型和所述采集探针构建所述数据获取模块。
4.根据权利要求3所述的方法,其特征在于,所述根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图,包括:
当所述算法模型在运行过程中触发到所述数据获取模块的采集探针时,通过所述采集探针对所述算法模型所产生的指定类型的运行数据进行采集;
针对采集的所述运行数据分别按照采集顺序构建标识;
针对所述待调试芯片系统上所采集的运行数据以及所构建的标识构建第一前向计算流程图,并针对所述标准芯片系统上所采集的运行数据以及所构建的标识构建第二前向计算流程图,
其中,所述第一前向计算流程图和所述第二前向计算流程图中的节点分别与所述算法模型中的代码行对应。
5.根据权利要求4所述的方法,其特征在于,所述根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,包括:
将所述第一前向计算流程图和所述第二前向计算流程图进行对比获取目标节点;
确定所述算法模型中与所述目标节点所对应的目标代码行,将所述目标代码行所反映的功能项作为所述待调试芯片系统的异常功能项。
6.根据权利要求5所述的方法,其特征在于,所述将所述第一前向计算流程图和所述第二前向计算流程图进行对比获取目标节点,包括:
将所述第一前向计算流程图和所述第二前向计算流程图各对应节点的张量组合数据进行对比获取相似度值;
将相似度值小于预设阈值的张量组合数据所对应的节点作为所述目标节点。
7.根据权利要求1所述的方法,其特征在于,所述针对所述异常功能项对所述待调试芯片系统进行调试,包括:
确定所述待调试芯片系统中支持所述异常功能项运行的目标系统结构,其中,所述目标系统结构包括人工智能芯片、驱动程序、编程模型、加速库、AI框架或分布式框架;
对确定出的所述目标系统结构进行调试。
8.一种智能芯片系统的调试装置,其特征在于,包括:
算法模型和数据获取模块构建模块,用于根据待调试芯片系统的功能项构建算法模型,并针对所述算法模型构建数据获取模块;
计算流程图构建模块,用于将所述算法模型分别在所述待调试芯片系统和已验证的标准芯片系统上运行,并根据所述数据获取模块所采集的运行数据分别构建针对不同芯片系统的计算流程图;
芯片系统调试模块,用于根据不同芯片系统所对应的计算流程图确定出所述待调试芯片系统的异常功能项,并针对所述异常功能项对所述待调试芯片系统进行调试。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7中任一项所述的方法。
10.一种计算机可执行指令的存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述方法。
CN202311239477.0A 2023-09-25 2023-09-25 一种智能芯片系统的调试方法、装置、设备及介质 Pending CN117271241A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311239477.0A CN117271241A (zh) 2023-09-25 2023-09-25 一种智能芯片系统的调试方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311239477.0A CN117271241A (zh) 2023-09-25 2023-09-25 一种智能芯片系统的调试方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN117271241A true CN117271241A (zh) 2023-12-22

Family

ID=89200392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311239477.0A Pending CN117271241A (zh) 2023-09-25 2023-09-25 一种智能芯片系统的调试方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN117271241A (zh)

Similar Documents

Publication Publication Date Title
US9588876B2 (en) Estimating likelihood of code changes introducing defects
US10693711B1 (en) Real-time event correlation in information networks
US20190087311A1 (en) Machine learning based ranking of test cases for software development
CN108491302B (zh) 一种检测spark集群节点状态的方法
CN113657715A (zh) 一种基于核密度估计调用链的根因定位方法及系统
CN102918501A (zh) 用于分析多线程应用的性能的方法和系统
CN114124567A (zh) 基于大数据漏洞挖掘的云服务处理方法及人工智能系统
CN113568821A (zh) 一种ai芯片计算性能的测试方法、装置、设备、及介质
US9460243B2 (en) Selective importance sampling
WO2021109874A1 (zh) 拓扑图生成方法、异常检测方法、装置、设备及存储介质
CN112148713A (zh) 异构数据库之间数据迁移方法及装置
CN117271241A (zh) 一种智能芯片系统的调试方法、装置、设备及介质
CN115587017A (zh) 数据处理方法、装置、电子设备及存储介质
CN115481594B (zh) 计分板实现方法、计分板、电子设备及存储介质
CN116382658A (zh) Ai模型的编译方法、装置、计算机设备及存储介质
CN115794473A (zh) 一种根因告警的定位方法、装置、设备及介质
US11321644B2 (en) Software developer assignment utilizing contribution based mastery metrics
JP2022124240A (ja) 診断パターン生成方法及び計算機
US7650579B2 (en) Model correspondence method and device
CN116401113B (zh) 一种异构众核架构加速卡的环境验证方法、装置及介质
US20230222276A1 (en) Programmatically generated reduced fault injections for functional safety circuits
US9818078B1 (en) Converting a non-workflow program to a workflow program using workflow inferencing
EP4332777A1 (en) Testing and updating a machine learning model and test data
Kustarev et al. Functional monitoring of SoC with dynamic actualization of behavioral model
CN113204478B (zh) 测试单元的运行方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination