CN117149778A - 稀疏张量运算加速方法、系统、计算机设备和存储介质 - Google Patents
稀疏张量运算加速方法、系统、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117149778A CN117149778A CN202311414028.5A CN202311414028A CN117149778A CN 117149778 A CN117149778 A CN 117149778A CN 202311414028 A CN202311414028 A CN 202311414028A CN 117149778 A CN117149778 A CN 117149778A
- Authority
- CN
- China
- Prior art keywords
- dimension
- merging
- sparse
- index
- merging dimension
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000001133 acceleration Effects 0.000 title claims abstract description 22
- 238000013507 mapping Methods 0.000 claims abstract description 66
- 238000004364 calculation method Methods 0.000 claims abstract description 44
- 230000000903 blocking effect Effects 0.000 claims abstract description 27
- 238000000638 solvent extraction Methods 0.000 claims abstract description 22
- 238000005192 partition Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 230000011218 segmentation Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000009833 condensation Methods 0.000 description 1
- 230000005494 condensation Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Complex Calculations (AREA)
Abstract
本申请涉及稀疏张量运算加速领域,特别是涉及一种稀疏张量运算加速方法、系统、计算机设备和存储介质,所述方法包括:读取两稀疏张量的压缩表示元数据信息,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,得到最终分块;将所述最终分块依次搬运至更内层缓存,直至完成计算。本发明减少运行时稀疏张量数据分块划分的重复性操作,进一步节省稀疏张量运算时间。
Description
技术领域
本申请涉及稀疏张量运算加速领域,特别是涉及一种稀疏张量运算加速方法、系统、计算机设备和存储介质。
背景技术
稀疏张量因其非零元素个数远小于张量元素的总数而著称,稀疏张量乘法运算也广泛存在于大数据、数据挖掘、信息检索、网页搜索排名和计算机视觉等领域,因而按照传统的张量存储和计算方式来处理稀疏张量,必会极大地浪费宝贵的存储资源和计算资源,导致计算与存储效率极度低下,目前,针对稀疏张量存储的问题,已有如CSC、CSR、CSF等诸多解决方案,但稀疏张量缩并的计算加速问题仍是一个迫在眉睫的问题。
由于稀疏张量的大部分元素值为零,且张量稀疏性不具有明确的规律性,因而,在借助传统现有方法和架构进行稀疏张量运算时,多数实现方式存在大量无效计算、计算效率低下的问题,少数试图通过分块方式来改善计算效率的方法,又会在不同数据流下对同一区域内的稀疏张量(尤其是非稳定稀疏张量)分块划分场景下存在大量重复操作,无法高效简便地达到稀疏张量运算加速的目的。
发明内容
基于此,有必要针对上述技术问题,提供一种基于高效轻便灵活自适应分块的稀疏张量运算加速方法、系统、计算机设备和存储介质。
第一方面,本发明实施例提出一种稀疏张量运算加速方法,所述方法包括:
读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;
将所述最终分块依次搬运至更内层缓存,直至完成计算。
在一实施例中,所述读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中包括:
基于所述两稀疏张量的压缩表示元数据信息,还原两稀疏张量中非零元素的缩并维度索引和非缩并维度索引;
将具有相同缩并维度索引的非零元素的非缩并维度索引组织到非缩并维度索引集合中,再将所述缩并维度索引与所述非缩并维度索引集合建立键值对,存储在非零元素坐标索引哈希映射表中;
将所述两稀疏张量的非零元素所在缩并维度索引与该缩并维度索引所在稀疏张量名称集合之间,以键值对的形式存储在全局缩并维度映射表中;
基于所述非零元素坐标索引哈希映射表、所述全局缩并维度映射表,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中。
在一实施例中,所述基于所述非零元素坐标索引哈希映射表、所述全局缩并维度映射表,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中包括:
遍历所述全局缩并维度映射表,检测每个缩并维度索引所对应的稀疏张量名称集合中是否都包含两个元素;
若是,则依次从对应的稀疏张量的非零元素坐标索引哈希映射表中索引出该缩并维度索引对应的两个非缩并维度索引集合,通过对另一稀疏张量非缩并维度索引集合求补集来分别为该缩并维度对应的两稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,形成无效计算元素非缩并维度起止范围集合,并以该缩并维度索引为键,以所述稀疏张量的无效计算元素非缩并维度起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中;
若否,则为当前缩并维度对应的稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以该缩并维度索引为键,以所述另一稀疏张量非缩并维度的起始维度索引和终止维度索引组成的起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中。
在一实施例中,所述对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息包括:
利用贪心算法对选定的稀疏张量的缩并维度进行切分,得到缩并维度划分候选点,并加入至缩并维度划分候选点有序列表中;
基于所述缩并维度划分候选点有序列表,加载另一个稀疏张量,判断由当前的缩并维度划分候选点与当前稀疏张量的非缩并维度大小确定的预分块的内存占用量是否超出限定大小,若超出限定大小,则迭代利用二分法对当前缩并维度进行划分,直至满足内存占用量限制,并将产生的缩并维度划分候选点加入至所述缩并维度划分候选点有序列表中;
基于所述缩并维度划分候选点有序列表,利用贪心算法分别对两输入稀疏张量的非缩并维度进行划分,并将产生的非缩并维度划分候选节点加入到对应稀疏张量的非缩并维度划分候选点有序列表中。
在一实施例中,所述利用贪心算法对选定的稀疏张量的缩并维度进行切分,得到缩并维度划分候选点,并加入至缩并维度划分候选点有序列表中包括:
基于当前稀疏张量的非缩并维度的大小,利用贪心算法增长每个预分块在缩并维度上的大小,直到当前预分块的内存占用量在不超出限定大小的前提下达到最大值;
将最大缩并维度值作为缩并维度划分候选点,以该缩并维度划分候选点作为新分块的缩并维度起始点,继续对剩余缩并维度进行划分,直至该缩并维度划分完成,将所述缩并维度划分候选点加入至缩并维度划分候选点有序列表中。
在一实施例中,所述基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块包括:
基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数;
判断所述无效计算元素个数是否为零,若不为零,则将无效计算元素剔除后重新计算预分块的内存占用量,并尝试扩展该预分块的非缩并维度,直至预分块的内存占用量达到不超限的最大值为止,得到该预分块的分界点;
以所述预分块的分界点作为下一个分块的起始点,进行下一个分块的划分,直至当前数据流下完成分块划分的分块的内存占用总量达到不超限的最大值。
在一实施例中,所述基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数包括:
根据稀疏张量运算的实际数据流调度需求,确定所述两稀疏张量当前参与运算的元素范围;
基于缩并维度划分候选点有序列表和及其对应的非缩并维度划分候选点有序列表,确定预分块;
基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数。
第二方面,本发明实施例提出一种稀疏张量运算加速系统,所述系统包括:
索引确定模块,用于读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
第一分块模块,用于对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
第二分块模块,用于基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;
搬运模块,用于将所述最终分块依次搬运至更内层缓存,直至完成计算。
第三方面,本发明实施例提出一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行第一方面所述的步骤。
第四方面,本发明实施例提出一种计算机可读存储介质,其上存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的步骤。
相比于现有技术,上述方法、系统、计算机设备和存储介质,通过读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;将所述最终分块依次搬运至更内层缓存,直至完成计算。本发明解决现有技术中稀疏张量有效计算数过低、数据重用率过低、算术密集度不高等问题,将稀疏张量的数据分块的一些共性划分工作提前至数据运算之前完成,减少运行时稀疏张量数据分块划分的重复性操作,进一步节省稀疏张量运算时间。
附图说明
图1为一实施例中终端的结构示意图;
图2为一实施例中稀疏张量运算加速方法的流程示意图;
图3为一实施例中步骤S202的流程示意图;
图4为一实施例中步骤S308的流程示意图;
图5为一实施例中步骤S204的流程示意图;
图6为一实施例中步骤S502的流程示意图;
图7为一实施例中步骤S206的流程示意图;
图8为一实施例中步骤S702的流程示意图;
图9为一示例实施例中非零元素坐标索引哈希映射表及全局缩并维度索引哈希映射表的构建示意图;
图10为一示例实施例中无效计算元素标记范围哈希映射表的构建示意图;
图11为一示例实施例中稀疏张量维度划分示意图;
图12为一示例实施例中稀疏张量运算数据流调度下的实际分块划分示意图;
图13为一实施例中稀疏张量运算加速系统的模块连接示意图;
图14为一实施例中计算机设备的结构示意图。
具体实施方式
为了更清楚地说明本发明的实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本发明应用于其他类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
如本发明和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其他的步骤或元素。
虽然本发明对根据本发明的实施例的系统中的某些模块做出了各种引用,然而,任何数量的不同模块可以被使用并运行在计算设备和/或处理器上。模块仅是说明性的,并且系统和方法的不同方面可以使用不同模块。
应当理解的是,当单元或模块被描述为“连接”、“耦接”其它单元、模块或块时,其可以指直接连接或耦接,或者与其它单元、模块或块通信,或者可以存在中间的单元、模块或块,除非上下文明确指明其它方式。本文所使用的术语“和/或”可包括一个或多个相关列出项目的任意与所有组合。
本申请提供的稀疏张量运算加速方法,可以应用于如图1所示的终端中。如图1所示,终端可以包括一个或两个(图1中仅示出一个)处理器102和用于存储数据的存储器104,其中,处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理系统。上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限制。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示出的不同配置。
存储器104可用于存储计算机程序,如在本实施例中的稀疏张量运算加速方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储系统、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(NetworkInterfaceController,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(RadioFrequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
如图2所示,本发明实施例提供了一种稀疏张量运算加速方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
S202:读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
其中,所述有效计算是指对输出稀疏张量非零元素的最终值有所贡献的张量运算,所述有效计算元素是指参与前述有效计算的两输入稀疏张量的对应位置的元素;所述无效计算是指对输出稀疏张量非零元素的最终值没有贡献的张量运算,相应地,所述无效计算元素是指参与前述无效计算的两输入稀疏张量的对应位置的元素;所述无效计算元素的适用范围是指当其中一个输入稀疏张量中某一位置处的非零元素被判定为无效计算元素时所对应的另一个输入稀疏张量的非缩并维度的起止范围。
S204:对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
利用高效轻便灵活自适应分块算法,对两稀疏张量进行自适应协同分块,记录下两稀疏张量预分块信息,即用于确定分块边界的缩并维度划分点和非缩并维度划分点信息。
S206:基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块。
S208:将所述最终分块依次搬运至更内层缓存,直至完成计算。
本实施例解决现有技术中稀疏张量有效计算数过低、数据重用率过低、算术密集度不高等问题,将稀疏张量的数据分块的一些共性划分工作提前至数据运算之前完成,减少运行时稀疏张量数据分块划分的重复性操作,进一步节省稀疏张量运算时间。
在一实施例中,如图3所示,步骤S202具体包括以下步骤:
S302:基于所述两稀疏张量的压缩表示元数据信息,还原两稀疏张量中非零元素的缩并维度索引和非缩并维度索引;
S304:将具有相同缩并维度索引的非零元素的非缩并维度索引组织到非缩并维度索引集合中,再将所述缩并维度索引与所述非缩并维度索引集合建立键值对,存储在非零元素坐标索引哈希映射表中;
S306:将所述两稀疏张量的非零元素所在缩并维度索引与该缩并维度索引所在稀疏张量名称集合之间,以键值对的形式存储在全局缩并维度映射表中;
S308:基于所述非零元素坐标索引哈希映射表、所述全局缩并维度映射表,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中。
在一实施例中,如图4所示,步骤S308具体包括以下步骤:
S402:遍历所述全局缩并维度映射表,检测每个缩并维度索引所对应的稀疏张量名称集合中是否都包含两个元素;
S404:若是,则依次从对应的稀疏张量的非零元素坐标索引哈希映射表中索引出该缩并维度索引对应的两个非缩并维度索引集合,通过对另一稀疏张量非缩并维度索引集合求补集来分别为该缩并维度对应的两稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,形成无效计算元素非缩并维度起止范围集合,并以该缩并维度索引为键,以所述稀疏张量的无效计算元素非缩并维度起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中;
S406:若否,则为当前缩并维度对应的稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以该缩并维度索引为键,以所述另一稀疏张量非缩并维度的起始维度索引和终止维度索引组成的起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中。
在一实施例中,如图5所示,步骤S204具体包括以下步骤:
S502:利用贪心算法对选定的稀疏张量的缩并维度进行切分,得到缩并维度划分候选点,并加入至缩并维度划分候选点有序列表中;
在此之前,为进一步充分利用加速卡的计算资源,约定每个稀疏张量的分块的内存占用量不能超过加速卡计算单元一次所能处理一个操作数中数据量的最大值,并根据每个稀疏张量分块的最大内存占用量确定该分块在每个维度上的初始大小,设立稀疏张量缩并维度划分候选点有序列表,以及为每个稀疏张量设立缩并维度划分候选点与非缩并维度划分候选点有序列表的哈希映射表,且其初始状态均为空。
之后,从两稀疏张量中任意选定一个作为首次分块的稀疏张量。
S504:基于所述缩并维度划分候选点有序列表,加载另一个稀疏张量,判断由当前的缩并维度划分候选点与当前稀疏张量的非缩并维度大小确定的预分块的内存占用量是否超出限定大小,若超出限定大小,则迭代利用二分法对当前缩并维度进行划分,直至满足内存占用量限制,并将产生的缩并维度划分候选点加入至所述缩并维度划分候选点有序列表中;
S506:基于所述缩并维度划分候选点有序列表,利用贪心算法分别对两输入稀疏张量的非缩并维度进行划分,并将产生的非缩并维度划分候选节点加入到对应稀疏张量的非缩并维度划分候选点有序列表中。
同时,将该非缩并维度划分候选点有序列表与其对应缩并维度划分候选点建立映射关系加入步骤S502的哈希映射表中。
其中,步骤S506所采用的贪心算法与步骤S502所采用的贪心算法相同。
在一实施例中,如图6所示,步骤S502具体包括以下步骤:
S602:基于当前稀疏张量的非缩并维度的大小,利用贪心算法增长每个预分块在缩并维度上的大小,直到当前预分块的内存占用量在不超出限定大小的前提下达到最大值;
S604:将最大缩并维度值作为缩并维度划分候选点,以该缩并维度划分候选点作为新分块的缩并维度起始点,继续对剩余缩并维度进行划分,直至该缩并维度划分完成,将所述缩并维度划分候选点加入至缩并维度划分候选点有序列表中。
在步骤S206中,稀疏张量的预分块信息,是指所述无效计算元素标记范围映射表及输入稀疏张量的缩并维度划分候选点有序列表及两个稀疏张量的缩并维度划分候选点与非缩并维度划分候选点有序列表的哈希映射表。
在一实施例中,如图7所示,步骤S206具体包括以下步骤:
S702:基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数;
S704:判断所述无效计算元素个数是否为零,若不为零,则将无效计算元素剔除后重新计算预分块的内存占用量,并尝试扩展该预分块的非缩并维度,直至预分块的内存占用量达到不超限的最大值为止,得到该预分块的分界点;
其中,可以基于预分块中有效计算元素计算其内存占用量。当预分块大小确定时,根据预分块中有效计算元素构建该分块对应的压缩表示元数据信息。
S706:以所述预分块的分界点作为下一个分块的起始点,进行下一个分块的划分,直至当前数据流下完成分块划分的分块的内存占用总量达到不超限的最大值。
其中,将按照本层缓存与更内层缓存之间的数据传输的最大容量作为不超限的最大值。
在一实施例中,如图8所示,步骤S702具体包括以下步骤:
S802:根据稀疏张量运算的实际数据流调度需求,确定所述两稀疏张量当前参与运算的元素范围;
S804:基于缩并维度划分候选点有序列表和及其对应的非缩并维度划分候选点有序列表,确定预分块;
S806:基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数。
在一示例实施例中,假设存在两个二维稀疏张量进行张量缩并运算,其中两稀疏张量的形状分别为(6,4)、(4,6),均采用CSR压缩表示形式,本实施例将基于以上假设信息来展开说明稀疏张量非零元素坐标索引哈希映射表及全局缩并维度索引哈希映射表的构建过程,但这并不代表本方法仅适用于当下场景。
具体地,根据附图9左下角所示的稀疏张量A的CSR压缩形式构建A中非零元素坐标索引哈希映射表的过程如下:(1)遍历K维数组中的元素,则其中每一个元素都代表着非零元素所在缩并维度索引;(2)遍历I维数组,寻找满足比步骤(1)中所述元素缩并维度索引所对应的数组索引值大的第一个元素,则符合条件的第一个元素在I维数组中的索引值减1即为步骤(1)中所述元素所对应的非缩并维度索引;(3)将步骤(2)中所述非缩并维度索引加入到步骤(1)所述缩并维度索引对应的集合中。
其中,稀疏张量A压缩表示中的K维数组第一个元素1代表存在非零元素的缩并维度索引为1,其对应的数组索引值为0;为找出该元素的非缩并维度索引,须在I维数组中寻找第一个大于0的元素,即为I维数组第二个元素,那么该非零元素的非缩并维度索引为0(1- 1);将该非零元素的非缩并维度索引加入到该缩并维度索引的非缩并维度索引集合中,即附图9右侧图第一个哈希映射表中虚线框部分。依次类推,可得稀疏张量A的非零元素坐标索引哈希映射表如附图9右侧第一个哈希映射表所示。
而稀疏张量B的非零元素坐标索引哈希映射表的构建过程略有不同,具体为:(1)遍历K维数组,针对其中每一个不为0的元素做步骤(2)、(3)所述操作;(2)以该元素的前一个元素为起始地址(包含),以该元素为终止地址(不包含),组成索引范围,在J维数组中获取索引值落在上述索引范围内的元素,构成一组非零元素的非缩并维度索引集合;(3)步骤(1)所述的不为0的元素对应的K维数组索引值减1即为步骤(2)中所述非缩并维度索引集合对应的缩并维度索引。
其中,以稀疏张量B压缩表示中K维数组里第一个不为0的元素3为例来具体说明,其对应的一组非零元素的非缩并维度索引在J维数组中的索引范围为[0,3),对照J维数组中的元素不难得出,该组非零元素非缩并维度索引集合为{0,2,3};另外,该组非缩并维度索引集合对应的缩并维度索引为0(1 - 1);将缩并维度索引与非缩并维度索引集合以键值对的形式组织起来,如附图1右侧图第二个哈希映射表中虚线框中标注所示,以此类推,可得稀疏张量B非零元素坐标索引哈希映射表。在构建前述两个哈希映射表的过程中,也可同步构建两稀疏张量缩并维度索引与稀疏张量名称的哈希映射关系,如附图9右侧第三个哈希映射表所示。
基于上述得到的三个哈希映射表,构建两稀疏张量的无效元素标记范围映射表,以稀疏张量A为例,首先,检索稀疏张量全局缩并维度索引哈希映射表,发现每个缩并维度索引均在两稀疏张量中出现,因而,需要稀疏张量B非零元素坐标索引哈希映射表中的信息来进一步确定稀疏张量A中每个缩并维度中非零元素的无效计算元素标记范围。具体地,稀疏张量A的缩并维度索引0中非零元素的无效计算元素标记范围计算方法为:对缩并维度索引0在稀疏张量B中对应的一组非缩并维度索引集合取补集,即得稀疏张量A缩并维度索引0的无效计算元素标记范围为{[1,1],[4,5]},即附图10虚线框部分所示;其他缩并维度无效计算元素标记范围可如法炮制。
假设每个分块中最多只能包含两个数据值,则将两稀疏张量的分块初始形状设为2 x 1, 1 x 2,即缩并维度大小均为1,非缩并维度大小为2。假定选择稀疏张量A作为首个划分维度的稀疏张量,则,首先按照贪心算法思想尽可能地增大缩并维度大小,当缩并维度大小增大至3时,分块内包含的数据值个数为3,超出了限定,因而,第一个缩并维度划分候选点为1;以此类推,可得第二个缩并维度划分候选点为3;加载稀疏张量B,判断当前的缩并维度划分方式是否适合稀疏张量B,经判定符合,继续划分两稀疏张量非缩并维度,最终结果如附图11所示。
假定在实际的稀疏张量运算数据流调度下,稀疏张量B为稳定稀疏张量,附图12中展示了缩并维度划分点为1时,随着数据流的推进,两稀疏张量的分块划分情况。以任务 4的分块过程来举例说明,首先,由于任务 3中稀疏张量B的分块的非缩并维度划分点为1,那么当前任务下,新分块将以1作为其非缩并维度上的起始点,获取下一个非缩并维度划分点3,于是,稀疏张量B在当前数据流下的分块确定,非缩并维度范围为[2,3]。根据附图10中无效计算元素标记范围哈希映射表中的信息,可以确定,与稀疏张量B的当前分块运算的稀疏张量A中所有位于缩并维度1处的非零元素均为无效计算元素,因而,由上述确定的稀疏张量A的分块(如任务 4中虚线框中所示)中存在一个无效计算元素,因而,为尽可能地最大化分块中有效计算元素,需要进一步扩展分块的非缩并维度,如任务 4中方框内所示,此时,分块内存在两个有效计算元素和两个无效计算元素,因而,在打包和搬运分块时,只会包含有效计算元素,将无效计算元素排除在外,从而避免无效计算元素浪费系统资源。其他任务下的分块过程与此类似,不再赘述。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一实施例中,如图13所示,本发明提供了一种稀疏张量运算加速系统,所述系统包括:
索引确定模块1302,用于读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
第一分块模块1304,用于对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
第二分块模块1306,用于基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;
分块搬运模块1308,用于将所述最终分块依次搬运至更内层缓存,直至完成计算。
本实施例解决现有技术中稀疏张量有效计算数过低、数据重用率过低、算术密集度不高等问题,将稀疏张量的数据分块的一些共性划分工作提前至数据运算之前完成,减少运行时稀疏张量数据分块划分的重复性操作,进一步节省稀疏张量运算时间。
关于稀疏张量运算加速系统的具体限定可以参见上文中对于运算加速方法的限定,在此不再赘述。上述稀疏张量运算加速系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,本发明实施例提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储动作检测数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现上述任一项稀疏张量运算加速方法实施例中的步骤。
本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一实施例中,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一项稀疏张量运算加速方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(DynamicRandom Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种稀疏张量运算加速方法,其特征在于,所述方法包括:
读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;
将所述最终分块依次搬运至更内层缓存,直至完成计算。
2.根据权利要求1所述的方法,其特征在于,所述读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中包括:
基于所述两稀疏张量的压缩表示元数据信息,还原两稀疏张量中非零元素的缩并维度索引和非缩并维度索引;
将具有相同缩并维度索引的非零元素的非缩并维度索引组织到非缩并维度索引集合中,再将所述缩并维度索引与所述非缩并维度索引集合建立键值对,存储在非零元素坐标索引哈希映射表中;
将所述两稀疏张量的非零元素所在缩并维度索引与该缩并维度索引所在稀疏张量名称集合之间,以键值对的形式存储在全局缩并维度映射表中;
基于所述非零元素坐标索引哈希映射表、所述全局缩并维度映射表,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中。
3.根据权利要求2所述的方法,其特征在于,所述基于所述非零元素坐标索引哈希映射表、所述全局缩并维度映射表,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中包括:
遍历所述全局缩并维度映射表,检测每个缩并维度索引所对应的稀疏张量名称集合中是否都包含两个元素;
若是,则依次从对应的稀疏张量的非零元素坐标索引哈希映射表中索引出该缩并维度索引对应的两个非缩并维度索引集合,通过对另一稀疏张量非缩并维度索引集合求补集来分别为该缩并维度对应的两稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,形成无效计算元素非缩并维度起止范围集合,并以该缩并维度索引为键,以所述稀疏张量的无效计算元素非缩并维度起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中;
若否,则为当前缩并维度对应的稀疏张量的非零元素生成其成为无效计算元素时对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以该缩并维度索引为键,以所述另一稀疏张量非缩并维度的起始维度索引和终止维度索引组成的起止范围集合为值,存储在该非零元素所在稀疏张量的无效计算元素标记范围映射表中。
4.根据权利要求1所述的方法,其特征在于,所述对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息包括:
利用贪心算法对选定的稀疏张量的缩并维度进行切分,得到缩并维度划分候选点,并加入至缩并维度划分候选点有序列表中;
基于所述缩并维度划分候选点有序列表,加载另一个稀疏张量,判断由当前的缩并维度划分候选点与当前稀疏张量的非缩并维度大小确定的预分块的内存占用量是否超出限定大小,若超出限定大小,则迭代利用二分法对当前缩并维度进行划分,直至满足内存占用量限制,并将产生的缩并维度划分候选点加入至所述缩并维度划分候选点有序列表中;
基于所述缩并维度划分候选点有序列表,利用贪心算法分别对两输入稀疏张量的非缩并维度进行划分,并将产生的非缩并维度划分候选节点加入到对应稀疏张量的非缩并维度划分候选点有序列表中。
5.根据权利要求4所述的方法,其特征在于,所述利用贪心算法对选定的稀疏张量的缩并维度进行切分,得到缩并维度划分候选点,并加入至缩并维度划分候选点有序列表中包括:
基于当前稀疏张量的非缩并维度的大小,利用贪心算法增长每个预分块在缩并维度上的大小,直到当前预分块的内存占用量在不超出限定大小的前提下达到最大值;
将最大缩并维度值作为缩并维度划分候选点,以该缩并维度划分候选点作为新分块的缩并维度起始点,继续对剩余缩并维度进行划分,直至该缩并维度划分完成,将所述缩并维度划分候选点加入至缩并维度划分候选点有序列表中。
6.根据权利要求1所述的方法,其特征在于,所述基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块包括:
基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数;
判断所述无效计算元素个数是否为零,若不为零,则将无效计算元素剔除后重新计算预分块的内存占用量,并尝试扩展该预分块的非缩并维度,直至预分块的内存占用量达到不超限的最大值为止,得到该预分块的分界点;
以所述预分块的分界点作为下一个分块的起始点,进行下一个分块的划分,直至当前数据流下完成分块划分的分块的内存占用总量达到不超限的最大值。
7.根据权利要求6所述的方法,其特征在于,所述基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数包括:
根据稀疏张量运算的实际数据流调度需求,确定所述两稀疏张量当前参与运算的元素范围;
基于缩并维度划分候选点有序列表和及其对应的非缩并维度划分候选点有序列表,确定预分块;
基于所述无效计算元素标记范围映射表,确定当前预分块中无效计算元素个数。
8.一种稀疏张量运算加速系统,其特征在于,所述系统包括:
索引确定模块,用于读取两稀疏张量的压缩表示元数据信息,分别识别其中有效计算元素的分布特征及无效计算元素的适用范围,确定各稀疏张量中非零元素被标记为无效计算元素时所对应的另一个稀疏张量的起始非缩并维度索引和终止非缩并维度索引,并以键值对的形式存储在无效计算元素标记范围映射表中;
第一分块模块,用于对所述两稀疏张量进行自适应协同分块,得到所述两稀疏张量的预分块信息;
第二分块模块,用于基于所述无效计算元素标记范围映射表以及所述两稀疏张量的预分块信息,依次确定当前数据流下的预分块的实际无效计算元素的数目,若所述数目不为零,则依次扩展预分块的非缩并维度,直到不满足扩展条件,得到最终分块;
搬运模块,用于将所述最终分块依次搬运至更内层缓存,直至完成计算。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现权利要求1至权利要求7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至权利要求7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311414028.5A CN117149778B (zh) | 2023-10-30 | 2023-10-30 | 稀疏张量运算加速方法、系统、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311414028.5A CN117149778B (zh) | 2023-10-30 | 2023-10-30 | 稀疏张量运算加速方法、系统、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117149778A true CN117149778A (zh) | 2023-12-01 |
CN117149778B CN117149778B (zh) | 2024-01-16 |
Family
ID=88904665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311414028.5A Active CN117149778B (zh) | 2023-10-30 | 2023-10-30 | 稀疏张量运算加速方法、系统、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117149778B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3343392A1 (en) * | 2016-12-31 | 2018-07-04 | INTEL Corporation | Hardware accelerator architecture and template for web-scale k-means clustering |
CN109857744A (zh) * | 2019-02-13 | 2019-06-07 | 上海燧原智能科技有限公司 | 稀疏张量计算方法、装置、设备及存储介质 |
CN112800264A (zh) * | 2020-12-30 | 2021-05-14 | 上海联影智能医疗科技有限公司 | 标注数据的压缩方法、电子装置和存储介质 |
CN114925320A (zh) * | 2021-09-28 | 2022-08-19 | 华为技术有限公司 | 一种数据处理方法及相关装置 |
US20220327101A1 (en) * | 2021-04-09 | 2022-10-13 | Nvidia Corporation | Increasing sparcity in data sets |
CN115222374A (zh) * | 2022-09-21 | 2022-10-21 | 智慧齐鲁(山东)大数据科技有限公司 | 一种基于大数据处理的政务数据服务系统 |
CN115989505A (zh) * | 2020-07-21 | 2023-04-18 | 多伦多大学管理委员会 | 使用稀疏性来加速深度学习网络的系统和方法 |
CN116830101A (zh) * | 2022-01-28 | 2023-09-29 | 辉达公司 | 基于处理资源的张量修改 |
-
2023
- 2023-10-30 CN CN202311414028.5A patent/CN117149778B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3343392A1 (en) * | 2016-12-31 | 2018-07-04 | INTEL Corporation | Hardware accelerator architecture and template for web-scale k-means clustering |
CN109857744A (zh) * | 2019-02-13 | 2019-06-07 | 上海燧原智能科技有限公司 | 稀疏张量计算方法、装置、设备及存储介质 |
CN115989505A (zh) * | 2020-07-21 | 2023-04-18 | 多伦多大学管理委员会 | 使用稀疏性来加速深度学习网络的系统和方法 |
CN112800264A (zh) * | 2020-12-30 | 2021-05-14 | 上海联影智能医疗科技有限公司 | 标注数据的压缩方法、电子装置和存储介质 |
US20220327101A1 (en) * | 2021-04-09 | 2022-10-13 | Nvidia Corporation | Increasing sparcity in data sets |
CN114925320A (zh) * | 2021-09-28 | 2022-08-19 | 华为技术有限公司 | 一种数据处理方法及相关装置 |
CN116830101A (zh) * | 2022-01-28 | 2023-09-29 | 辉达公司 | 基于处理资源的张量修改 |
CN115222374A (zh) * | 2022-09-21 | 2022-10-21 | 智慧齐鲁(山东)大数据科技有限公司 | 一种基于大数据处理的政务数据服务系统 |
Non-Patent Citations (2)
Title |
---|
林静;杨继臣;张雪源;李新超;: "基于稀疏表示权重张量的音频特征提取算法", 计算机应用, no. 05 * |
赵莉;李宗明;: "约束张量规范多元分解时变社区图模型检测", 计算机工程与设计, no. 08 * |
Also Published As
Publication number | Publication date |
---|---|
CN117149778B (zh) | 2024-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111340237B (zh) | 数据处理和模型运行方法、装置和计算机设备 | |
CN108304921B (zh) | 卷积神经网络的训练方法及图像处理方法、装置 | |
KR101999639B1 (ko) | 데이터 처리 시스템, 계산 노드 및 데이터 처리 방법 | |
US10068033B2 (en) | Graph data query method and apparatus | |
US9286312B2 (en) | Data coreset compression | |
US10191998B1 (en) | Methods of data reduction for parallel breadth-first search over graphs of connected data elements | |
CN111723933A (zh) | 神经网络模型的训练方法和相关产品 | |
Motamedi et al. | Fast and energy-efficient CNN inference on IoT devices | |
CN112668708B (zh) | 一种提高数据利用率的卷积运算装置 | |
CN112214468B (zh) | 一种分布式存储系统小文件加速方法、装置、设备及介质 | |
CN111159577B (zh) | 一种社群划分方法、装置、存储介质及电子装置 | |
CN110490302B (zh) | 一种神经网络编译优化方法、装置以及相关产品 | |
Safar et al. | Optimized skyline queries on road networks using nearest neighbors | |
CN117149778B (zh) | 稀疏张量运算加速方法、系统、计算机设备和存储介质 | |
CN114003775A (zh) | 图数据处理、查询方法及其系统 | |
CN111221827B (zh) | 基于图形处理器的数据库表连接方法、装置、计算机设备和存储介质 | |
US11507799B2 (en) | Information processing apparatus and method of operating neural network computing device therein | |
CN103345509B (zh) | 获取路网上复反向最远邻居的层次分区树方法及系统 | |
CN112307272B (zh) | 确定对象之间关系信息的方法、装置、计算设备及存储介质 | |
CN113792170B (zh) | 图数据划分方法、装置和计算机设备 | |
CN116402963A (zh) | 车道线矢量模型构建方法、装置、电子设备和存储介质 | |
CN110866127A (zh) | 建立索引的方法以及相关装置 | |
CN115965074A (zh) | 深度学习模型的训练方法、数据处理方法、装置和设备 | |
CN114691612A (zh) | 数据写入方法及装置、数据读取方法及装置 | |
CN111723246B (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 |