CN112348179B - 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器 - Google Patents

一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器 Download PDF

Info

Publication number
CN112348179B
CN112348179B CN202011352915.0A CN202011352915A CN112348179B CN 112348179 B CN112348179 B CN 112348179B CN 202011352915 A CN202011352915 A CN 202011352915A CN 112348179 B CN112348179 B CN 112348179B
Authority
CN
China
Prior art keywords
instruction
resources
information
instructions
type
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.)
Active
Application number
CN202011352915.0A
Other languages
English (en)
Other versions
CN112348179A (zh
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.)
Meifang Science And Technology Tianjin Co ltd
Original Assignee
Meifang Science And Technology Tianjin 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 Meifang Science And Technology Tianjin Co ltd filed Critical Meifang Science And Technology Tianjin Co ltd
Priority to CN202011352915.0A priority Critical patent/CN112348179B/zh
Publication of CN112348179A publication Critical patent/CN112348179A/zh
Application granted granted Critical
Publication of CN112348179B publication Critical patent/CN112348179B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种高效的卷积神经网络运算指令集架构构建方法,其中,指令由指令包进行组织,每个指令包包含多条指令;每条所述指令均包含用于标识本条指令所在指令包内的序号,以及指令包的起始和结尾标志的opcode信息;每个所述指令包均包含instinfo、instdepend、instpara信息;所述instinfo信息用于标识指令包的类型;所述instdepend信息,用于指定指令所需的硬件资源,以及指令间的依赖关系,结合调度策略,确保指令在乱序发射状态下得到正确的执行结果;所述instpara信息,用于指定指令包的其他参数信息。本发明所述的高效的卷积神经网络运算指令集架构及装置、服务器能够有效地提高卷积指令执行的并行度,加速卷积计算。

Description

一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器
技术领域
本发明属于人工智能神经网络技术领域,尤其是涉及一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器。
背景技术
卷积神经网络是近年来广泛应用于模式识别、图像处理等领域的一种高效识别算法,它具有结构简单、训练参数少和适应性强等特点。由于CNN(Convolutional NeuralNetworks)的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显示的特征抽取,而隐式地从训练数据中进行学习;再者由于同一特征映射面上的神经元权值相同,所以网络可以并行学习,这也是卷积网络相对于神经元彼此相连网络的一大优势。
在已有的计算机领域应用中,与卷积运算相关的应用十分普遍。在现有技术中,进行卷积神经网络运算的已知方案是使用通用处理器,该方法通过通用寄存器堆和通用功能部件来执行通用指令,从而执行卷积神经网络运算。然而,通用处理器多用于标量计算,在进行卷积神经网络运算时运算性能很低。
发明内容
有鉴于此,为克服上述缺陷,本发明旨在提出一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器。
为达到上述目的,本发明的技术方案是这样实现的:
第一方面,本发明提供了一种高效的卷积神经网络运算指令集架构,指令由指令包进行组织,每个指令包包含多条指令;
每条所述指令均包含用于标识本条指令所在指令包内的序号,以及指令包的起始和结尾标志的opcode信息;
每个所述指令包均包含instinfo、instdepend、instpara信息;
所述instinfo信息用于标识指令包的类型,所述指令包的类型为多种,每种类型的指令包对应由一个独立的执行单元执行,不同类型的指令包由控制模块分发到对应的执行单元;
所述instdepend信息,用于指定指令所需的硬件资源,以及指令间的依赖关系,结合调度策略,确保指令在乱序发射状态下得到正确的执行结果;
所述instpara信息,用于指定指令包的其他参数信息。
进一步的,每个指令包所包含的指令条数是可变的,每个指令包包含的指令条数由该指令包所包含的信息量决定,每条指令占用64Bit内存空间。
进一步的,同一类型的指令包由执行单元按顺序执行;
多个执行单元之间可并行执行指令包。
进一步的,指令包的类型包括Load FM、load WT、Cal和Save;
所述的Load FM类型的指令包,用于将卷积运算所需的输入特征图数据由片外空间加载到片内空间;
所述的load WT类型的指令包,用于将卷积运算所需的权重和偏置参数由片外空间加载到片内空间;
所述的Cal类型的指令包,用于进行卷积运算,并将运算结果存储到片内空间;
所述的Save类型的指令包,用于将卷积运算得到的运算结果由片内空间存储到片外空间。
进一步的,所述硬件资源包括Feature Map资源、Weight资源和Save资源;FeatureMap资源用来存储卷积运算所需的输入特征图数据,Weight资源用来存储卷积运算所需的权重和偏置参数,Save资源用来存储卷积运算的结果,每种资源都有ping和pong两份,且ping和pong都有独立的ready信号。
进一步的,所述的调度策略执行过程如下:
Load FM类型的指令包需要用到Feature Map资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;load WT和Save类型的指令包同理,load WT类型的指令包需要用到Weight资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Save类型的指令包需要用到Save资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Cal类型的指令包需要用到上述的Feature Map资源、Weight资源、以及Save资源,只有当指令所需的三种资源的ready信号都被置位时,指令才能够执行,否则阻塞,直到三种资源的ready信号均被置位。
进一步的,不同类型的指令包,instpara信息包含的内容不同,具体如下:
所述的Load FM类型的指令包,instpara信息包括输入图片外内存起始地址、片内内存起始地址、输入图的总体尺寸、加载的输入通道数ci_num、横向像素点个数w_num和纵向像素点个数h_num信息;
所述的Load WT类型的指令包,instpara信息包括输入图片外内存起始地址、片内内存起始地址、加载的数据量load_num信息;
所述的Cal类型的指令包,instpara信息包括Feature Map资源的片内起始地址、Weight资源的片内起始地址、Save资源的片内起始地址、激活函数类型、卷积核尺寸、输入图padding尺寸、卷积步长stride、输入图通道数ci_num、输出图通道数co_num、输入图的横向像素点个数w_num和纵向像素点个数h_num信息;
所述的Save类型的指令包,instpara信息包括片外内存起始地址、片内内存起始地址、输出图的总体尺寸(包括横向尺寸WSIZE和纵向尺寸HSIZE)、输出图通道数co_num、横向像素点个数w_num和纵向像素点个数h_num信息。
第二方面,本发明提供了一种装置,包括处理器以及与处理器通信连接的存储器,所述处理器执行任务时应用上述第一方面所述的积神经网络运算指令集架构。
第三方面,本发明提供了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行时应用上述第一方面所述的积神经网络运算指令集架构。
相对于现有技术,本发明所述的高效的卷积神经网络运算指令集架构及装置、服务器具有以下优势:
本发明所述的高效的卷积神经网络运算指令集架构能够有效地提高卷积指令执行的并行度,加速卷积计算,有效解决目前通用处理器的运算性能低下,无法满足现阶段卷积神经网络对计算性能的要求的问题。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明中一个包含了3条指令的指令包结构图;
图2为本发明中一次正常的卷积计算流程图;
图3为本发明中四组卷积指令的执行顺序图;
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
本实施例提供了一种高效的卷积神经网络运算指令集架构,指令是按照指令包进行组织的,每个指令包所包含的指令条数是可变的,具体每个指令包包含的指令条数由该指令包所包含信息的多少决定,每条指令占用64Bit内存空间。
所述的每条指令都必然包含opcode信息,用于标识本条指令所在指令包内的序号,以及指令包的起始和结尾标志。
所述的每个指令包都必然包含instinfo,instdepend,instpara信息。一个包含了3条指令的指令包,其结构如图1所示。
所述的instinfo信息用来标识指令包的类型,指令包的类型包括Load FM,loadWT,Cal和Save四种:
所述的Load FM类型的指令包,作用是将卷积运算所需的输入特征图数据由片外空间加载到片内空间;
所述的load WT类型的指令包,作用是将卷积运算所需的权重(Wt)和偏置(Bias)参数由片外空间加载到片内空间;
所述的Cal类型的指令包,作用是进行卷积运算,并将运算结果存储到片内空间;
所述的Save类型的指令包,作用是将卷积运算得到的运算结果由片内空间存储到片外空间。
一次正常的卷积计算流程如2所示:
第一步:执行Load FM类型的指令包,将卷积运算所需的输入特征图数据由片外空间加载到片内空间。
第二步:执行load WT类型的指令包,将卷积运算所需的权重(Wt)和偏置(Bias)参数由片外空间加载到片内空间。
第三步:执行Cal类型的指令包,进行卷积运算,并将运算结果存储到片内空间。
第四步:执行Save类型的指令包,将卷积运算得到的运算结果由片内空间存储到片外空间。
原始的指令是按照Load FM1、load WT1、Cal1、Save1、Load FM2、load WT2、Cal2、Save2...Load FMn、load WTn、Caln、Saven...的顺序排列的,
四种不同类型的指令包分别由四个独立的执行单元执行,有一个专门的控制模块负责分发四种不同类型的指令包到不同的执行单元,同一种类型的指令包是顺序执行的,比如Load FM执行单元是按照Load FM1、Load FM2、Load FMn的顺序进行执行。不同类型的指令包之间的执行顺序是不确定,在保证计算结果正确的条件下,四种不同类型的指令包是可以并行执行的。
所述的instdepend信息,用来指定指令所需的硬件资源,以及指令间的依赖关系,结合特定的调度策略,可以确保指令在乱序发射状态下得到正确的执行结果。
所述的特定的调度策略,其原理如下:
实际的硬件中有三种资源,Feature Map资源,Weight资源和Save资源。FeatureMap资源用来存储卷积运算所需的输入特征图数据,Weight资源用来存储卷积运算所需的权重(Wt)和偏置(Bias)参数,Save资源用来存储卷积运算的结果,每种资源都有ping和pong两份,且ping和pong都有独立的ready信号。
Load FM类型的指令包需要用到Feature Map资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;load WT和Save类型的指令包同理,load WT类型的指令包需要用到Weight资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Save类型的指令包需要用到Save资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Cal类型的指令包需要用到上述的Feature Map资源,Weight资源,以及Save资源,只有当指令所需的三种资源的ready信号都被置位时,指令才能够执行,否则阻塞,直到三种资源的ready信号都被置位;
假如神经网络的某层卷积运算需要进行四组卷积操作才能完成整个输入图的计算,考虑到每种类型的指令执行时间有所差别,四组指令的执行顺序如图3所示,在初始状态下,Feature Map资源和Weight资源ready信号都被清零,Save资源的ready信号被置位。此时Load FM类型的指令和load WT类型的指令可立即执行,Save类型的指令和Cal类型的指令被阻塞;Load FM1将输入特征图的部分数据从片外空间加载到片内空间,占用FeatureMap的ping资源,指令执行完成后将Feature Map的ping资源的ready信号置位,信号置位一方面会阻塞下一条占用Feature Map的ping资源的Load FM类型指令(Load FM3)的执行,另一方面会激活需要Feature Map的ping资源的Cal类型指令(Cal1)的执行;Load WT1将权重(Wt)和偏置(Bias)参数由片外空间加载到片内空间,占用Weight的ping资源,指令执行完成后将Weight的ping资源的ready信号置位,信号置位一方面会阻塞下一条占用Weight的ping资源的Load WT类型指令(Load WT3)的执行,另一方面会激活需要Weight的ping资源的Cal类型指令(Cal1)的执行;Load FM2和Load WT2指令分别占用Feature Map和Weight的pong资源,Load FM2会在Load FM1执行完成后立即执行,执行完成后将Feature Map的pong资源的ready信号置位,Load WT2会在Load WT1执行完成后立即执行,执行完成后将Weight的pong资源的ready信号置位,由于Load FM2执行完成后Feature Map的ping资源的ready信号处于置位状态,所以Load FM3无法立即执行,同理Load WT3也无法立即执行;Load FM1和Load WT1全部执行完成后,Cal1指令满足执行条件,开始执行指令进行卷积运算,Cal1指令利用Feature Map的ping资源和Weight的ping资源作为输入,结果放入Save的ping资源,Cal1指令执行完成后,将Feature Map、Weight和Save的ping资源的ready信号全部清零,一方面会阻塞需要Feature Map、Weight和Save的ping资源的Cal3指令的执行,另一方面会激活Load FM3、Load WT3和Save1执行;Save1会将计算结果由片内空间保存到片外空间,同时将Save资源的ready信号置位,信号置位一方面会阻塞Save3指令的执行,另一方面会激活Cal2指令的执行。以此类推,后续指令按照如图所示的顺序相继执行,最终得到正确的结果。
在这种调度策略下,可以保证计算结果正确,且最大限度的提高指令的并行度。
所述的instpara信息,用来指定指令包的其他参数信息,
所述的Load FM类型的指令包,instpara包括输入图片外内存起始地址、片内内存起始地址、输入图的总体尺寸(包括横向尺寸WSIZE和纵向尺寸HSIZE)、加载的输入通道数ci_num、横向像素点个数w_num和纵向像素点个数h_num等信息;
所述的Load WT类型的指令包,instpara包括输入图片外内存起始地址、片内内存起始地址、加载的数据量load_num等信息;
所述的Cal类型的指令包,instpara包括Feature Map资源的片内起始地址、Weight资源的片内起始地址、Save资源的片内起始地址、激活函数类型、卷积核尺寸、输入图padding尺寸、卷积步长stride、输入图通道数ci_num、输出图通道数co_num、输入图的横向像素点个数w_num和纵向像素点个数h_num等信息;
所述的Save类型的指令包,instpara包括片外内存起始地址、片内内存起始地址、输出图的总体尺寸(包括横向尺寸WSIZE和纵向尺寸HSIZE)、输出图通道数co_num、横向像素点个数w_num和纵向像素点个数h_num等信息;
本实施例还提供了一种装置,包括处理器以及与处理器通信连接的存储器,所述处理器执行任务时应用上述实施例所述的积神经网络运算指令集架构,处理器和存储器能够为现有的处理器和存储器,在处理运算任务时,应用本申请的积神经网络运算指令集架构。
本实施例还提供了一种服务器,包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行时应用本发明所述的积神经网络运算指令集架构,其中处理器和存储器均可以为多个,能够为现有的处理器和存储器,服务器的具体结构能够为现有技术,具体方案不在赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种高效的卷积神经网络运算指令集架构构建方法,其特征在于:指令由指令包进行组织,每个指令包包含多条指令;
每条所述指令均包含opcode信息,所述opcode信息用于标识本条指令所在指令包内的序号,以及作为指令包的起始和结尾标志;
每个所述指令包均包含instinfo、instdepend、instpara信息;
所述instinfo信息用于标识指令包的类型,所述指令包的类型为多种,每种类型的指令包对应由一个独立的执行单元执行,不同类型的指令包由控制模块分发到对应的执行单元;
所述instdepend信息,用于指定指令所需的硬件资源,以及指令间的依赖关系,结合调度策略,确保指令在乱序发射状态下得到正确的执行结果;
所述instpara信息,用于指定指令包的其他参数信息;
指令包的类型包括Load FM、load WT、Cal和Save;
所述的Load FM类型的指令包,用于将卷积运算所需的输入特征图数据由片外空间加载到片内空间;
所述的load WT类型的指令包,用于将卷积运算所需的权重和偏置参数由片外空间加载到片内空间;
所述的Cal类型的指令包,用于进行卷积运算,并将运算结果存储到片内空间;
所述的Save类型的指令包,用于将卷积运算得到的运算结果由片内空间存储到片外空间;
所述硬件资源包括Feature Map资源、Weight资源和Save资源;Feature Map资源用来存储卷积运算所需的输入特征图数据,Weight资源用来存储卷积运算所需的权重和偏置参数,Save资源用来存储卷积运算的结果,每种资源都有ping和pong两份,且ping和pong都有独立的ready信号;
所述的调度策略执行过程如下:
Load FM类型的指令包需要用到Feature Map资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;load WT和Save类型的指令包同理,load WT类型的指令包需要用到Weight资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Save类型的指令包需要用到Save资源,只有当指令所需资源的ready信号清零时,指令才能够执行,否则阻塞,直到所需资源的ready信号清零;Cal类型的指令包需要用到上述的Feature Map资源、Weight资源、以及Save资源,只有当指令所需的三种资源的ready信号都被置位时,指令才能够执行,否则阻塞,直到三种资源的ready信号均被置位。
2.根据权利要求1所述的高效的卷积神经网络运算指令集架构构建方法,其特征在于:每个指令包所包含的指令条数是可变的,每个指令包包含的指令条数由该指令包所包含的信息量决定,每条指令占用64Bit内存空间。
3.根据权利要求1所述的高效的卷积神经网络运算指令集架构构建方法,其特征在于:同一类型的指令包由执行单元按顺序执行;
多个执行单元之间可并行执行指令包。
4.根据权利要求1所述的高效的卷积神经网络运算指令集架构构建方法,其特征在于,不同类型的指令包,instpara信息包含的内容不同,具体如下:
所述的Load FM类型的指令包,instpara信息包括输入图的片外内存起始地址、片内内存起始地址、输入图的总体尺寸、加载的输入通道数ci_num、横向像素点个数w_num和纵向像素点个数h_num信息;
所述的Load WT类型的指令包,instpara信息包括输入图片外内存起始地址、片内内存起始地址、加载的数据量load_num信息;
所述的Cal类型的指令包,instpara信息包括Feature Map资源的片内起始地址、Weight资源的片内起始地址、Save资源的片内起始地址、激活函数类型、卷积核尺寸、输入图padding尺寸、卷积步长stride、输入图通道数ci_num、输出图通道数co_num、输入图的横向像素点个数w_num和纵向像素点个数h_num信息;
所述的Save类型的指令包,instpara信息包括片外内存起始地址、片内内存起始地址、输出图的总体尺寸、输出图通道数co_num、横向像素点个数w_num和纵向像素点个数h_num信息;其中,输出图的总体尺寸包括横向尺寸WSIZE和纵向尺寸HSIZE。
5.一种装置,包括处理器以及与处理器通信连接的存储器,其特征在于:所述处理器执行任务时应用上述权利要求1-4任一所述的积神经网络运算指令集架构构建方法。
6.一种服务器,其特征在于:包括至少一个处理器,以及与所述处理器通信连接的存储器,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述处理器执行时应用权利要求1-4任一所述的积神经网络运算指令集架构构建方法。
CN202011352915.0A 2020-11-26 2020-11-26 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器 Active CN112348179B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011352915.0A CN112348179B (zh) 2020-11-26 2020-11-26 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011352915.0A CN112348179B (zh) 2020-11-26 2020-11-26 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器

Publications (2)

Publication Number Publication Date
CN112348179A CN112348179A (zh) 2021-02-09
CN112348179B true CN112348179B (zh) 2023-04-07

Family

ID=74364971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011352915.0A Active CN112348179B (zh) 2020-11-26 2020-11-26 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器

Country Status (1)

Country Link
CN (1) CN112348179B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115393174B (zh) * 2022-10-27 2023-03-24 之江实验室 一种粗粒度的图像神经网络加速器指令集架构方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329936A (zh) * 2016-04-29 2017-11-07 北京中科寒武纪科技有限公司 一种用于执行神经网络运算以及矩阵/向量运算的装置和方法
CN109272109A (zh) * 2018-10-30 2019-01-25 北京地平线机器人技术研发有限公司 神经网络模型的指令调度方法及装置
CN110516789A (zh) * 2019-08-09 2019-11-29 苏州浪潮智能科技有限公司 卷积网络加速器中指令集的处理方法、装置及相关设备
CN110659069A (zh) * 2018-06-28 2020-01-07 赛灵思公司 用于执行神经网络计算的指令调度方法及相应计算系统
CN111352896A (zh) * 2020-03-03 2020-06-30 腾讯科技(深圳)有限公司 人工智能加速器、设备、芯片以及数据处理方法
CN111860813A (zh) * 2016-04-29 2020-10-30 中科寒武纪科技股份有限公司 一种用于执行卷积神经网络正向运算的装置和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11093225B2 (en) * 2018-06-28 2021-08-17 Xilinx, Inc. High parallelism computing system and instruction scheduling method thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107329936A (zh) * 2016-04-29 2017-11-07 北京中科寒武纪科技有限公司 一种用于执行神经网络运算以及矩阵/向量运算的装置和方法
CN111860813A (zh) * 2016-04-29 2020-10-30 中科寒武纪科技股份有限公司 一种用于执行卷积神经网络正向运算的装置和方法
CN110659069A (zh) * 2018-06-28 2020-01-07 赛灵思公司 用于执行神经网络计算的指令调度方法及相应计算系统
CN109272109A (zh) * 2018-10-30 2019-01-25 北京地平线机器人技术研发有限公司 神经网络模型的指令调度方法及装置
CN110516789A (zh) * 2019-08-09 2019-11-29 苏州浪潮智能科技有限公司 卷积网络加速器中指令集的处理方法、装置及相关设备
CN111352896A (zh) * 2020-03-03 2020-06-30 腾讯科技(深圳)有限公司 人工智能加速器、设备、芯片以及数据处理方法

Also Published As

Publication number Publication date
CN112348179A (zh) 2021-02-09

Similar Documents

Publication Publication Date Title
US7996581B2 (en) DMA engine
US7418576B1 (en) Prioritized issuing of operation dedicated execution unit tagged instructions from multiple different type threads performing different set of operations
CN112149811A (zh) 调度感知张量分发模块
EP3451238A1 (en) Apparatus and method for executing pooling operation
CN112348179B (zh) 一种高效的卷积神经网络运算指令集架构构建方法及装置、服务器
CN110991619A (zh) 神经网络处理器、芯片和电子设备
CN112905530A (zh) 片上架构、池化计算加速器阵列、单元以及控制方法
WO2021108122A1 (en) Hierarchical partitioning of operators
CN113449841A (zh) 插入转换算子的方法和装置
CN111047036A (zh) 神经网络处理器、芯片和电子设备
CN114429214A (zh) 运算单元、相关装置和方法
US9606802B2 (en) Processor system with predicate register, computer system, method for managing predicates and computer program product
CN112348182A (zh) 一种神经网络maxout层计算装置
US11500962B1 (en) Emulating fine-grained sparsity in a systolic array
CN108388943B (zh) 一种适用于神经网络的池化装置及方法
CN111047035A (zh) 神经网络处理器、芯片和电子设备
US11550736B1 (en) Tensorized direct memory access descriptors
US20210224632A1 (en) Methods, devices, chips, electronic apparatuses, and storage media for processing data
CN111201525A (zh) 运算电路以及运算方法
US10997277B1 (en) Multinomial distribution on an integrated circuit
CN111860772A (zh) 一种用于执行人工神经网络pooling运算的装置和方法
US6957326B1 (en) Methods and apparatuses for executing threads
US20230195651A1 (en) Host device performing near data processing function and accelerator system including the same
CN117291240B (zh) 卷积神经网络加速器及电子设备
US11983128B1 (en) Multidimensional and multiblock tensorized direct memory access descriptors

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
GR01 Patent grant
GR01 Patent grant