CN107977229A - 一种指令生成过程的复用方法及装置、处理装置 - Google Patents

一种指令生成过程的复用方法及装置、处理装置 Download PDF

Info

Publication number
CN107977229A
CN107977229A CN201711247175.2A CN201711247175A CN107977229A CN 107977229 A CN107977229 A CN 107977229A CN 201711247175 A CN201711247175 A CN 201711247175A CN 107977229 A CN107977229 A CN 107977229A
Authority
CN
China
Prior art keywords
instruction
network
hash value
layer network
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.)
Granted
Application number
CN201711247175.2A
Other languages
English (en)
Other versions
CN107977229B (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.)
Shanghai Cambricon Information Technology Co Ltd
Original Assignee
Shanghai Cambricon Information Technology 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 Shanghai Cambricon Information Technology Co Ltd filed Critical Shanghai Cambricon Information Technology Co Ltd
Publication of CN107977229A publication Critical patent/CN107977229A/zh
Application granted granted Critical
Publication of CN107977229B publication Critical patent/CN107977229B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • 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
    • 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/3802Instruction prefetching
    • G06F9/3808Instruction prefetching for instruction reuse, e.g. trace cache, branch target cache
    • 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/3802Instruction prefetching
    • G06F9/3812Instruction prefetching with instruction modification, e.g. store into instruction stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural 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
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Neurology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Advance Control (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Hardware Redundancy (AREA)
  • Image Analysis (AREA)

Abstract

一种指令生成过程的复用方法及装置、处理装置,所述复用方法包括:基于预设信息计算第i层网络的Hash值;以及判断第i层网络的Hash值是否与在前网络对应的Hash值相同,若相同,则利用Hash值相同的在前网络的指令采用指令复用的方式生成第i层网络的指令,其中i为正整数。

Description

一种指令生成过程的复用方法及装置、处理装置
技术领域
本发明涉及人工神经网络技术领域,更具体地涉及一种指令生成过程的复用方法及装置、处理装置。
背景技术
人工神经网络是众多机器学习和模式识别算法中的佼佼者,在学术界和工业界都是目前的主流方向。然而,基于在小体积、低功耗的前提下实现高性能的新要求,传统的大规模神经网络和庞大的计算设备难以真正进入人们的日常生活,因此为神经网络设计的专用处理器成为新的潮流。
为神经网络加速器生成指令是一个相对繁琐的过程,尤其是在数据规模大、网络结构复杂的情况下。神经网络加速器的单条指令往往较长,同时受限于片上的计算和存储资源,较大的输入数据往往需要多条指令处理。此外,当下神经网络算法的明显趋势是网络层数越来越多、层规模越来越大。这些都导致神经网络加速器的指令生成愈发繁琐,甚至影响到硬件本身优势的发挥。
发明内容
鉴于现有方案存在的问题,为了克服上述现有技术方案的不足,本发明提出了一种指令生成过程的复用方法及装置、处理装置。
根据本发明的一个方面,提供了一种指令生成过程的复用方法,其中,包括:基于预设信息计算第i层网络的Hash值;以及判断第i层网络的Hash值是否与在前网络对应的Hash值相同,若相同,则利用Hash值相同的在前网络的指令采用指令复用的方式生成第i层网络的指令,其中i为正整数。
根据本发明的另一个方面,提供了一种指令生成过程的复用装置,其中,包括:运行缓存装置,用于存放在前网络对应的Hash值;处理单元,用实现指令复用,以及指令存储装置,存储所述各层网络的指令,其中,所述处理单元执行:基于预设信息计算第i层网络的Hash值;以及判断第i层网络的Hash值是否与在前网络对应的Hash值相同,若相同,则利用Hash值相同的在前网络的指令采用指令复用的方式生成第i层网络的指令,其中i为正整数。
根据本发明的再一个方面,提供一种处理装置,其包括:前述的复用装置;神经网络处理器;和/或通用处理器。
根据本发明的又一个方面,提供一种芯片,其中,所述芯片包括前述的处理装置。
根据本发明的进一步的一个方面,提供一种电子装置,其中,所述电子装置包括前述的芯片。
从上述技术方案可以看出,本发明具有以下有益效果:
(1)基于判别Hash值是否相同,实现了神经网络加速器的相同Hash值层网络的指令复用,削减了指令生成过程中重复指令的生成开销,减少了神经网络的总执行时间;
(2)使得神经网络加速器的硬件优势更加明显,其计算资源可以更充分地用于神经网络本身地计算,也降低了总功耗。
附图说明
图1为本发明实施例用于神经网络加速器指令生成过程的复用方法的流程图;
图2为本发明实施例用于神经网络加速器指令生成过程的复用装置的结构框图;
图3为本发明另一实施例用于神经网络加速器指令生成过程的复用装置的结构框图;
图4为本发明一实施例中处理装置的结构框图;
图5为本发明又一实施例中处理装置的结构框图;
图6为本发明再一实施例中处理装置的结构框图。
具体实施方式
本发明某些实施例于后方将参照所附附图做更全面性地描述,其中一些但并非全部的实施例将被示出。实际上,本发明的各种实施例可以许多不同形式实现,而不应被解释为限于此数所阐述的实施例;相对地,提供这些实施例使得本发明满足适用的法律要求。
在本说明书中,下述用于描述本发明原理的各种实施例只是说明,不应该以任何方式解释为限制发明的范围。参照附图的下述描述用于帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。下述描述包括多种具体细节来帮助理解,但这些细节应认为仅仅是示例性的。因此,本领域普通技术人员应认识到,在不悖离本发明的范围和精神的情况下,可以对本文中描述的实施例进行多种改变和修改。此外,为了清楚和简洁起见,省略了公知功能和结构的描述。此外,贯穿附图,相同附图标记用于相似功能和操作。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
本发明实施例提供了一种用于神经网络加速器指令生成过程的复用方法,通过神经网络加速器指令生成过程中的指令复用,削减了指令生成过程中重复指令的生成开销,减少了神经网络的总执行时间。
这里的“指令”指的是神经网络加速器运行过程中的操作码,用于指示神经网络加速器的硬件的每一步操作。Hash算法将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值就是Hash值。Hash值是一段数据唯一且极其紧凑的数值表示形式,因此只要神经网络的每一层可以用二进制码描述,那么就可以计算其Hash值,并且Hash值相同网络就一定一样,就可以复用之前生成的网络的指令。
具体的,该复用方法如附图1所示,包括以下具体步骤:
S101:开始;
神经网络加速器指令生成步骤开始;
S102:令i=1,i为神经网络加速器网络层序号,i为正整数。
本实施例中从第1层来开始执行,本领域技术人员可以理解的而是,网络神经加速器的指令生成并非限定必须从第1层开始执行,也可从后续的任何一层开始执行。
S103:计算第i层网络的Hash值,根据第i层网络的类型、规模等信息计算出相应的Hash值,Hash值通过给定的Hash函数计算得到。
其中网络类型有卷积、全连接、降采样、归一化层、激活等;网络规模包括网络输入大小、输出大小、采样窗口大小、采样窗口移动步长、采样窗口数目等。另外具体的信息还可以包括偏置项、随机项、运算类型等所有神经网络特性的描述参数。其中运算类型包括但不限于稀疏运算、稠密运算、1位运算、定点、浮点等运算类型。
以下以全连接层网络为例计算hash值:
假设该层网络是全连接层,层类型编码为01,层规模为输入9,输出9,那么该网络被编码为011001100110011001(编码顺序和宽度不固定,该处引用于举例),计算该二进制码的hash值,计算方式可以是MD5、SHA1等方法,计算出的hash值是011001。
S104:判断i是否大于等于a,a为正整数。针对第a层后的网络层来判别是否可以进行指令复用操作。本实施例中a优选为2。若结果为Y,即i大于等于a,则执行步骤S105,否则,结果为N,即i小于a,执行步骤S106。
S105:根据Hash值在Hash表中进行查找,Hash表存储在运行缓存装置中,其存储由第i层网络之前1个或多个层Hash值,用于后面各层的Hash值作对比。
如表1所示,Hash表一共包括5个域:层序号、层类型、层规模、Hash值和该层指令在指令存储装置的头地址。其中,前4个域用于前述查找判断单元确定是否可以复用,最后一个域用于后述被复用指令提取单元从指令存储装置中提取所需指令。
表1
层序号 层类型 层规模 Hash值 头地址
1 CONV input(9,9),kernel(5,5),stride(1,1) 9d28 Ox10000000
若结果为Y,意味着第i层网络的Hash值存在于Hash表,这说明之前某层的类型和规模与本层完全一致,指令可以复用,则执行S108,否则,说明之前所有层的类型和规模与本层均不一致,指令不能复用,则执行S106。
S106:将第i层网络的Hash值及指令头地址存入Hash表中,存储在运行缓存装置中,执行S107。
S107:采用常规方式生成第i层网络指令;
这里的常规方式指的是神经网络加速器的硬件根据输入的神经网络的全部信息去生成一条或多条完整的二进制指令,这条二进制指令与硬件本身的指令集密切相关。一般来说硬件需要逐步解析输入的信息,将解析到的信息转化为指令的一个字段,最后这些字段逐步拼成一条或多条完成的二进制指令。
举例,假如输入的神经网络层是全连接层,输入9,输出9,32位定点运算,输出需要激活。那么“全连接层”会被解析为一个字段Z1,“输入9”被解析为字段Z2,“输出9”被解析为字段Z3,“32位定点运算”被解析为字段Z4,“输出需要激活”被解析为字段Z5,那么最终生成的二进制指令就是Z1~Z5的组合或是经过一定操作后的组合。
指令的生成不局限于上述的生成方式,因为指令生成确实与应用到的硬件的指令集密切相关。
S108:根据Hash值相应的指令头地址拷贝待复用指令,即调取该Hash值相应的指令,执行步骤S110;
S109:修改待复用指令,得到第i层网络指令,具体的根据本层(第i层)输入和输出数据的特点,在已拷贝的待复用指令上进行修改,具体为将待复用指令中涉及输入数据地址和输出数据地址之处修改为新层的相应值,得到本层需要的指令,执行步骤S110;
S110:存储第i层网络的指令,将第i层网络的指令存储在指令存储装置中;
S111:令i=i+1;
S112:判断i是否小于等于b,其中b为正整数,且b大于a,本实施例中b为神经网络加速器网络层数,若i小于等于b,即结果为Y,则返回S103,若i大于b,即结果为N,则执行S113;本发明中b的取值并非限于实施中的神经网络加速器网络层数,可以小于等于神经网络加速器网络层数。
S113:结束。
基于同样的发明构思,本发明实施例还提供了一种用于神经网络加速器指令生成过程的复用装置100,如图2所示,所述复用装置包括:指令复用控制装置1、运行缓存装置2以及复用指令生成装置3。
其中指令复用控制装置1,用于生成每层网络规模信息的Hash值,并判断是否需要指令复用;运行缓存装置2,用于存放每层网络规模信息的Hash值;复用指令生成装置3,用于在确定可以复用的情况下生成复用后的新指令。
具体的,指令复用控制装置1包括计算单元11和查找判断单元12,其中,计算单元11接收第i层网络的类型、规模等信息(神经网络层信息),计算出该层相应的Hash值,Hash值通过给定的Hash函数计算得到,并将第i层网络的Hash值发送至查找判断单元,查找判断单元12调取运行缓存装置中的Hash表,并根据当前层Hash值在Hash表中查着,确认当前层Hash值在Hash表中是否存在。若确认存在,在查找判断单元12将查找到的Hash值相应的层指令在指令存储装置的头地址发送给复用指令生成装置,进行指令复用。若确认不存在,则不进行指令复用,将当前层Hash值及其相应信息(包括生成的指令头地址)保存在至Hash表中,并采用常规的方式由指令生成装置4生成该层指令。
复用指令生成装置3接收到指令复用控制装置1发送的头地址,从指令存储装置读取相应层的全部指令,并根据本层(第i层)输入和输出数据的特点,在已拷贝的待复用指令上进行修改,具体为将待复用指令中涉及输入数据地址和输出数据地址之处修改为新层的相应值,得到本层需要的指令。
指令生成装置4生成的指令及指令修改单元32生成的指令均存储至指令存储装置5上。
各功能单元/模块都可以是硬件,比如该硬件可以是电路,包括数字电路,模拟电路等等。例如上述的计算单元11、查找判断单元12、运行缓存装置2、复用指令生成装置3、指令生成装置4以及指令存储装置5中的至少一个为硬件。举例而言,上述该些单元/装置均为硬件。
硬件结构的物理实现包括但不局限于物理器件,物理器件包括但不局限于晶体管,忆阻器等等。所述计算装置中的计算模块可以是任何适当的硬件处理器,比如CPU、GPU、FPGA、DSP和ASIC等等。所述存储单元可以是任何适当的磁存储介质或者磁光存储介质,比如RRAM,DRAM,SRAM,EDRAM,HBM,HMC等等。
在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。例如上述的计算单元11、查找判断单元12、运行缓存装置2、复用指令生成装置3及指令生成装置4集成在一个处理单元10中,采用软件程序模块的形式实现上述功能模块的功能。此时复用装置100,如图3所示,包括处理单元10、运算缓存装置2、以及指令存储装置5,其中,处理单元10例如为一处理器,可以包括计算单元11、查找判断单元12、运行缓存装置2、复用指令生成装置3及指令生成装置4等功能模块。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本发明一实施例还提供一种处理装置,图4为本发明实施例中处理装置的结构框图,如图4所示,处理装置2000包括前述的复用装置100和神经网络处理器1000,神经网络处理器1000,例如为神经网络加速器,其包括:存储单元200、控制单元300、运算单元400,直接数据存取单元(DMA direct memory access)500、输入缓存单元600。
复用装置100从直接数据存取单元(DMA direct memory access)500获取第i层网络的类型、规模等信息(神经网络层信息)并生成指令,生成的指令可以输出至输入缓存单元600的指令缓存601,送往指令缓存的指令将按照芯片正常的工作方式即会被送往控制单元完成后续的指令执行过程,生成的指令还可以直接送到控制单元完成后续的指令执行过程。
复用装置100可以采用其本身的计算单元来计算获得相应层的Hash值,也可以调用神经网络处理器1000中的运算单元来实现上述计算,此时复用装置可以省去计算单元。
存储单元200主要用来存储神经网络的神经元,权值以及指令。其中存放权值时只存放非零权值以及非零权值的位置信息,存放量化的非零权值时只存放非零权值密码本和非零权值字典。控制单元300接收存储单元200发送的指令,经过译码后生成控制信息控制运算单元400。运算单元400,根据存储单元200中存储的指令对所述数据执行相应运算。
DMA500用于在所述存储单元200、输入缓存单元600和输出神经元缓存900中进行数据或者指令读写。
输入缓存单元600包括指令缓存601、非零权值密码本缓存602、非零权值字典缓存603、非零权值位置缓存604、输入神经元缓存605。
指令缓存601,用于存储专用指令;
非零权值密码本缓存602,用于缓存非零权值密码本;
非零权值字典缓存603,用于缓存非零权值权值字典;
非零权值位置缓存604,用于缓存非零权值位置数据;非零权值位置缓存将输入数据中每个连接权值一一对应到相应的输入神经元。
输入神经元缓存605,用于缓存输入到粗粒度选数单元的输入神经元。
神经网络处理器1000还包括预处理模块1001、查找表700、选数单元800以及输出神经元缓存900。
预处理模块1001对原始输入数据进行预处理,包括切分、高斯滤波、二值化、正则化、归一化等等,并将处理后的数据输入存储单元200。
查找表单元700用于解析量化后的神经网络的权值,其接收权值字典和权值密码本,经过查找操作获得权值,对于没量化的权值直接通过旁路传输给运算单元。
选数单元800用于接收输入神经元和非零权值位置信息,选择出需要进行计算的神经元。选数单元,用于接收输入神经元和非零权值位置信息,选出非零权值对应的神经元。也就是说:对于每个输出神经元数据,选数单元去除掉与该输出神经元数据没有对应的非零权值数据的输入神经元数据。
输出神经元缓900,用于缓存运算单元输出的输出神经元。
通过神经网络处理器指令生成过程中的指令复用,尽可能削减了指令生成过程中重复指令的生成开销,减少了神经网络的总执行时间,使得神经网络加速器的硬件优势更加明显。如果采用更大指令调度窗口,在此基础上的指令流水可以进一步减少存储资源的占用。
本发明又一实施例还提供一种处理装置,图5为本发明实施例中处理装置的结构框图,如图5所示,处理装置4000包括前述的复用装置100和通用处理器3000,其中通用处理器3000中包括运算单元。本实施例是一个指令复用装置100和通用处理器3000同时工作的使用场景。输入神经网络层信息可以直接输入指令复用装置,也可以输入通用处理器。指令复用装置接收输入神经网络层信息后可以选择在其内部的计算单元中计算出Hash值,也可以将信息导入通用处理器中,在通用处理器中的运算单元完成Hash值的计算,通用处理器计算出的Hash值将被输出回指令复用装置中存入Hash表,当指令复用单元100调用通用处理器中的运算单元来完成Hash值的计算时,指令复用单元100中的计算单元可以省略。
本发明再一实施例还提供一种处理装置,图6为本发明实施例中处理装置的结构框图,如图6所示,处理装置5000包括前述的复用装置100、通用处理器3000以及神经网络处理器2000,其中通用处理器3000和神经网络处理器2000中均包括运算单元。本实施例是一个指令复用装置100、通用处理器3000以及神经网络处理器2000同时工作的使用场景。指令复用装置接收输入神经网络层信息后可以选择在其内部的计算单元中计算出Hash值,还可以经通用处理器或是神经网络处理器中的运算单元计算得到相应层的Hash值,并将Hash值通过指令复用装置中Hash表的查询确认是否进行指令复用。若确认复用,查找得到Hash值相应的层指令的头地址,进行指令复用。若确认不复用,则不进行指令复用,将当前层Hash值及其相应信息(包括生成指令的头地址)保存在至Hash表中,并采用常规的方式生成该层指令,最后指令都输入神经网络处理器。当指令复用单元100调用通用处理器或神经网络处理器中的运算单元来完成Hash值的计算时,指令复用单元100中的计算单元可以省略。
处理器可以包括通用微处理器、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))。处理器还可以包括用于缓存用途的板载存储器。优选的,采用专用的神经网络处理器。
在一个实施例里,本发明公开了一个芯片,其包括了上述处理装置。
在一个实施例里,本发明公开了一个芯片封装结构,其包括了上述芯片。
在一个实施例里,本发明公开了一个板卡,其包括了上述芯片封装结构。
在一个实施例里,本发明公开了一个电子装置,其包括了上述板卡。
电子装置包括数据处理装置、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、手机、行车记录仪、导航仪、传感器、摄像头、云端服务器、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备交通工具、家用电器、和/或医疗设备。
所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。
前面的附图中所描绘的进程或方法可通过包括硬件(例如,电路、专用逻辑等)、固件、软件(例如,被承载在非瞬态计算机可读介质上的软件),或两者的组合的处理逻辑来执行。虽然上文按照某些顺序操作描述了进程或方法,但是,应该理解,所描述的某些操作能以不同顺序来执行。此外,可并行地而非顺序地执行一些操作。
需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (26)

1.一种指令生成过程的复用方法,其中,包括:
基于预设信息计算第i层网络的Hash值;以及
判断第i层网络的Hash值是否与在前网络对应的Hash值相同,若相同,则利用Hash值相同的在前网络的指令采用指令复用的方式生成第i层网络的指令,其中i为正整数。
2.根据权利要求1所述的复用方法,其中,所述基于预设信息计算第i层网络的Hash值的步骤包括:
基于第i层网络的类型和/或规模信息计算第i层网络的Hash值。
3.根据权利要求1所述的复用方法,其中,在判断第i层网络的Hash值是否与在前网络对应的Hash值相同的步骤之前还包括:
建立Hash表存储各个在先网络对应的信息,对于每一在先网络,其对应的域包括:层序号、Hash值和相应层指令的头地址。
4.根据权利要求3所述的复用方法,其中,所述域还包括:层类型和/或层规模。
5.根据权利要求3所述的复用方法,其中,所述采用指令复用的方式生成第i层网络的指令包括:
根据Hash表中存储的Hash值相同的在前网络对应信息中的指令头地址拷贝待复用指令;
修改待复用指令生成第i层网络的指令。
6.根据权利要求3所述的复用方法,其中,若所述第i层网络的Hash值不存在于Hash表中,则将第i层网络Hash值及其指令头地址存入Hash表,并直接生成第i层网络的指令。
7.根据权利要求1至6中任一所述的复用方法,其中,还包括:
存储所述第i层网络的指令。
8.根据权利要求3所述的复用方法,其中,在判断第i层网络的Hash值是否存在于Hash表中的步骤之前还包括:
判断i是否大于等于a,其中a为正整数,且a≥2:
若i≥a,则判断第i层网络的Hash值是否存在于Hash表中;
否则,将第i层网络Hash值及其指令头地址存入Hash表,并直接生成第i层网络的指令。
9.根据权利要求7所述的复用方法,其中,在存储所述第i层网络的指令的步骤之后还包括:
令i=i+1,判断i是否小于等于b,其中b为正整数,且b>a:
若i≤b,则返回步骤计算第i层网络的Hash值;
否则,指令生成结束;
其中,b等于神经网络加速器网络层数。
10.根据权利要求1-9中任一所述的复用方法,其中,所述网络为人工神经网络。
11.一种指令生成过程的复用装置,其中,包括:
运行缓存装置(2),用于存放在前网络对应的Hash值;
处理单元(10),用实现指令复用,以及
指令存储装置(5),存储所述各层网络的指令,
其中,所述处理单元(10)执行:
基于预设信息计算第i层网络的Hash值;以及
判断第i层网络的Hash值是否与在前网络对应的Hash值相同,若相同,则利用Hash值相同的在前网络的指令采用指令复用的方式生成第i层网络的指令,其中i为正整数。
12.根据权利要求11所述的复用装置,其中,所述基于预设信息计算第i层网络的Hash值包括:
基于第i层网络的类型和/或规模信息计算第i层网络的Hash值。
13.根据权利要求11所述的复用装置,其中,运行缓存装置(2)还存储有Hash表,Hash表存储各个在先网络对应的信息,对于每一在先网络,其对应的域包括:层序号、Hash值和相应层指令的头地址。
14.根据权利要求13所述的复用装置,其中,所述域还包括:层类型和/或层规模。
15.根据权利要求13所述的复用装置,其中,所述处理单元(10)还执行以下步骤:
根据Hash表中存储的Hash值相同的在前网络对应信息中的指令头地址拷贝待复用指令;
修改待复用指令生成第i层网络的指令。
16.根据权利要求13所述的复用装置,其中,所述处理单元(10)还执行:
若所述第i层网络的Hash值不存在于Hash表中,则将第i层网络Hash值及其指令头地址存入Hash表,并直接生成第i层网络的指令。
17.根据权利要求11-16中任一所述的复用装置,所述处理单元(10)还执行:
存储所述第i层网络的指令至所述指令存储装置(5)中。
18.根据权利要求13所述的复用装置,其中处理单元(10)在判断第i层网络的Hash值是否存在于Hash表中之前还执行:
判断i是否大于等于a,其中a为正整数,且a≥2:
若i≥a,则判断第i层网络的Hash值是否存在于Hash表中;
否则,将第i层网络Hash值及其指令头地址存入Hash表,并直接生成第i层网络的指令。
19.根据权利要求17所述的复用装置,其中处理单元(10)在存储所述第i层网络的指令至所述指令存储装置(5)中之后还执行:
令i=i+1,判断i是否小于等于b,其中b为正整数,且b>a:
若i≤b,则返回步骤计算第i层网络的Hash值;
否则,指令生成结束;
其中,b等于神经网络加速器网络层数。
20.根据权利要求11-19所述的复用装置,其中所述网络为人工神经网络。
21.一种处理装置,其包括:
权利要求11至20中任一项所述的复用装置;
神经网络处理器(2000);和/或
通用处理器(3000)。
22.根据权利要求21所述的处理装置,其中,所述神经网络处理器(2000)和通用处理器(3000)中的至少一个包括运算单元,所述复用装置调用所述运算单元来进行计算第i层网络的Hash值。
23.根据权利要求22所述的处理装置,其中,所述复用装置中去除计算功能。
24.根据权利要求21-23中的任一所述的处理装置,其中,所述神经网络处理器(2000)还包括:预处理模块(1001)、DMA(500)、存储单元(200)、输入缓存单元(600)、控制单元(300)、查找表(700)、选数单元(800)、运算单元(400)以及输出神经元缓存(900)中的至少一个,所述输入缓存单元包括指令缓存(601)、非零权值密码本缓存(602)、非零权值字典缓存(603)、非零权值位置缓存(604)、输入神经元缓存(605)中的至少一个。
25.一种芯片,其中,所述芯片包括权利要求21至24中任一所述的处理装置。
26.一种电子装置,其中,所述电子装置包括权利要求25所述的芯片。
CN201711247175.2A 2016-11-30 2017-11-30 一种指令生成过程的复用方法及装置、处理装置 Active CN107977229B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2016110923727 2016-11-30
CN201611092372.7A CN106557332A (zh) 2016-11-30 2016-11-30 一种指令生成过程的复用方法及装置

Publications (2)

Publication Number Publication Date
CN107977229A true CN107977229A (zh) 2018-05-01
CN107977229B CN107977229B (zh) 2023-05-16

Family

ID=58445732

Family Applications (3)

Application Number Title Priority Date Filing Date
CN201611092372.7A Pending CN106557332A (zh) 2016-11-30 2016-11-30 一种指令生成过程的复用方法及装置
CN201711247175.2A Active CN107977229B (zh) 2016-11-30 2017-11-30 一种指令生成过程的复用方法及装置、处理装置
CN201711247174.8A Active CN108008948B (zh) 2016-11-30 2017-11-30 一种指令生成过程的复用装置及方法、处理装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201611092372.7A Pending CN106557332A (zh) 2016-11-30 2016-11-30 一种指令生成过程的复用方法及装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201711247174.8A Active CN108008948B (zh) 2016-11-30 2017-11-30 一种指令生成过程的复用装置及方法、处理装置

Country Status (4)

Country Link
US (1) US11263520B2 (zh)
EP (1) EP3550429B1 (zh)
CN (3) CN106557332A (zh)
WO (2) WO2018099151A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108008948A (zh) * 2016-11-30 2018-05-08 上海寒武纪信息科技有限公司 一种指令生成过程的复用装置及方法、处理装置
CN110503596A (zh) * 2019-08-12 2019-11-26 北京中科寒武纪科技有限公司 视频处理方法、装置、电子设备以及计算机可读存储介质
CN111047021A (zh) * 2018-10-12 2020-04-21 中科寒武纪科技股份有限公司 一种计算装置及相关产品
WO2021000281A1 (en) * 2019-07-03 2021-01-07 Huaxia General Processor Technologies Inc. Instructions for operating accelerator circuit

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108734288B (zh) * 2017-04-21 2021-01-29 上海寒武纪信息科技有限公司 一种运算方法及装置
CN109389210B (zh) * 2017-08-09 2021-06-18 上海寒武纪信息科技有限公司 处理方法和处理装置
GB2568776B (en) * 2017-08-11 2020-10-28 Google Llc Neural network accelerator with parameters resident on chip
CN110968532B (zh) * 2018-09-29 2021-09-21 上海寒武纪信息科技有限公司 数据传输方法及相关产品
CN111079925B (zh) * 2018-10-19 2021-04-09 中科寒武纪科技股份有限公司 运算方法、装置及相关产品
CN111079907B (zh) * 2018-10-19 2021-01-26 安徽寒武纪信息科技有限公司 运算方法、装置及相关产品
CN111915003B (zh) * 2019-05-09 2024-03-22 深圳大普微电子科技有限公司 一种神经网络硬件加速器
JP6834097B1 (ja) * 2020-05-15 2021-02-24 エッジコーティックス ピーティーイー. リミテッド 推論のニューラルネットワークアクセラレータのハードウェア固有分割

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064660A (en) * 1996-12-12 2000-05-16 Optimay Corporation GSM transceiver with portable protocol stack
US6308320B1 (en) * 1999-01-15 2001-10-23 Hewlett-Packard Company Method and apparatus for incremental selective compilation of intermediate code files during computer system compilation and linking
CN102165789A (zh) * 2008-09-29 2011-08-24 诺基亚公司 实现物理载体和oma-bcast之间的适配的方法和系统
CN102662830A (zh) * 2012-03-20 2012-09-12 湖南大学 一种基于动态二进制翻译框架的代码复用攻击检测系统
US20130336320A1 (en) * 2012-06-15 2013-12-19 Vivekanand Rangaraman Systems and methods for reassembly of packets distributed across a cluster
US20150098470A1 (en) * 2013-10-04 2015-04-09 Broadcom Corporation Hierarchical hashing for longest prefix matching
CN104750560A (zh) * 2015-03-06 2015-07-01 联想(北京)有限公司 一种信息处理方法及电子设备
CN105409150A (zh) * 2013-10-31 2016-03-16 华为技术有限公司 无线通信系统中采用自适应分层调制实现均等差错保护的方法和节点
US9294282B1 (en) * 2013-07-01 2016-03-22 Amazon Technologies, Inc. Cryptographically verified repeatable virtualized computing
CN105719001A (zh) * 2014-12-19 2016-06-29 谷歌公司 使用散列的神经网络中的大规模分类

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7882499B2 (en) * 2005-10-24 2011-02-01 Microsoft Corporation Caching dynamically compiled code to storage
US7831531B1 (en) * 2006-06-22 2010-11-09 Google Inc. Approximate hashing functions for finding similar content
KR100962653B1 (ko) * 2008-07-24 2010-06-11 이화여자대학교 산학협력단 블룸 필터 및 복수 해싱 구조를 사용한 ip 주소 검색방법 및 장치
US8832464B2 (en) * 2009-03-31 2014-09-09 Oracle America, Inc. Processor and method for implementing instruction support for hash algorithms
CN101567006B (zh) * 2009-05-25 2012-07-04 中兴通讯股份有限公司 一种数据库系统及分布式sql语句执行计划重用方法
US9009149B2 (en) * 2011-12-06 2015-04-14 The Trustees Of Columbia University In The City Of New York Systems and methods for mobile search using Bag of Hash Bits and boundary reranking
CN102546624A (zh) * 2011-12-26 2012-07-04 西北工业大学 一种网络多路入侵检测防御方法及系统
US20130339649A1 (en) * 2012-06-15 2013-12-19 Intel Corporation Single instruction multiple data (simd) reconfigurable vector register file and permutation unit
US9449257B2 (en) * 2012-12-04 2016-09-20 Institute Of Semiconductors, Chinese Academy Of Sciences Dynamically reconstructable multistage parallel single instruction multiple data array processing system
JP6028567B2 (ja) * 2012-12-28 2016-11-16 富士通株式会社 データ格納プログラム、データ検索プログラム、データ格納装置、データ検索装置、データ格納方法及びデータ検索方法
US9141554B1 (en) * 2013-01-18 2015-09-22 Cisco Technology, Inc. Methods and apparatus for data processing using data compression, linked lists and de-duplication techniques
US20140219279A1 (en) * 2013-02-07 2014-08-07 The Royal Institution For The Advancement Of Learning / Mcgill University Methods and systems for network address lookup engines
US9172756B2 (en) * 2013-03-12 2015-10-27 Cisco Technology, Inc. Optimizing application performance in a network environment
US9367454B2 (en) * 2013-08-15 2016-06-14 Applied Micro Circuits Corporation Address index recovery using hash-based exclusive or
US20150109024A1 (en) * 2013-10-22 2015-04-23 Vaughn Timothy Betz Field Programmable Gate-Array with Embedded Network-on-Chip Hardware and Design Flow
US9256549B2 (en) * 2014-01-17 2016-02-09 Netapp, Inc. Set-associative hash table organization for efficient storage and retrieval of data in a storage system
US9385954B2 (en) * 2014-03-31 2016-07-05 Nicira, Inc. Hashing techniques for use in a network environment
US20160026912A1 (en) * 2014-07-22 2016-01-28 Intel Corporation Weight-shifting mechanism for convolutional neural networks
CN104346440B (zh) * 2014-10-10 2017-06-23 浙江大学 一种基于神经网络的跨媒体哈希索引方法
US9299347B1 (en) * 2014-10-22 2016-03-29 Google Inc. Speech recognition using associative mapping
US9626299B2 (en) * 2015-05-01 2017-04-18 Intel Corporation Changing a hash function based on a conflict ratio associated with cache sets
CN104834748B (zh) * 2015-05-25 2018-08-03 中国科学院自动化研究所 一种利用基于深度语义排序哈希编码的图像检索方法
US9734436B2 (en) * 2015-06-05 2017-08-15 At&T Intellectual Property I, L.P. Hash codes for images
US11244225B2 (en) * 2015-07-10 2022-02-08 Samsung Electronics Co., Ltd. Neural network processor configurable using macro instructions
US10726328B2 (en) * 2015-10-09 2020-07-28 Altera Corporation Method and apparatus for designing and implementing a convolution neural net accelerator
US11216720B2 (en) * 2015-10-08 2022-01-04 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that manages power consumption based on memory accesses per period
US10346351B2 (en) * 2015-10-08 2019-07-09 Via Alliance Semiconductor Co., Ltd. Neural network unit with output buffer feedback and masking capability with processing unit groups that operate as recurrent neural network LSTM cells
US11029949B2 (en) * 2015-10-08 2021-06-08 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit
CN105205396A (zh) * 2015-10-15 2015-12-30 上海交通大学 一种基于深度学习的安卓恶意代码检测系统及其方法
CN105512273A (zh) * 2015-12-03 2016-04-20 中山大学 一种基于可变长深度哈希学习的图像检索方法
US9979648B1 (en) * 2015-12-28 2018-05-22 Amazon Technologies, Inc. Increasing entropy across routing table segments
US10846591B2 (en) * 2015-12-29 2020-11-24 Synopsys, Inc. Configurable and programmable multi-core architecture with a specialized instruction set for embedded application based on neural networks
CN106991073B (zh) * 2016-01-20 2020-06-05 中科寒武纪科技股份有限公司 用于向量运算的数据读写调度器及保留站
WO2017136081A1 (en) * 2016-02-05 2017-08-10 Google Inc. Augmenting neural networks with hierarchical external memory
GB201607713D0 (en) * 2016-05-03 2016-06-15 Imagination Tech Ltd Convolutional neural network
CA2990709C (en) * 2016-05-26 2018-09-04 The Governing Council Of The University Of Toronto Accelerator for deep neural networks
CN106126235B (zh) * 2016-06-24 2019-05-07 中国科学院信息工程研究所 一种复用代码库构建方法、复用代码快速溯源方法及系统
US10528864B2 (en) * 2016-08-11 2020-01-07 Nvidia Corporation Sparse convolutional neural network accelerator
GB2554711B (en) * 2016-10-06 2020-11-25 Imagination Tech Ltd Buffer addressing for a convolutional neural network
US10482336B2 (en) * 2016-10-07 2019-11-19 Noblis, Inc. Face recognition and image search system using sparse feature vectors, compact binary vectors, and sub-linear search
US10043095B2 (en) * 2016-10-10 2018-08-07 Gyrfalcon Technology, Inc. Data structure for CNN based digital integrated circuit for extracting features out of an input image
US9940534B1 (en) * 2016-10-10 2018-04-10 Gyrfalcon Technology, Inc. Digital integrated circuit for extracting features out of an input image based on cellular neural networks
CN106557332A (zh) * 2016-11-30 2017-04-05 上海寒武纪信息科技有限公司 一种指令生成过程的复用方法及装置
US11036677B1 (en) * 2017-12-14 2021-06-15 Pure Storage, Inc. Replicated data integrity
WO2023030507A1 (zh) * 2021-09-03 2023-03-09 寒武纪(西安)集成电路有限公司 编译优化方法、装置、计算机设备以及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064660A (en) * 1996-12-12 2000-05-16 Optimay Corporation GSM transceiver with portable protocol stack
US6308320B1 (en) * 1999-01-15 2001-10-23 Hewlett-Packard Company Method and apparatus for incremental selective compilation of intermediate code files during computer system compilation and linking
CN102165789A (zh) * 2008-09-29 2011-08-24 诺基亚公司 实现物理载体和oma-bcast之间的适配的方法和系统
CN102662830A (zh) * 2012-03-20 2012-09-12 湖南大学 一种基于动态二进制翻译框架的代码复用攻击检测系统
US20130336320A1 (en) * 2012-06-15 2013-12-19 Vivekanand Rangaraman Systems and methods for reassembly of packets distributed across a cluster
US9294282B1 (en) * 2013-07-01 2016-03-22 Amazon Technologies, Inc. Cryptographically verified repeatable virtualized computing
US20150098470A1 (en) * 2013-10-04 2015-04-09 Broadcom Corporation Hierarchical hashing for longest prefix matching
CN105409150A (zh) * 2013-10-31 2016-03-16 华为技术有限公司 无线通信系统中采用自适应分层调制实现均等差错保护的方法和节点
CN105719001A (zh) * 2014-12-19 2016-06-29 谷歌公司 使用散列的神经网络中的大规模分类
CN104750560A (zh) * 2015-03-06 2015-07-01 联想(北京)有限公司 一种信息处理方法及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
叶峰: "数字电视复用调制器网管软件及单频网适配器软件的设计与实现" *
周波;张源;杨珉;周曦;: "用代码缓存复用技术提升Android即时编译器效率" *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108008948A (zh) * 2016-11-30 2018-05-08 上海寒武纪信息科技有限公司 一种指令生成过程的复用装置及方法、处理装置
CN108008948B (zh) * 2016-11-30 2023-08-25 上海寒武纪信息科技有限公司 一种指令生成过程的复用装置及方法、处理装置
CN111047021A (zh) * 2018-10-12 2020-04-21 中科寒武纪科技股份有限公司 一种计算装置及相关产品
CN111047021B (zh) * 2018-10-12 2023-11-24 中科寒武纪科技股份有限公司 一种计算装置及相关产品
WO2021000281A1 (en) * 2019-07-03 2021-01-07 Huaxia General Processor Technologies Inc. Instructions for operating accelerator circuit
CN110503596A (zh) * 2019-08-12 2019-11-26 北京中科寒武纪科技有限公司 视频处理方法、装置、电子设备以及计算机可读存储介质

Also Published As

Publication number Publication date
US20190311251A1 (en) 2019-10-10
EP3550429A1 (en) 2019-10-09
CN108008948A (zh) 2018-05-08
WO2018099151A1 (zh) 2018-06-07
CN106557332A (zh) 2017-04-05
CN108008948B (zh) 2023-08-25
WO2018099490A1 (zh) 2018-06-07
CN107977229B (zh) 2023-05-16
EP3550429B1 (en) 2021-10-06
US11263520B2 (en) 2022-03-01
EP3550429A4 (en) 2020-03-25

Similar Documents

Publication Publication Date Title
CN107977229A (zh) 一种指令生成过程的复用方法及装置、处理装置
CN106233224B (zh) 多处理器片上系统中的能效感知热管理的方法和系统
CN103959192B (zh) 用于估算超越函数的数学电路
CN107819569A (zh) 登录信息的加密方法及终端设备
CN107957976A (zh) 一种计算方法及相关产品
JP7110278B2 (ja) 負荷を均衡化するための方法、装置、機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
Teshome et al. Comprehensive mixed‐integer linear programming model for distribution system reconfiguration considering DGs
CN107402905A (zh) 基于神经网络的计算方法及装置
Singh et al. Artificial Bee Colony algorithm with improved search mechanism
CN105095515A (zh) 支持快速查询Map-Reduce输出结果的分桶方法、装置及设备
CN104778088B (zh) 一种基于减少进程间通信开销的并行i/o优化方法与系统
CN108255703A (zh) 一种sql脚本的故障修复方法及其终端
US10209765B2 (en) Method for achieving low power consumption of three-dimensional measurement chip
CN114548028B (zh) 进行低功耗设计的方法、电子设备及存储介质
Kang et al. Low‐complexity twiddle factor generation for FFT processor
CN111260070B (zh) 运算方法、装置及相关产品
CN111258542B (zh) 乘法器、数据处理方法、芯片及电子设备
CN111258641B (zh) 运算方法、装置及相关产品
Abed et al. Hybrid approach based on partial tag comparison technique and search methods to improve cache performance
CN107621972A (zh) 大数据任务动态管理方法、装置及服务器
US9459999B2 (en) Memory control method for a computer system
CN110647516A (zh) 文件副本存储方法、装置、可读存储介质及电子设备
CN105630896A (zh) 一种快速导入海量数据的方法
Wang et al. BFT: a placement algorithm for non‐rectangle task model in reconfigurable computing system
CN111831095A (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
GR01 Patent grant
GR01 Patent grant