CN109359732B - 一种芯片及基于其的数据处理方法 - Google Patents

一种芯片及基于其的数据处理方法 Download PDF

Info

Publication number
CN109359732B
CN109359732B CN201811156129.6A CN201811156129A CN109359732B CN 109359732 B CN109359732 B CN 109359732B CN 201811156129 A CN201811156129 A CN 201811156129A CN 109359732 B CN109359732 B CN 109359732B
Authority
CN
China
Prior art keywords
chip
data
calculation
processed
layer
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
CN201811156129.6A
Other languages
English (en)
Other versions
CN109359732A (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811156129.6A priority Critical patent/CN109359732B/zh
Publication of CN109359732A publication Critical patent/CN109359732A/zh
Priority to TW108125249A priority patent/TWI731373B/zh
Priority to SG11202010628SA priority patent/SG11202010628SA/en
Priority to PCT/CN2019/101069 priority patent/WO2020063184A1/zh
Priority to EP19867284.2A priority patent/EP3779804A4/en
Application granted granted Critical
Publication of CN109359732B publication Critical patent/CN109359732B/zh
Priority to US17/084,936 priority patent/US11062201B2/en
Priority to US17/373,384 priority patent/US11361217B2/en
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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3871Asynchronous instruction pipeline, e.g. using handshake signals between stages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computer Hardware Design (AREA)
  • Advance Control (AREA)
  • Stored Programmes (AREA)

Abstract

本说明书实施例提供一种芯片及基于其的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行计算任务,所述方法在芯片端执行,包括:获取待处理数据;以及通过由所述嵌入式CPU执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于所述待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。

Description

一种芯片及基于其的数据处理方法
技术领域
本说明书实施例涉及数据处理技术领域,更具体地,涉及一种芯片及基于其的数据处理方法。
背景技术
随着AI技术的发展,其对计算量的需求越来越大,特别是作为线上服务的神经网络预测对处理时延有着相当苛刻的要求,在该情况下,服务器CPU上跑的软件通常满足不了这种要求。现有技术中,通过硬件加速的方法来缩短这种处理时延,在该情况中,需要硬件具备一定的灵活性,以满足神经网络结构的升级以及待处理数据长短的变化。当程序遇到一大段计算量时,它会把待处理的数据通过PCIE总线发给芯片,芯片算完之后再通过PCIE总线将结果传回程序内存。芯片上的运算单元通常被设计成较通用的,通过服务器CPU下发的控制参数来指定具体怎么运算,比如通过一个通用的卷积运算单元来处理各种卷积操作。但如果一段程序包含有多次芯片运算单元的调用,服务器CPU和芯片之间数据交互的开销就会非常大。目前通用的做法是在芯片上把各个运算单元如卷积的控制设计成格式化的二进制指令,然后把神经网络的各层调用映射到这些指令上、并集合成一个序列,再下放到芯片上,芯片上的逻辑解析每一条指令并启动相应的运算单元。
因此,需要一种更有效的基于芯片的数据处理方案。
发明内容
本说明书实施例旨在提供一种更有效的基于芯片的数据处理方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种基于芯片的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行计算任务,所述方法在芯片端执行,包括:
获取待处理数据;以及
通过由所述嵌入式CPU执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于所述待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。
本说明书另一方面提供一种基于芯片的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行神经网络的预测计算,所述方法在芯片端执行,包括:
获取待处理数据;以及
基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
在一个实施例中,在所述数据处理方法中,所述芯片与服务器连接。
在一个实施例中,在所述数据处理方法中,所述待处理数据通过所述服务器传送至所述芯片。
在一个实施例中,在所述数据处理方法中,所述嵌入式CPU通过运行基于程序的汇编指令而执行所述步骤,其中,所述程序由所述服务器传送至所述芯片。
在一个实施例中,在所述数据处理方法中,所述程序为C语言程序。
在一个实施例中,在所述数据处理方法中,调用所述多个算子单元包括,通过C语言程序中的函数调用,调用所述多个算子单元。
在一个实施例中,在所述数据处理方法中,所述芯片还包括DMA模块,所述方法还包括,在获取所述处理结果之后,通过所述嵌入式CPU控制所述DMA模块,以将所述处理结果写入所述服务器的内存中。
在一个实施例中,在所述数据处理方法中,调用所述多个算子单元包括,异步地调用所述多个算子单元。
在一个实施例中,在所述数据处理方法中,配置所述多个算子单元包括,对所述待处理数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
在一个实施例中,在所述数据处理方法中,所述芯片用于执行多种神经网络的预测计算,其中,获取待处理数据包括,获取待处理数据及其对应的神经网络的类型,其中,基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果包括,基于所述待处理数据及其对应的神经网络的类型,执行该类型的神经网络中的每一层的计算,以获取处理结果。
本说明书另一方面提供一种芯片,用于执行计算任务,所述芯片包括:
多个算子单元,以及
嵌入式CPU,配置为,通过执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于从所述芯片的外部输入的待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理的结果。
本说明书另一方面提供一种芯片,用于执行神经网络的预测计算,所述芯片包括:
多个算子单元,以及
嵌入式CPU,配置为,基于从所述芯片的外部输入的待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
在一个实施例中,所述芯片与服务器连接。
在一个实施例中,在所述芯片中,所述待处理数据通过所述服务器传送至所述芯片。
在一个实施例中,在所述芯片中,所述嵌入式CPU通过运行基于程序的汇编指令而执行所述步骤,其中,所述程序由所述服务器传送至所述芯片。
在一个实施例中,在所述芯片中,所述程序为C语言程序。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,通过C语言中的函数调用,调用所述多个算子单元。
在一个实施例中,在所述芯片中,所述芯片还包括DMA模块,所述嵌入式CPU还配置为,在获取所述处理结果之后,通过控制所述DMA模块,以将所述处理结果写入所述服务器的内存中。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,异步地调用所述多个算子单元。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,对所述待处理数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
在一个实施例中,在所述芯片中,所述芯片为ASIC芯片或FPGA芯片。
在一个实施例中,所述芯片用于执行多种神经网络的预测计算,其中,所述嵌入式CPU还配置为,基于从所述芯片的外部输入的待处理数据及其对应的神经网络的类型,执行所述类型的神经网络中的每一层的计算,以获取处理结果。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项数据处理方法。
通过根据本说明书实施例的基于芯片的数据处理方案,因为引入了嵌入式CPU,天然在芯片内部就可以完成较细算子的控制;C语言函数调用的方式又大大节省了程序指令的空间,并且,嵌入式CPU上C程序天然就可以完美地进行控制类型的操作,比如各种if/for/while等嵌套;嵌入式CPU上的C程序可以对输入数据的长度做判断,并灵活产生计算过程中下发给各个算子单元的参数;另外,当所述神经网络结构升级时,可通过服务器向芯片传入新的程序,以进行更新的神经网络的预测计算。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出根据本说明书实施例的数据处理系统的100的示意图;
图2示出根据本说明书实施例的一种基于芯片的数据处理方法;
图3示出了神经网络的示意图;以及
图4示出根据本说明书实施例的一种芯片400。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出根据本说明书实施例的数据处理系统的100的示意图。如图1所示,系统100包括服务器11和芯片12,其例如通过PCIE总线连接。服务器11中包括服务器CPU111和内存112。芯片12中包括嵌入式CPU121、多个算子单元122、以及DMA模块123。该芯片12用于执行计算任务,例如神经网络的预测计算。服务器11在需要通过调用芯片12以进行例如神经网络的预测计算时,其例如通过服务器CPU111将该神经网络预测的待处理数据经PCIE总线从内存传到芯片中。芯片12中的嵌入式CPU121通过运行程序调度各个算子单元122基于所述待处理数据完成神经网络每一层的计算,从而获取最终的处理结果,即神经网络的预测结果。在获取处理结果之后,由嵌入式CPU121控制DMA模块经PCIE总线将该处理结果传回服务器内存112。
图2示出根据本说明书实施例的一种基于芯片的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行计算任务,所述方法在芯片端执行,包括:
在步骤S202,获取待处理数据;以及
在步骤S204,通过由所述嵌入式CPU执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于所述待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。
首先,在步骤S202,获取待处理数据。在一个实施例中,所述芯片与服务器连接。所述服务器在调用该芯片进行计算时,将该待处理数据传送至该芯片。可以理解,该芯片不限于与服务器连接,例如,其可以为独立的用于进行任务计算的硬件,并通过自身的输入模块获取待处理数据。
在一个实施例中,该芯片位于PCIE板卡上,为ASIC芯片或FPGA芯片,所述服务器通过服务器CPU经PCIE总线将所述待处理数据传送到芯片。在一个实施例中,所述服务器通过其中运行的应用程序将所述待处理数据传送到芯片。在一个实施例中,所述芯片可同时接收多个应用程序传送的待处理数据,所述芯片通过嵌入式CPU进行对所述多个待处理数据的收集。
在步骤S204,通过由所述嵌入式CPU执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于所述待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。
嵌入式CPU通过运行基于程序的汇编指令而进行所述计算。所述程序例如为C语言程序。所述芯片例如通过其中的SOC(片上系统编译器),将所述程序翻译成汇编语言程序。其中,所述程序由所述服务器传送至所述芯片。
在进行计算时,所述嵌入式CPU首先通过运行程序配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,所述不同类型的计算例如包括:矩阵相乘的计算、向量相加的计算、非线性运算等等。然后,嵌入式CPU通过继续运行程序以执行具体的计算过程,其中的计算基于所述待处理数据进行的,并且,在计算中遇到各种类型的计算时,通过调用各个相应的算子单元完成该计算。在复杂的计算任务中,可能需要经过多轮的计算,才能获取最终的处理结果,其中,在每轮计算中,都通过预设的程序重新配置算子单元,以适用于该轮的计算需要。
在一个实施例中,所述计算任务例如为神经网络的预测计算。在该情况中,所述嵌入式CPU基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,即神经网络的预测结果。其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
也就是说,对于神经网络的每一层,嵌入式CPU都会重新配置算子单元,并依次进行该层中各个神经元处的计算。从C语言程序的角度看,程序会进行两层的循环。在外层循环中,程序循环n次,其中n是神经网络除输入层之外的层数,以对神经网络除输入层的每一层进行计算。而在内层循环中,即在对每层的计算中,程序循环m次,其中m是神经元的个数,以对每层中的每个神经元进行计算。
图3示出了神经网络的示意图,如图3中所示,左侧的层为输入层,其包括(1)和(2)两个输入神经元,中间的层为隐藏层,其包括(3)、(4)和(5)三个神经元,右侧的层为输出层,其包括输出神经元(6)。其中,在中间层中,在神经元(3)处,其针对上一层神经元的参数分别为W13、W23,在神经元(4)处,参数包括W14、W24,在神经元(5)处,参数包括W15、W25,以及在神经元(6)处,参数包括W36、W46和W56
在进行对图3所示的神经网络的计算中,首先,对中间层进行计算,在该层的计算中,例如包括矩阵相乘的计算、向量相加的计算等,从而,嵌入式CPU可配置与矩阵相乘和向量相加分别对应的两个算子单元,并通过程序循环对神经元(3)、(4)和(5)分别进行计算。例如,在对神经元(3)的计算中,可将从输入层获取的待处理数据和神经元(3)处的参数(W13、W23)输入上述两个算子单元中,以获得该神经元(3)处的中间结果,其可视为神经元(3)处的值。
在完成对中间层的计算(即,获取神经元(3)、(4)和(5)各自的值)之后,嵌入式CPU在外层循环中进入下一次循环,即,对输出层进行计算,在对输出层的计算中例如包括sigmoid函数计算,因此,嵌入式CPU基于运行的程序配置执行sigmoid函数计算的算子单元,并对神经元(6)进行计算。在对神经元(6)的计算中,嵌入式CPU基于运行的程序调用算子单元,并将神经元(3)、(4)和(5)各自的值和神经元(6)的参数输入该算子单元,从而获得神经元(6)的值,该值即为该神经网络的预测值。
从上述对图3所示的神经网络的计算实例中可以得出,在对每个神经元的计算中,通过调用相应的算子单元进行具体的计算,从而得到该神经元处的值。其中,当该神经元位于神经网络的隐藏层时,通过计算获取的该神经元处的值为中间结果,将该中间结果存储在芯片中或芯片所在的PCIE卡中的ddr内存中,以备后续的计算使用。当该神经元位于神经网络的输出层时,通过计算获取的该神经元处的值即为该神经网络的预测值,则通过嵌入式CPU配置DMA描述符,以控制DMA模块将该预测值写入服务器的内存中。
根据本说明书实施例的该数据处理方法尤其适用于神经网络的预测计算。对于芯片中神经网络的计算,目前通用的做法是在芯片上把各个运算单元如卷积的控制设计成格式化的二进制指令,然后把神经网络的各层调用映射到这些指令上、并集合成一个序列,再下放到芯片上,芯片上的逻辑解析每一条指令并启动相应的运算单元。然而,该方式适用于较大算子的运算单元,对于较细算子的控制,用这种指令序列的方式效率不高、且指令序列的量会非常多;对于控制类型的操作,指令序列的方式几乎难以完成(比如用指令序列做多个循环的嵌套就非常困难);对于输入数据长度适配的问题,比如每次CNN网络的输入图像大小不一样或者每次LSTM网络输入的语音长度不一致,这会让指令序列无所适从;如果每次输入数据长度不一样都重新下载指令序列,这个过程引起的延时对业务来说太长了。
而在本说明书实施例的基于芯片的数据处理方案中,因为引入了嵌入式CPU,天然在芯片内部就可以完成较细算子的控制;C语言函数调用的方式又大大节省了程序指令的空间,并且,嵌入式CPU上C程序天然就可以完美地进行控制类型的操作,比如各种if/for/while等嵌套;嵌入式CPU上的C程序可以对输入数据的长度做判断,并灵活产生计算过程中下发给各个算子单元的参数;另外,当所述神经网络结构升级时,可通过服务器向芯片传入新的程序,以进行更新的神经网络的预测计算。
在一个实施例中,所述嵌入式CPU还配置为,通过C语言中的函数调用,调用所述多个算子单元。
在一个实施例中,所述芯片还包括DMA模块,所述嵌入式CPU还配置为,在获取所述处理结果之后,通过控制所述DMA模块,以将所述处理结果写入所述服务器的内存中。
在一个实施例中,所述嵌入式CPU还配置为,异步地调用所述多个算子单元。通过异步地调用多个算子单元,从而可以尽可能地让多个算子单元并行地工作,从而提高硬件的利用率。
在一个实施例中,所述嵌入式CPU还配置为,对待处理数据或神经网络各层的输入数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
在一个实施例中,所述芯片用于执行多种神经网络的预测计算,其中,获取待处理数据包括,获取待处理数据及其对应的神经网络的类型,其中,基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果包括,基于所述待处理数据及其对应的神经网络的类型,执行该类型的神经网络中的每一层的计算,以获取处理结果。所述多种神经网络例如包括cnn、dnn、rnn等,所述芯片例如通过获取指示神经网络类型的控制信息(如神经网络标识等),从而获取神经网络的类型。芯片在获取神经网络类型之后,会在嵌入式CPU中基于神经网络的类型选定与该类型对应的程序并运行该程序,从而执行该类型的神经网络的计算。
图4示出根据本说明书实施例的一种芯片400,用于执行计算任务,所述芯片包括:
多个算子单元41,以及
嵌入式CPU42,配置为,通过执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于从所述芯片的外部输入的待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理的结果。
在一个实施例中,所述计算任务为神经网络的预测计算,所述嵌入式CPU42配置为,基于从所述芯片的外部输入的待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
在一个实施例中,所述芯片与服务器连接。
在一个实施例中,在所述芯片中,所述待处理数据通过所述服务器传送至所述芯片。
在一个实施例中,在所述芯片中,所述嵌入式CPU通过运行基于程序的汇编指令而执行所述步骤,其中,所述程序由所述服务器传送至所述芯片。
在一个实施例中,在所述芯片中,所述程序为C语言程序。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,通过C语言中的函数调用,调用所述多个算子单元。
在一个实施例中,在所述芯片中,所述芯片还包括DMA模块43,所述嵌入式CPU还配置为,在获取所述处理结果之后,通过控制所述DMA模块,以将所述处理结果写入所述服务器的内存中。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,异步地调用所述多个算子单元。
在一个实施例中,在所述芯片中,所述嵌入式CPU还配置为,对所述待处理数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
在一个实施例中,在所述芯片中,所述芯片为ASIC芯片或FPGA芯片。
在一个实施例中,所述芯片用于执行多种神经网络的预测计算,其中,所述嵌入式CPU还配置为,基于从所述芯片的外部输入的待处理数据及其对应的神经网络的类型,执行所述类型的神经网络中的每一层的计算,以获取处理结果。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图2所示的数据处理方法。
通过根据本说明书实施例的基于芯片的数据处理方案,因为引入了嵌入式CPU,天然在芯片内部就可以完成较细算子的控制;C语言函数调用的方式又大大节省了程序指令的空间,并且,嵌入式CPU上C程序天然就可以完美地进行控制类型的操作,比如各种if/for/while等嵌套;嵌入式CPU上的C程序可以对输入数据的长度做判断,并灵活产生计算过程中下发给各个算子单元的参数;另外,当所述神经网络结构升级时,可通过服务器向芯片传入新的程序,以进行更新的神经网络的预测计算。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (24)

1.一种基于芯片的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行计算任务,所述方法在芯片端执行,包括:
获取待处理数据;以及
通过由所述嵌入式CPU执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于所述待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。
2.一种基于芯片的数据处理方法,所述芯片包括嵌入式CPU和多个算子单元,用于执行神经网络的预测计算,所述方法在芯片端执行,包括:
获取待处理数据;以及
基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
3.根据权利要求1或2所述的数据处理方法,其中,所述芯片与服务器连接。
4.根据权利要求3所述的数据处理方法,其中,所述待处理数据通过所述服务器传送至所述芯片。
5.根据权利要求3所述的数据处理方法,其中,所述嵌入式CPU通过运行基于程序的汇编指令而执行所述步骤,其中,所述程序由所述服务器传送至所述芯片。
6.根据权利要求5所述的数据处理方法,其中,所述程序为C语言程序。
7.根据权利要求6所述的数据处理方法,其中,调用所述多个算子单元包括,通过C语言程序中的函数调用,调用所述多个算子单元。
8.根据权利要求1或2所述的数据处理方法,其中,所述芯片还包括DMA模块,所述方法还包括,在获取所述处理结果之后,通过所述嵌入式CPU控制所述DMA模块,以将所述处理结果写入服务器的内存中。
9.根据权利要求1或2所述的数据处理方法,其中,调用所述多个算子单元包括,异步地调用所述多个算子单元。
10.根据权利要求1或2所述的数据处理方法,其中,配置所述多个算子单元包括,对所述待处理数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
11.根据权利要求2所述的数据处理方法,其中,所述芯片用于执行多种神经网络的预测计算,其中,获取待处理数据包括,获取待处理数据及其对应的神经网络的类型,其中,基于所述待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果包括,基于所述待处理数据及其对应的神经网络的类型,执行该类型的神经网络中的每一层的计算,以获取处理结果。
12.一种芯片,用于执行计算任务,所述芯片包括:
多个算子单元,以及
嵌入式CPU,配置为,通过执行以下步骤而进行所述计算任务的计算:配置所述多个算子单元,以使得所述多个算子单元与该计算任务中包括的不同类型的计算分别对应,以及,基于从所述芯片的外部输入的待处理数据,通过调用所述多个算子单元,进行所述计算任务的计算,以获取处理结果。
13.一种芯片,用于执行神经网络的预测计算,所述芯片包括:
多个算子单元,以及
嵌入式CPU,配置为,基于从所述芯片的外部输入的待处理数据,执行所述神经网络中的每一层的计算,以获取处理结果,其中,通过由所述嵌入式CPU执行以下步骤而进行所述神经网络的每一层的计算:配置所述多个算子单元,以使得所述多个算子单元与该层中包括的不同类型的计算分别对应,以及,基于神经网络上一层中各个神经元的值,通过调用所述多个算子单元,执行该层中每个神经元处的计算,以获取该层中每个神经元的值。
14.根据权利要求12或13所述的芯片,其中,所述芯片与服务器连接。
15.根据权利要求14所述的芯片,其中,所述待处理数据通过所述服务器传送至所述芯片。
16.根据权利要求14所述的芯片,其中,所述嵌入式CPU通过运行基于程序的汇编指令而执行所述步骤,其中,所述程序由所述服务器传送至所述芯片。
17.根据权利要求16所述的芯片,其中,所述程序为C语言程序。
18.根据权利要求17所述的芯片,其中,所述嵌入式CPU还配置为,通过C语言中的函数调用,调用所述多个算子单元。
19.根据权利要求12或13所述的芯片,其中,所述芯片还包括DMA模块,所述嵌入式CPU还配置为,在获取所述处理结果之后,通过控制所述DMA模块,以将所述处理结果写入服务器的内存中。
20.根据权利要求12或13所述的芯片,其中,所述嵌入式CPU还配置为,异步地调用所述多个算子单元。
21.根据权利要求12或13所述的芯片,其中,所述嵌入式CPU还配置为,对所述待处理数据的长度进行判断,并基于所述长度获取发送给各个算子单元的参数。
22.根据权利要求12或13所述的芯片,其中,所述芯片为ASIC芯片或FPGA芯片。
23.根据权利要求13所述的芯片,其中,所述芯片用于执行多种神经网络的预测计算,其中,所述嵌入式CPU还配置为,基于从所述芯片的外部输入的待处理数据及其对应的神经网络的类型,执行所述类型的神经网络中的每一层的计算,以获取处理结果。
24.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-11中任一项所述的方法。
CN201811156129.6A 2018-09-30 2018-09-30 一种芯片及基于其的数据处理方法 Active CN109359732B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201811156129.6A CN109359732B (zh) 2018-09-30 2018-09-30 一种芯片及基于其的数据处理方法
TW108125249A TWI731373B (zh) 2018-09-30 2019-07-17 晶片、基於其的資料處理方法及計算設備
SG11202010628SA SG11202010628SA (en) 2018-09-30 2019-08-16 Chip and chip-based data processing method
PCT/CN2019/101069 WO2020063184A1 (zh) 2018-09-30 2019-08-16 一种芯片及基于其的数据处理方法
EP19867284.2A EP3779804A4 (en) 2018-09-30 2019-08-16 CHIP AND CHIP-BASED DATA PROCESSING PROCESSES
US17/084,936 US11062201B2 (en) 2018-09-30 2020-10-30 Chip and chip-based data processing method
US17/373,384 US11361217B2 (en) 2018-09-30 2021-07-12 Chip and chip-based data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811156129.6A CN109359732B (zh) 2018-09-30 2018-09-30 一种芯片及基于其的数据处理方法

Publications (2)

Publication Number Publication Date
CN109359732A CN109359732A (zh) 2019-02-19
CN109359732B true CN109359732B (zh) 2020-06-09

Family

ID=65348485

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811156129.6A Active CN109359732B (zh) 2018-09-30 2018-09-30 一种芯片及基于其的数据处理方法

Country Status (6)

Country Link
US (2) US11062201B2 (zh)
EP (1) EP3779804A4 (zh)
CN (1) CN109359732B (zh)
SG (1) SG11202010628SA (zh)
TW (1) TWI731373B (zh)
WO (1) WO2020063184A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359732B (zh) 2018-09-30 2020-06-09 阿里巴巴集团控股有限公司 一种芯片及基于其的数据处理方法
CN112148391A (zh) * 2019-06-26 2020-12-29 北京百度网讯科技有限公司 生成基于芯片的计算功能的方法、装置、设备和存储介质
CN111210005B (zh) * 2019-12-31 2023-07-18 Oppo广东移动通信有限公司 设备运行方法、装置、存储介质及电子设备
CN116362305A (zh) * 2021-12-24 2023-06-30 Oppo广东移动通信有限公司 数据处理方法、装置、计算机设备及存储介质
CN115658269B (zh) * 2022-11-01 2024-02-27 上海玫克生储能科技有限公司 一种用于任务调度的异构计算终端
CN116561051B (zh) * 2023-04-10 2024-02-02 中科驭数(北京)科技有限公司 一种硬件加速卡和异构计算系统
CN116484947B (zh) * 2023-06-25 2023-09-08 上海燧原科技有限公司 算子的自动生成方法、装置、设备及介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106022468A (zh) * 2016-05-17 2016-10-12 成都启英泰伦科技有限公司 人工神经网络处理器集成电路及该集成电路的设计方法
WO2016182659A1 (en) * 2015-05-08 2016-11-17 Qualcomm Incorporated Bit width selection for fixed point neural networks
CN106228238A (zh) * 2016-07-27 2016-12-14 中国科学技术大学苏州研究院 现场可编程门阵列平台上加速深度学习算法的方法和系统
CN106355244A (zh) * 2016-08-30 2017-01-25 深圳市诺比邻科技有限公司 卷积神经网络的构建方法及系统
US9798751B2 (en) * 2013-10-16 2017-10-24 University Of Tennessee Research Foundation Method and apparatus for constructing a neuroscience-inspired artificial neural network
CN107451653A (zh) * 2017-07-05 2017-12-08 深圳市自行科技有限公司 深度神经网络的计算方法、装置及可读存储介质
CN207458128U (zh) * 2017-09-07 2018-06-05 哈尔滨理工大学 一种基于fpga在视觉应用中的卷积神经网络加速器
CN108470009A (zh) * 2018-03-19 2018-08-31 上海兆芯集成电路有限公司 处理电路及其神经网络运算方法
US10073816B1 (en) * 2017-05-11 2018-09-11 NovuMind Limited Native tensor processor, and partitioning of tensor contractions

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225172B2 (en) * 1999-07-01 2007-05-29 Yeda Research And Development Co. Ltd. Method and apparatus for multivariable analysis of biological measurements
CN101017508A (zh) * 2006-12-21 2007-08-15 四川大学 一种基于离散Hopfield神经网络的SoC软/硬件划分方法
US8225074B2 (en) * 2008-10-02 2012-07-17 Nec Laboratories America, Inc. Methods and systems for managing computations on a hybrid computing platform including a parallel accelerator
FR3008505B1 (fr) * 2013-07-10 2017-03-03 Thales Sa Procede d'optimisation de traitement parallele de donnees sur une plateforme materielle
US9978014B2 (en) * 2013-12-18 2018-05-22 Intel Corporation Reconfigurable processing unit
US9858220B2 (en) * 2014-03-17 2018-01-02 Purdue Research Foundation Computing architecture with concurrent programmable data co-processor
US9715663B2 (en) * 2014-05-01 2017-07-25 International Business Machines Corporation Predicting application performance on hardware accelerators
US20160026912A1 (en) * 2014-07-22 2016-01-28 Intel Corporation Weight-shifting mechanism for convolutional neural networks
US9883122B2 (en) * 2014-09-16 2018-01-30 Qualcomm Incorporated Event-based down sampling
EP3035249B1 (en) * 2014-12-19 2019-11-27 Intel Corporation Method and apparatus for distributed and cooperative computation in artificial neural networks
US10725934B2 (en) * 2015-10-08 2020-07-28 Shanghai Zhaoxin Semiconductor Co., Ltd. Processor with selective data storage (of accelerator) operable as either victim cache data storage or accelerator memory and having victim cache tags in lower level cache wherein evicted cache line is stored in said data storage when said data storage is in a first mode and said cache line is stored in system memory rather then said data store when said data storage is in a second mode
CN105488565A (zh) * 2015-11-17 2016-04-13 中国科学院计算技术研究所 加速深度神经网络算法的加速芯片的运算装置及方法
US11093826B2 (en) * 2016-02-05 2021-08-17 International Business Machines Corporation Efficient determination of optimized learning settings of neural networks
US10867247B1 (en) * 2016-02-14 2020-12-15 Perceive Corporation Machine learning through multiple layers of novel machine trained processing nodes
US11055063B2 (en) * 2016-05-02 2021-07-06 Marvell Asia Pte, Ltd. Systems and methods for deep learning processor
JP6776696B2 (ja) * 2016-07-26 2020-10-28 富士通株式会社 並列情報処理装置、情報処理方法、およびプログラム
CN106228240B (zh) * 2016-07-30 2020-09-01 复旦大学 基于fpga的深度卷积神经网络实现方法
US10698657B2 (en) * 2016-08-12 2020-06-30 Xilinx, Inc. Hardware accelerator for compressed RNN on FPGA
US10810484B2 (en) * 2016-08-12 2020-10-20 Xilinx, Inc. Hardware accelerator for compressed GRU on FPGA
US10802992B2 (en) * 2016-08-12 2020-10-13 Xilinx Technology Beijing Limited Combining CPU and special accelerator for implementing an artificial neural network
CN109478139B (zh) * 2016-08-13 2024-01-23 英特尔公司 用于共享存储器中的访问同步的装置、方法和系统
US11501131B2 (en) * 2016-09-09 2022-11-15 SK Hynix Inc. Neural network hardware accelerator architectures and operating method thereof
CN207440765U (zh) * 2017-01-04 2018-06-01 意法半导体股份有限公司 片上系统和移动计算设备
US10402527B2 (en) * 2017-01-04 2019-09-03 Stmicroelectronics S.R.L. Reconfigurable interconnect
CN107016175B (zh) * 2017-03-23 2018-08-31 中国科学院计算技术研究所 适用神经网络处理器的自动化设计方法、装置及优化方法
US10387298B2 (en) * 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
US11551335B2 (en) * 2017-04-07 2023-01-10 Intel Corporation Methods and systems using camera devices for deep channel and convolutional neural network images and formats
US10795836B2 (en) * 2017-04-17 2020-10-06 Microsoft Technology Licensing, Llc Data processing performance enhancement for neural networks using a virtualized data iterator
CN107679620B (zh) * 2017-04-19 2020-05-26 赛灵思公司 人工神经网络处理装置
CN107679621B (zh) * 2017-04-19 2020-12-08 赛灵思公司 人工神经网络处理装置
US10248908B2 (en) * 2017-06-19 2019-04-02 Google Llc Alternative loop limits for accessing data in multi-dimensional tensors
US10430913B2 (en) * 2017-06-30 2019-10-01 Intel Corporation Approximating image processing functions using convolutional neural networks
CN107688849B (zh) * 2017-07-28 2021-04-13 赛灵思电子科技(北京)有限公司 一种动态策略定点化训练方法及装置
CN107679618B (zh) * 2017-07-28 2021-06-11 赛灵思电子科技(北京)有限公司 一种静态策略定点化训练方法及装置
GB2568776B (en) * 2017-08-11 2020-10-28 Google Llc Neural network accelerator with parameters resident on chip
WO2019042703A1 (en) * 2017-08-31 2019-03-07 Fotonation Limited DEVICE FOR PERIPHERAL TREATMENT
US12061990B2 (en) * 2017-10-17 2024-08-13 Xilinx, Inc. Static block scheduling in massively parallel software defined hardware systems
CN107844829A (zh) * 2017-10-31 2018-03-27 中国科学院计算技术研究所 用于加速神经网络处理器的方法和系统及神经网络处理器
US11468332B2 (en) * 2017-11-13 2022-10-11 Raytheon Company Deep neural network processor with interleaved backpropagation
CN108171321A (zh) * 2017-12-07 2018-06-15 中国航空工业集团公司西安航空计算技术研究所 一种基于SoC芯片的深度神经网络嵌入式实现方法
US20190180183A1 (en) * 2017-12-12 2019-06-13 Amazon Technologies, Inc. On-chip computational network
WO2019129070A1 (zh) * 2017-12-27 2019-07-04 北京中科寒武纪科技有限公司 一种集成电路芯片装置
US12086705B2 (en) * 2017-12-29 2024-09-10 Intel Corporation Compute optimization mechanism for deep neural networks
US10553207B2 (en) * 2017-12-29 2020-02-04 Facebook, Inc. Systems and methods for employing predication in computational models
CN108280514B (zh) * 2018-01-05 2020-10-16 中国科学技术大学 基于fpga的稀疏神经网络加速系统和设计方法
CN108229670B (zh) * 2018-01-05 2021-10-08 中国科学技术大学苏州研究院 基于fpga的深度神经网络加速平台
US11188814B2 (en) * 2018-04-05 2021-11-30 Arm Limited Systolic convolutional neural network
CN108549935B (zh) * 2018-05-03 2021-09-10 山东浪潮科学研究院有限公司 一种实现神经网络模型的装置及方法
CN110597616B (zh) * 2018-06-13 2022-07-29 华为技术有限公司 一种神经网络的内存分配方法及装置
US11385863B2 (en) * 2018-08-01 2022-07-12 Hewlett Packard Enterprise Development Lp Adjustable precision for multi-stage compute processes
KR20200026455A (ko) * 2018-09-03 2020-03-11 삼성전자주식회사 인공 신경망 시스템 및 인공 신경망의 고정 소수점 제어 방법
CN109359732B (zh) * 2018-09-30 2020-06-09 阿里巴巴集团控股有限公司 一种芯片及基于其的数据处理方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798751B2 (en) * 2013-10-16 2017-10-24 University Of Tennessee Research Foundation Method and apparatus for constructing a neuroscience-inspired artificial neural network
WO2016182659A1 (en) * 2015-05-08 2016-11-17 Qualcomm Incorporated Bit width selection for fixed point neural networks
CN106022468A (zh) * 2016-05-17 2016-10-12 成都启英泰伦科技有限公司 人工神经网络处理器集成电路及该集成电路的设计方法
CN106228238A (zh) * 2016-07-27 2016-12-14 中国科学技术大学苏州研究院 现场可编程门阵列平台上加速深度学习算法的方法和系统
CN106355244A (zh) * 2016-08-30 2017-01-25 深圳市诺比邻科技有限公司 卷积神经网络的构建方法及系统
US10073816B1 (en) * 2017-05-11 2018-09-11 NovuMind Limited Native tensor processor, and partitioning of tensor contractions
CN107451653A (zh) * 2017-07-05 2017-12-08 深圳市自行科技有限公司 深度神经网络的计算方法、装置及可读存储介质
CN207458128U (zh) * 2017-09-07 2018-06-05 哈尔滨理工大学 一种基于fpga在视觉应用中的卷积神经网络加速器
CN108470009A (zh) * 2018-03-19 2018-08-31 上海兆芯集成电路有限公司 处理电路及其神经网络运算方法

Also Published As

Publication number Publication date
WO2020063184A1 (zh) 2020-04-02
US11361217B2 (en) 2022-06-14
US20210049453A1 (en) 2021-02-18
CN109359732A (zh) 2019-02-19
SG11202010628SA (en) 2020-11-27
US11062201B2 (en) 2021-07-13
US20210342680A1 (en) 2021-11-04
EP3779804A4 (en) 2021-11-03
EP3779804A1 (en) 2021-02-17
TWI731373B (zh) 2021-06-21
TW202014886A (zh) 2020-04-16

Similar Documents

Publication Publication Date Title
CN109359732B (zh) 一种芯片及基于其的数据处理方法
CN107862374B (zh) 基于流水线的神经网络处理系统和处理方法
CN110689138B (zh) 运算方法、装置及相关产品
US9754221B1 (en) Processor for implementing reinforcement learning operations
CN110135581B (zh) 用于执行人工神经网络反向运算的装置和方法
EP3502975A1 (en) Methods and apparatus for model parallelism in artificial neural networks
US11609792B2 (en) Maximizing resource utilization of neural network computing system
CN107679625B (zh) 针对数据记录执行机器学习的分布式系统及其方法
CN109375951A (zh) 一种用于执行全连接层神经网络正向运算的装置和方法
CN105164638A (zh) 控制由计算系统执行的任务
CN110889497B (zh) 一种人工智能处理器的学习任务编译方法及相关产品
CN110058882B (zh) 一种用于cnn加速的opu指令集定义方法
CN113450770B (zh) 基于显卡资源的语音特征提取方法、装置、设备及介质
CN112711478A (zh) 基于神经网络的任务处理方法、装置、服务器和存储介质
CN110766145A (zh) 一种人工智能处理器的学习任务编译方法及相关产品
CN115686527A (zh) 基于算子的编译方法、装置、计算机设备和存储介质
Mohamed et al. A scenario-and platform-aware design flow for image-based control systems
CN117271101B (zh) 一种算子融合方法、装置、电子设备及存储介质
CN110825380A (zh) 核函数的生成方法、目标代码的生成方法和组合处理装置
CN113031954A (zh) 代码编译方法、装置、电子设备、存储介质及异构系统
CN117149770A (zh) 数据库的存储过程执行方法、装置以及计算机设备
CN110766146A (zh) 一种人工智能处理器的学习任务编译方法及相关产品
KR102376527B1 (ko) Dnn 프레임워크를 이용하는 단일 가속기용 프로그램을 복수의 가속기에서 처리하는 방법 및 컴퓨터 프로그램
CN115034365A (zh) 一种面向神经网络处理器的多核并行计算方法
CN108062224A (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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40004489

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201010

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right