CN117519578A - 计算存储装置及其操作方法、以及存储系统 - Google Patents
计算存储装置及其操作方法、以及存储系统 Download PDFInfo
- Publication number
- CN117519578A CN117519578A CN202310666571.8A CN202310666571A CN117519578A CN 117519578 A CN117519578 A CN 117519578A CN 202310666571 A CN202310666571 A CN 202310666571A CN 117519578 A CN117519578 A CN 117519578A
- Authority
- CN
- China
- Prior art keywords
- data elements
- memory region
- nodes
- control module
- graphic data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000015654 memory Effects 0.000 claims abstract description 147
- 238000013473 artificial intelligence Methods 0.000 claims description 28
- 238000012549 training Methods 0.000 claims description 22
- 238000003062 neural network model Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 24
- 102100038687 5'-nucleotidase domain-containing protein 3 Human genes 0.000 description 16
- 238000004364 calculation method Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 8
- 102100033294 Glycerophosphodiester phosphodiesterase 1 Human genes 0.000 description 7
- 101000997824 Homo sapiens Glycerophosphodiester phosphodiesterase 1 Proteins 0.000 description 7
- 102100040782 Glycerophosphodiester phosphodiesterase domain-containing protein 5 Human genes 0.000 description 6
- 101001038855 Homo sapiens Glycerophosphodiester phosphodiesterase domain-containing protein 5 Proteins 0.000 description 6
- 230000002776 aggregation Effects 0.000 description 5
- 238000004220 aggregation Methods 0.000 description 5
- 210000004027 cell Anatomy 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003623 enhancer Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种计算存储装置及其操作方法、一种存储系统。该计算存储装置包括控制模块和连接到控制模块的非易失性存储器。非易失性存储器被配置为在第一存储器区域和第二存储器区域中存储多个图形数据元素,多个图形数据元素包括多个节点和将多个节点的至少一部分彼此连接的多个边,第一存储器区域和第二存储器区域各自具有多个块并具有不同的读取速度。控制模块被配置为将多个图形数据元素中的与多个节点中的一个节点具有相对高的关联度的第一图形数据元素存储在第一存储器区域中,并且将多个图形数据元素中的与多个节点中的一个节点具有相对低的关联度的第二图形数据元素存储在第二存储器区域中。
Description
相关申请的交叉引用
本申请要求于2022年8月4日在韩国知识产权局提交的韩国专利申请No.10-2022-0097484的优先权,该申请的公开以引用方式全文并入本文中。
技术领域
本公开的实施例涉及一种计算存储装置、包括该计算存储装置的存储系统以及该计算存储装置的操作方法。
背景技术
由于一些应用可能需要大量的数据处理,因此已经开发了计算存储装置,在该计算存储装置中,由现有主机执行的一些计算功能被卸载到存储装置。计算存储装置可根据计算将数据存储在非易失性存储器(NVM)中。然而,传统的计算存储装置通常顺序地将数据存储在非易失性存储器中,而不考虑非易失性存储器的固有特性。
发明内容
本公开的实施例可提供一种计算存储装置、包括该计算存储装置的存储系统以及操作该计算存储装置的方法,该计算存储装置被配置为基于非易失性存储器的特性来提供人工智能和数据存储功能。
根据本公开的实施例,计算存储装置包括控制模块和连接到控制模块的非易失性存储器。非易失性存储器被配置为在第一存储器区域和第二存储器区域中存储多个图形数据元素,多个图形数据元素包括多个节点和将多个节点的至少一部分彼此连接的多个边,第一存储器区域和第二存储器区域各自具有多个块并具有不同的读取速度。控制模块被配置为将多个图形数据元素中的与多个节点中的一个节点具有相对高的关联度的第一图形数据元素存储在第一存储器区域中,并且被配置为将多个图形数据元素中的与多个节点中的一个节点具有相对低的关联度的第二图形数据元素存储在第二存储器区域中。
根据实施例,第一存储器区域中的读取速度可比第二存储器区域中的读取速度快。
根据实施例,控制模块可被配置为基于关联度将多个图形数据元素聚类成多个组,第一图形数据元素可被包括在多个组中的包括多个节点中的一个节点的第一组中,并且第二图形数据元素可被包括在多个组中的第二组中。
根据实施例,控制模块还可被配置为基于多个图形数据元素来训练人工智能模型,并且还可被配置为基于人工智能模型的训练将多个图形数据元素中具有相对高的更新频率的图形数据元素存储在多个块中的指定块中。
根据实施例,控制模块还可被配置为基于训练人工智能模型将多个图形数据元素中的图形数据元素存储在包括在指定块中的至少一个保留页中。
根据实施例,指定块可被包括在第一存储器区域中。
根据实施例,当训练人工智能模式时,控制模块还可被配置为读取包括在第一存储器区域中的多个第一页,并且还可被配置为顺序地读取包括在第二存储器区域中的多个第二页。
根据本公开的另一实施例,一种操作计算存储装置的方法包括:将多个图形数据元素中的第一图形数据元素存储在第一存储器区域中,多个图形数据元素包括多个节点和将多个节点中的至少一部分彼此连接的多个边,第一图形数据元素与多个节点中的一个节点具有相对高的关联度;以及将多个图形数据元素中的第二图形数据元素存储在第二存储器区域中,第二图形数据元素与多个节点中的一个节点具有相对低的关联度,第二存储器区域具有与第一存储器区域的读取速度不同的读取速度。
根据实施例,第一存储器区域中的读取速度可比第二存储器区域中的读取速度快。
根据本公开的另一实施例,一种存储系统包括被配置为用计算存储装置替换存储介质的外部装置。计算存储装置包括:控制模块和连接到控制模块的非易失性存储器。非易失性存储器被配置为在第一存储器区域和第二存储器区域中存储多个图形数据元素,多个图形数据元素包括多个节点和将多个节点的至少一部分彼此连接的多个边,第一存储器区域和第二存储器区域各自具有多个块并具有不同的读取速度。控制模块被配置为将多个图形数据元素中的与多个节点中的一个节点具有相对高的关联度的第一图形数据元素存储在第一存储器区域中,并且被配置为将多个图形数据元素中的与多个节点中的一个节点具有相对低的关联度的第二图形数据元素存储在第二存储器区域中。
附图说明
提供了每个附图的详细描述,以便于更全面地理解本公开的详细描述中参照的附图。
图1是示出在GNN中定义的图形的示图。
图2是示出根据本公开的实施例的计算存储装置的示图。
图3是示出根据本公开的实施例的控制模块的图形处理操作的示图。
图4是示出根据本公开的实施例的聚类图的示图。
图5A和图5B是示出根据本公开的实施例的控制模块的存储操作的示图。
图6和图7是示出根据本公开的实施例的NVM的读取操作的示图。
图8是示出根据本公开的实施例的控制模块的存储操作的示图。
图9是示出根据本公开的实施例的用于使用控制模块分析GNN的操作的示图。
图10是示出根据本公开的实施例的操作计算存储装置的方法的流程图。
图11是示出根据本公开的另一实施例的操作计算存储装置的方法的流程图。
图12是示出根据本公开的另一实施例的操作计算存储装置的方法的流程图。
图13是示出根据本公开的另一实施例的计算存储装置的示图。
图14是示出根据本公开的实施例的存储系统的示图。
图15是示出根据本公开的另一实施例的存储系统的示图。
图16是示出根据本公开的另一实施例的存储系统的示图。
具体实施方式
将参照附图更全面地描述各种示例实施例,在附图中示出了实施例。然而,本公开可以以许多不同的形式来实施,并且不应被解释为限于本文阐述的实施例。贯穿本申请,相同的附图标记表示相同的元件。如本文所使用的,术语“和/或”包括一个或多个相关联的所列项目的任何和所有组合。注意,尽管没有相对于一个实施例具体描述,但是针对一个实施例描述的各方面可并入不同的实施例中。即,所有实施例和/或任何实施例的特征可以以任何方式和/或组合来组合。
在使用多层神经网络技术的人工智能(AI)系统的上下文中在本文中描述本发明构思的实施例。此外,将理解,多层神经网络是包括人工神经元或节点的多层人工神经网络,并且不包括包含真实生物神经元的生物神经网络。本文描述的多层神经网络可被配置为将计算机系统的存储器变换成包括一个或多个数据结构,诸如但不限于,数组、可扩展数组、链表、二叉树、平衡树、堆、栈和/或队列。当计算机系统在推理模式中操作以进行推理、预测、分类、建议等时,这些数据结构可通过AI训练处理被配置或修改以提高计算机系统的效率。
本公开的各种实施例可应用于使用大数据处理的各种应用,诸如,例如,数据库应用、图形处理、人工智能学习或统计分析。例如,对于人工智能预测和分类,可使用各种类型的人工智能模型或网络,诸如图形神经网络(GNN)、卷积神经网络(CNN)、具有卷积神经网络的区域(R-CNN)、区域建议网络(RPN)、递归神经网络(RNN)、基于堆栈的深度神经网络(S-DNN)、状态空间动态神经网络(S-SDN)、去卷积网络、深度置信网络(DBN)、受限波尔兹曼机(RBM)、完全卷积网络、长短期记忆(LSTM)网络、分类网络等。
在下文中,将基于上述各种应用中的GNN来描述本公开,但是本公开的各种实施例不必限于使用GNN。
GNN
图1是示出在GNN中定义的图形的示图。
参照图1,图形是包括节点“N”(或顶点)和边“E”的结构化信息的集合。至少两个节点通过边“E”连接。与节点“N”对应的节点值可表示实体或属性,并且与边“E”对应的边值可表示连接到边“E”的节点“N”之间的关系。边“E”可包括方向或可不包括方向,并且当边“E”包括方向时,图形可以是单向的或双向的。当节点“N”之间的距离(跳)(即,边距)相同时,它们可被包括在相同的GNN层中。在本公开中,包括上述节点“N”和边“E”的数据被称为图形数据元素GDE。除了节点和边之外,图形可包括附加信息,诸如全局上下文和连通性,全局上下文提供关于图形所表示的一般环境或主题的信息,连通性提供关于一个节点如何连接到另一个节点的信息。所有四种类型的信息可被视为图形的特征,并且可针对这些特征生成嵌入向量并且使用嵌入向量来训练GNN。当GNN在推理、预测或分类模式中操作时,则可生成对应于这些各种特征的当前信息的嵌入以创建向量,GNN处理该向量以进行推断、预测或分类。将在下文中描述GNN的训练。
GNN可包括用于训练上述图形的结构的算法。GNN可包括“聚合”和“组合”的两个组成部分。聚合通过将目标节点“RN”的相邻节点“NN”的特征聚合,来生成与聚合的节点特征对应的节点嵌入。组合通过将针对目标节点“RN”聚集的所有节点特征转移到可训练的层,来生成目标节点“RN”的节点嵌入。
可在要训练的GNN中包括的每个层处执行聚合和组合。在层方面,聚合可被定义为将针对目标节点“RN”的第(k-1)次(其中“k”是迭代顺序中的自然数)的相邻节点NN的隐藏状态组合,并且,组合可被定义为通过使用目标节点RN在第(k-1)次的隐藏状态和聚合的信息来更新目标节点“RN”在第k次的隐藏状态。
GNN被配置为通过上述操作生成针对每个目标节点“RN”的节点嵌入,并使用生成的节点嵌入作为GNN的输入数据来生成输出数据。可通过反向传播来训练GNN,并且在训练处理中,可更新在GNN的每个层中定义的权重和偏差值以及图形数据元素,诸如上述节点特征、隐藏状态或节点嵌入。在图形数据元素中,在计算处理期间,可将更新的值(例如,第k次)以及在更新之前的值(例如,第(k-1)次)存储在存储器中。
计算存储装置
图2是示出根据本公开的实施例的计算存储装置的示图。
参照图2,计算存储装置100可被配置为根据上述GNN执行计算操作,并且可被配置为存储计算处理中的每个节点的图形数据元素。此外,当图形数据元素被更新时,可存储更新后的值。
计算存储装置100包括控制模块120和连接到控制模块120的非易失性存储器,即,NVM 140。
NVM 140包括具有不同读取速度的第一存储器区域141和第二存储器区域142。根据实施例,第一存储器区域141可具有比第二存储器区域142的读取速度更快的读取速度。
在实施例中,可在单个存储器芯片中实现第一存储器区域141和第二存储器区域142中的每一个。例如,第一存储器区域141和第二存储器区域142可对应于单个存储器芯片的一些块或页。在这种情况下,在包括在第一存储器区域141中的每个存储器单元中可写入的位数可不同于在包括在第二存储器区域142中的每个存储器单元中可写入的位数。例如,第一存储器区域141可以是单级单元(SLC)区域,第二存储器区域142可以是多级单元(MLC)区域或三级单元(TLC)区域。作为另一示例,第一存储器区域141可以是快速SLC区域,并且第二存储器区域142可以是慢速SLC区域。
NVM 140被配置为响应于控制模块120的操作而存储包括上述多个节点和多个节点之间的边的图形数据元素。
控制模块120可被配置为根据GNN执行计算操作,并且可被配置为存储计算处理中的每个节点的图形数据元素。根据实施例,控制模块120可被配置为根据上述GNN执行各种操作,并且可被配置为将计算的图形数据元素存储在NVM 140中。另外,当在GNN的学习处理中更新图形数据元素时,可将更新后的值存储在NVM 140中。
图3是示出根据本公开的实施例的控制模块的图形处理操作的示图。
参照图3,控制模块120可被配置为处理包括上述图形数据元素的图形,并且可被配置为基于例如GNN生成与包括在图形中的目标节点相关联的输出数据。如上所述,GNN包括每个都被分类为相同跳的层。在图3中,当目标节点是“k”时,基于具有最接近目标节点的跳的层来示出。
为了根据GNN对目标节点执行操作,控制模块120首先分析位于最接近目标节点的跳中的相邻节点1、3、7和“l”中的每一个的特征(或节点嵌入),并且将分析结果存储在NVM140中(S1010)。对相邻节点1、3、7和“l”的特征的分析可对应于上述聚合操作,并且例如,可理解为基于连接到相邻节点1、3、7和“l”中的每一个的其它相邻节点的特征来生成相邻节点1、3、7和“l”中的每一个的特征。控制模块120将根据分析生成的特征存储在NVM 140中。
当相邻节点1、3、7和“l”中的每一个的特征被生成并被存储时,控制模块120可读取生成的特征(S1020)。
控制模块120基于读取的特征更新目标节点的特征(S1030)。此外,控制模块120可将目标节点的更新后的特征存储在NVM 140中。
根据实施例,当图形数据元素(诸如根据分析或更新操作生成的特征)被存储在NVM 140中时,控制模块120可基于节点之间的关联度存储图形数据元素。控制模块120基于关联度对作为GNN的输入数据的图形进行聚类,以根据关联度将图形数据元素存储在NVM140中,并且使用通过聚类分类的簇来确定节点之间的关联度。
图4是示出根据本公开的实施例的聚类图的示图。
参照图4,包括多个节点和连接在至少两个节点之间的边的图形可根据节点之间的关联度被分类为多个组A至C。例如,在图4中,与作为目标节点RN的“k”具有高关联度的节点可以是1到3,与“k”具有相对低的关联度的节点可以是7到9,并且具有最低关联度的节点可以是“l”、4和5。
控制模块120可被配置为基于各种方法来对该图形进行聚类。根据实施例,控制模块120可被配置为使用与每个节点相关联并且是凸函数的可微分代价函数来对图形进行聚类。例如,当代价函数被定义为可被定义为节点之间的距离、权重、边或代价的任何参数wk时,控制模块120搜索可最小化代价函数的参数wk以将图形聚类。例如,具有相同参数wk的节点可被分类到相同的组中。
当特定节点与通过聚类分类的组中的目标节点“RN”包括在相同的组“A”中时,控制模块120可被配置为确定该节点与目标节点“RN”具有相对高的关联度,并且当该特定节点包括在其它组“B”和“C”中时,控制模块120可确定该节点与目标节点“RN”具有相对低的关联度。
当根据关联度对节点和边进行分类时,还可对包括节点和边的图形数据元素进行分类。例如,图形数据元素可被分类为包括被包括在包含目标节点“RN”的组“A”中的节点和边的图形数据元素(在下文中,第一图形数据元素(GDE1))和包括被包括在其余组“B”和“C”中的节点和边的图形数据元素(在下文中,第二图形数据元素(GDE2))。
根据实施例,控制模块120可被配置为将与包括在图形数据中的多个节点中的一个节点具有相对高的关联度的第一图形数据元素GDE1存储在第一存储器区域141中。控制模块120可被配置为将与一个节点具有相对低的关联度的第二图形数据元素GDE2存储在第二存储器区域142中。
图5A和图5B是示出根据本公开的实施例的控制模块的存储操作的示图。在图5A和图5B中,第一存储器区域141和第二存储器区域142中的每一个可包括多个块,并且每个块可包括多个页。
参照图5A,根据实施例的控制模块120可按照节点索引的顺序将图形数据元素顺序地存储在第一存储器区域141和第二存储器区域142中。在其它实施例中,控制模块120可以以GNN中处理的节点的顺序存储图形数据元素。例如,如图所示,第一存储器区域141包括1-1块BLK 1-1至1-2块BLK 1-2,并且第二存储器区域142可包括2-1块BLK 2-1至2-2块BLK2-2,并且每个块都可包括多个页。
在这种情况下,当1-2块BLK 1-2、2-1块BLK 2-1和2-2块BLK 2-2可用时,控制模块120可将图形数据元素顺序地存储在1-2块BLK 1-2、2-1块BLK 2-1和2-2块BLK 2-2中。例如,控制模块120可将与节点1和节点2相关联的图形数据元素存储在第一存储器区域141中的1-2块BLK 1-2包括的1-3页中。此后,控制模块120将与节点5和节点7相关联的图形数据元素存储在第二存储器区域142中的2-1块BLK 2-1中包括的2-1页中,将与节点8和节点9相关联的图形数据元素存储在包括在2-1块BLK 2-1的2-2页中,并将与节点“k”和节点“l”相关联的图形数据元素存储在包括在2-2块BLK 2-2中的2-3页中。
参考图5B,根据实施例的控制模块120基于聚类图形来存储图形数据元素。例如,当包括在图形中的节点被分类为包括目标节点的组“A”和其余组(组“B”和组“C”)时,控制模块120确定包括在组“A”中的节点“k”、节点“1”、节点“2”和节点“3”是具有高关联度的节点,并将图形数据元素存储在第一存储器区域141中。控制模块120确定其余的图形数据元素是具有低关联度的节点,并将它们存储在第二存储器区域142中。
图6和图7是示出根据实施例的NVM的读取操作的示图。
参照图6,根据实施例的控制模块120可在训练人工智能模型时读取包括在第一存储器区域中的多个第一页(1-1页至1-4页),并可顺序地读取包括在第二存储器区域中的多个第二页(2-1页至2-4页)。
例如,可考虑控制模块120从目标节点的相邻节点1、3、7和“l”顺序地读取图形数据元素以更新目标节点“k”的特征的情况。即,控制模块120可首先从目标节点“k”读取图形数据元素(S1021),然后可从后续相邻节点1读取图形数据元素(S1022),然后可从后续相邻节点3读取图形数据元素(S1023),然后可从后续相邻节点7读取图形数据元素(S1024),并且最后,然后可从最后的相邻节点“l”读取图形数据元素(S1025)。
在这种情况下,根据实施例,如图7所示,当根据如上所述的与目标节点的关联度将图形数据元素存储在第一存储器区域141和第二存储器区域142中时(图5B),与当图形数据元素被顺序地存储时(图5A)相比,NVM 140的读取操作可被减少或简化。例如,当要读取的节点1、3、5、7、“l”和“k”的图形数据元素被简单地顺序存储在如图5A所示的每个页中时,使用至少四个页读取操作来更新目标节点“k”的特征。相反,当如图5B和图7所示根据关联度存储图形数据元素时,通过读取存储节点“k”和1的1-3页(S1110)、读取存储节点3的1-4页(S1120)、以及读取存储节点7和“l”的2-1页(S1130),可利用较少的页读取操作进行目标节点分析。
图8是示出根据本公开的实施例的控制模块的存储操作的示图。
参照图8,根据实施例,具体地,控制模块120可在诸如上述GNN的人工智能模型的训练处理期间,在指定块中存储在图形中包括的多个节点中的每一个的图形数据元素当中可能频繁发生更新的图形数据元素。
例如,当根据包括在图形中的节点“k”和“l”之中的训练,节点“k”的图形数据元素具有相对高的更新频率时,控制模块120将节点“k”的图形数据元素存储在指定块中,并且将另一节点“l”的图形数据元素存储在除了指定块之外的其余块中。可根据图形数据元素的更新频率、NVM 140中包括的页、块或超级块的大小等来指定指定块。控制模块120可根据实施例指定块,或者该块可由主机指定。可通过包括其中具有高存储频率的节点的图形数据元素,将通过垃圾收集被复制的块来指定多个指定块。
指定的块可包括如图所示的多个页,并且例如可包括诸如1-3页的保留区域,即,保留页。控制模块120可将根据训练连续地更新的节点“k”的图形数据元素存储在指定块中,并且可将稍后要更新(例如,第(k+1)次更新)的图形数据元素存储在保留区域中。在其它实施例中,控制模块120可将具有高更新频率的其它节点的图形数据元素存储在保留区域中。
在图形数据元素被存储在NVM 140中之后,可通过连接到NVM 140的存储控制器擦除存储在每个块中的数据。以块为单位执行擦除操作。例如,可在垃圾收集中执行擦除操作,在垃圾收集中,存储在块中的有效数据被复制到另一个块,然后现有块的数据被擦除。
图9是示出根据本公开的实施例的用于使用控制模块分析GNN的操作的示图。
参照图9,如上所述,控制模块120可顺序地分析(例如,学习)GNN中包括的每个层,并且可存储根据分析生成的数据,即,NVM 140中的图形数据元素。层可包括从具有距离目标节点的最低跳数的层起具有最高跳数的层,或者可包括在生成节点嵌入之后与分类器或预测器相对应的神经网络层。
不管包括哪种类型的层,控制模块120读取存储在NVM 140中的每个层中的图形数据元素,基于读取的图形数据元素分析层,并且将根据分析更新后的图形数据元素存储在NVM 140中。此后,当其中存储有更新后的图形数据元素的块已满时,由于NVM 140的特性而不允许重写,因此可执行通过擦除操作的垃圾收集。
在这种情况下,根据实施例,当控制模块120在指定块中单独地存储具有高更新频率的图形数据元素时,对每个指定块和其余块单元执行基于块的操作,诸如垃圾收集,因此可减少块单元的操作的数量,并且因此可减少输入/输出延迟。例如,当具有各种更新频率的图形数据元素被无差别地存储在块中时,即使包括具有低更新频率的图形数据元素,由于具有高更新频率的图形数据元素,也可能频繁地发生垃圾收集。然而,根据实施例,当具有高更新频率的图形数据元素被单独地存储在指定块中时,可减少垃圾收集操作的数量。
在以上描述中,已经描述了与本公开的计算存储装置100有关的各种实施例。根据实施例,考虑到NVM 140的以页为单位的读取/写入操作是可能的并且以块为单位的擦除操作是可能的特性,因为根据诸如GNN的各种计算处理操作生成的数据被存储在NVM 140中,所以页读取操作或垃圾收集操作的数量可减少,并且因此计算操作的效率可增加。
图10是示出根据本公开的实施例的操作计算存储装置的方法的流程图。
参照图10,在S110中,计算存储装置100将第一图形数据元素GDE1存储在第一存储器区域141中,在包括多个节点和多个节点之间的一个或多个边的图形数据元素之中,第一图形数据元素GDE1与包括在多个节点中的一个节点具有相对高的关联度。
在S120中,计算存储装置100将与所述一个节点具有相对低的关联度的第二图形数据元素GDE2存储在具有与第一存储器区域141的读取速度不同的读取速度的第二存储器区域142中。
例如,第一存储器区域141可具有比第二存储器区域142更快的读取速度。也就是说,具有相对高的关联度的第一图形数据元素GDE1被存储在具有高读取速度的第一存储器区域141中,并且具有相对低的关联度的第二图形数据元素GDE2被存储在具有低读取速度的第二存储器区域142中。
图11是示出根据本公开的另一实施例的操作计算存储装置的方法的流程图。
参照图11,在S210中,NVM 140存储包括图形数据元素和GNN模型的图形。尽管未示出,但是操作S210可例如通过经由接口连接到计算存储装置100的主机来执行。
在S220中,控制模块120读取存储在NVM 140中的图形和图形数据元素。
在S230中,控制模块120将图形聚类并将图形中包括的多个节点分类为被包括在多个组中的一个中。如上所述,可基于节点之间的关联度执行聚类,并且与目标节点具有相对高的关联度的节点可被包括在包括目标节点的组中。
在S240中,控制模块120执行计算并更新图形数据元素。例如,计算可包括各种操作,诸如包括上述GNN或图形处理的人工智能训练。
在S250中,控制模块120将更新后的图形数据元素中的被分类为与目标节点具有高关联度的第一图形数据元素GDE1存储在具有高读取速度的第一存储器区域141中。
在S260中,控制模块120将更新后的图形数据元素中的被分类为与目标节点具有低关联度的第二图形数据元素GDE2存储在具有低读取速度的第二存储器区域142中。
图12是示出根据本公开的另一实施例的操作计算存储装置的方法的流程图。
参照图12,在S310中,计算存储装置100指定用于单独地存储具有高更新频率的节点的图形数据元素的块。例如,可基于图形数据元素的更新频率、NVM 140中包括的页、块和/或超级块的大小等来指定块。
在S320中,计算存储装置100将具有高更新频率的节点的图形数据元素存储在指定块中。此后,当存储在指定块中的节点的图形数据元素被更新时,计算存储装置100可将更新后的图形数据元素存储在指定块中包括的另一页(例如,保留区域)中。
在下文中,将描述可应用上述计算存储装置100的实施例。为了避免重复,将省略对重叠部分的详细描述。
图13是示出根据本公开的另一实施例的计算存储装置的示图。
参照图13,根据实施例的计算存储装置100连接到主机10,并且包括存储装置160、交换机180和加速器200。
存储装置160可以是嵌入在计算存储装置100中的内部存储器。例如,存储装置160可以是固态驱动器(SSD)、嵌入式通用闪存(UFS)存储器装置或嵌入式多媒体卡(eMMC)。在一些实施例中,存储装置160可以是可从电子装置拆卸的外部存储器。例如,存储装置160可以是UFS存储卡、紧凑型闪存(CF)、安全数字(SD)、微安全数字(Micro-SD)、迷你安全数字(Mini-SD)、极限数字(xD)或记忆棒。
存储装置160可包括NVM 161和存储控制器162,并且存储控制器162可被配置为基于命令生成用于执行由主机10请求的操作的输入数据,或者可通过从NVM 161读取来生成输入数据。
交换机180连接在存储装置160和加速器200之间,并且可以是例如符合快速外围组件互连(PCIe)标准的PCIe交换机。交换机180可被配置为在存储装置160与连接到加速器200的缓冲存储器201之间建立通信,并且可根据PCIe协议执行通信。
加速器200可被配置为通过执行由主机10执行的计算中的一些计算来执行辅助主机10的计算的加速功能。例如,加速器200连接到存储装置160以从存储装置160接收输入数据,可被配置为对输入数据执行计算以生成计算数据,并且可被配置为将生成的计算数据存储在缓冲存储器201中或者可被配置为将生成的计算数据传送到存储装置160。加速器200可响应于主机10的命令执行上述计算操作(例如,聚类、GNN等)。
加速器200可以是用于卸载主机10的操作的可重新配置和可重新编程的逻辑芯片,例如可以是FPGA(现场可编程门阵列)、MCU(微控制器单元)、PLD(可编程逻辑装置)或复杂PLD(CPLD)。
缓冲存储器201可被配置为存储来自加速器200的根据计算的计算数据。可替换地,根据实施例,缓冲存储器201可被配置为存储从主机10卸载的系统数据。缓冲存储器201可以是易失性存储器,诸如DRAM或SRAM。存储在缓冲存储器201中的计算数据可被存储在存储装置160中包括的NVM 161中。
在图13的计算存储装置100中,如上所述的图2的控制模块120可以是根据实施例的存储控制器162或加速器200。根据实施例,存储控制器162或加速器200可执行上述控制模块120的各种操作。
存储系统
图14是示出根据本公开的实施例的存储系统的示图。
参照图14,根据实施例的存储系统1包括主机10和连接到主机10的计算存储装置100。
主机10包括主机接口11、主机控制器12和主机存储器13。
提供与计算存储装置100的交互的主机接口11可包括物理层和链路层。物理层可包括用于与计算存储装置100交换数据的物理组件,并且可包括至少一个发送器TX和至少一个接收器RX。链路层可管理数据传输和/或合成,并且可管理数据完整性和错误。
主机控制器12可被配置为控制主机10的操作。例如,主机控制器12可被配置为执行操作系统(OS)。操作系统可包括例如用于文件管理的文件系统和用于在操作系统级控制包括计算存储装置100的外围装置的装置驱动器。例如,主机控制器12可包括任何处理器,诸如中央处理单元(CPU)。
主机存储器13可存储由主机控制器12执行和处理的指令和数据。主机存储器13可实现为具有相对高的操作速度的存储器。例如,主机存储器13可包括诸如DRAM的易失性存储器。
根据实施例,当计算存储装置100仅包括NVM 140并且不单独地包括诸如DRAM的易失性存储器(例如,各种可移动外部存储器)时,控制模块120可根据主机性能增强器(HPB)技术或主机存储器缓冲器(HMB)技术通过主机接口11访问主机存储器13。HPB技术意味着通过将与计算存储装置100的操作相关的各种数据存储在主机10中包括的主机存储器13中,将主机存储器13用作计算存储装置100的高速缓冲存储器。
因此,控制模块120可被配置为将根据上述各种计算操作生成的数据(例如,更新的图形数据元素等)存储在主机存储器13中,或者可被配置为读取存储的数据以执行上述计算操作,诸如GNN。在这种情况下,根据实施例,当控制模块120读取存储在主机存储器13中的数据并将该数据存储在NVM 140中时,控制模块120可将具有高关联度的第一图形数据元素GDE1存储在NVM 140中包括的第一存储器区域141中,并且可将具有低关联度的第二图形数据元素GDE2存储在第二存储器区域142中。
在其它实施例中,根据实施例,控制模块120可在NVM 140中包括的多个块中的指定块中存储具有高更新频率的图形数据元素。
图15是示出根据本公开的另一实施例的存储系统的示图。
参照图15,根据另一实施例的存储系统2包括外部装置20和计算存储装置100。
外部装置20可包括各种装置,举例而言,诸如移动电话、智能电话、平板电脑、个人计算机(PC)、膝上型计算机、个人数字助理(PDA)、便携式多媒体播放器(PMP)、监视摄像机、数码相机、摄像机、便携式游戏机、音乐播放器、视频播放器、导航装置、可穿戴装置、物联网(IoT)装置、电子书、虚拟现实(VR)装置和增强现实(AR)装置。
外部装置20可包括用于控制外部装置20的操作的控制器21和可移动介质22。可移动介质22可以是其中存储有各种数据、软件、应用和/或程序的存储介质,并且可更新由控制器21执行的各种操作或功能,或者可添加新功能。例如,当外部装置20是监视摄像机时,并且当可移动介质22被配置为根据人工神经网络实时执行视频分析时,可另外执行相应的功能。
根据本公开的各种实施例,可移动介质22可由计算存储装置100替换。即,计算存储装置100可被新插入到外部装置20中。当计算存储装置100被插入到外部装置20中时,可执行如上所述的诸如图形处理和人工智能训练的各种操作。根据实施例,计算存储装置100可使用GNN执行外部装置20的功能(例如,在监视摄像机的情况下,诸如图像模式、对象识别、警报生成等的操作),并且可根据GNN将图形数据元素存储在NVM 140中。根据实施例,当控制模块120将数据存储在NVM 140中时,控制模块120可将具有高关联度的第一图形数据元素GDE1存储在NVM 140中包括的第一存储器区域141中,并且可将具有低关联度的第二图形数据元素GDE2存储在第二存储器区域142中。
在其它实施例中,根据实施例,控制模块120可将具有高更新频率的图形数据元素存储在NVM 140中包括的多个块中的指定块中。
图16是示出根据本公开的另一实施例的存储系统的示图。
参照图16,可用根据本公开的各种实施例的计算存储装置100来替换根据图15的外部装置20的可移动介质22。外部装置20除了控制器21和计算存储装置100之外还包括外部接口23。外部接口23可被提供以允许外部装置20与另一单独的计算系统30通信。
计算系统30可被配置为与计算存储装置100分离地执行与外部装置20相关联的各种计算操作。计算存储装置100可通过外部接口23连接到计算系统30,以根据图形处理或人工智能训练来交换各种数据,以卸载计算操作的一部分,或者将要被卸载。
例如,外部接口23可以是CXL接口。CXL接口是计算机装置互连规范,并且是由于诸如数据压缩和加密的专门工作负荷的快速创新以及人工智能而减少主机10和存储装置在异构计算环境中的开销和延迟,并且允许主机存储器13与存储器装置共享存储器空间的接口。例如,计算系统30可与包括在计算存储装置100中的执行复杂计算并且可共享存储器的控制模块120直接通信。
在根据上述各种实施例的存储系统1、2和3中,外部装置可执行由包括现有外部装置的各种网络系统中的边缘端(例如,边缘服务器等)执行的功能中的至少一些功能,或者外部装置可直接执行诸如GNN的各种计算功能。
根据本公开的实施例,可提供一种能够基于非易失性存储器的特性进行人工智能操作和数据存储的计算存储装置、包括该计算存储装置的存储系统以及该计算存储装置的操作方法。
以上描述是用于实施本公开的具体实施例。其中设计被简单地改变或容易地改变的实施例可包括在本公开以及上述实施例中。另外,通过使用上述实施例容易地被改变和实现的技术可被包括在本公开中。尽管已经参照本公开的实施例描述了本公开,但是对于本领域的普通技术人员来说将显而易见的是,在不偏离如所附权利要求中阐述的本公开的精神和范围的情况下,可对本公开进行各种改变和修改。
Claims (20)
1.一种计算存储装置,包括:
控制模块;以及
非易失性存储器,其连接到所述控制模块,并且被配置为在第一存储器区域和第二存储器区域中存储多个图形数据元素,所述多个图形数据元素包括多个节点和将所述多个节点的至少一部分彼此连接的多个边,所述第一存储器区域和所述第二存储器区域各自具有多个块并具有不同的读取速度,并且
其中,所述控制模块被配置为:
将所述多个图形数据元素中与所述多个节点中的一个节点具有相对高的关联度的第一图形数据元素存储在所述第一存储器区域中,并且
将所述多个图形数据元素中的与所述多个节点中的所述一个节点具有相对低的关联度的第二图形数据元素存储在所述第二存储器区域中。
2.如权利要求1所述的计算存储装置,其中,所述第一存储器区域中的读取速度比所述第二存储器区域中的读取速度快。
3.如权利要求1所述的计算存储装置,其中,所述控制模块被配置为基于所述关联度将所述多个图形数据元素聚类成多个组,
其中,所述第一图形数据元素被包括在所述多个组中的第一组中,所述第一组包括所述多个节点中的所述一个节点,并且
其中,所述第二图形数据元素被包括在所述多个组中的第二组中。
4.如权利要求1所述的计算存储装置,其中,所述控制模块还被配置为:
基于所述多个图形数据元素来训练人工智能模型;并且
基于所述人工智能模型的训练,将所述多个图形数据元素中具有相对高的更新频率的图形数据元素存储在所述多个块中的指定块中。
5.如权利要求4所述的计算存储装置,其中,所述控制模块还被配置为:
基于训练所述人工智能模型,将所述多个图形数据元素中的图形数据元素存储在包括在所述指定块中的至少一个保留页中。
6.如权利要求5所述的计算存储装置,其中,所述指定块包括在所述第一存储器区域中。
7.如权利要求4所述的计算存储装置,其中,所述控制模块还被配置为:
当训练所述人工智能模型时,读取包括在所述第一存储器区域中的多个第一页,并且顺序地读取包括在所述第二存储器区域中的多个第二页。
8.如权利要求4所述的计算存储装置,其中,所述人工智能模型是图形神经网络模型。
9.如权利要求4所述的计算存储装置,其中,所述控制模块还被配置为:
基于所述图形数据元素、所述多个块和/或包括在所述多个块中的每个块中的多个页的更新频率来指定所述指定块。
10.一种操作计算存储装置的方法,所述方法包括:
将多个图形数据元素中的第一图形数据元素存储在第一存储器区域中,所述多个图形数据元素包括多个节点和将所述多个节点中的至少一部分彼此连接的多个边,所述第一图形数据元素与所述多个节点中的一个节点具有相对高的关联度;以及
将所述多个图形数据元素中的与所述多个节点中的所述一个节点具有相对低的关联度的第二图形数据元素存储在读取速度不同于所述第一存储器区域的读取速度的第二存储器区域中。
11.如权利要求10所述的方法,其中,所述第一存储器区域中的读取速度快于所述第二存储器区域中的读取速度。
12.如权利要求10所述的方法,还包括:
基于所述关联度将所述多个图形数据元素聚类成多个组,并且
其中,所述第一图形数据元素被包括在所述多个组中的第一组中,所述第一组包括所述多个节点中的所述一个节点,并且所述第二图形数据元素被包括在所述多个组中的第二组中。
13.如权利要求10所述的方法,还包括:
基于所述多个图形数据元素训练人工智能模型;以及
将所述多个图形数据元素中的具有相对高的更新频率的图形数据元素存储在所述第一存储器区域和所述第二存储器区域中的多个块中的指定块中。
14.如权利要求13所述的方法,还包括:
基于训练所述人工智能模型,将所述多个图形数据元素中的图形数据元素存储在包括在所述指定块中的至少一个保留页中。
15.如权利要求13所述的方法,还包括:
当训练所述人工智能模型时,读取包括在所述第一存储器区域中的多个第一页;以及
当训练所述人工智能模型时,顺序地读取包括在所述第二存储器区域中的多个第二页。
16.如权利要求13所述的方法,还包括:
基于所述图形数据元素、所述多个块和/或包括在所述多个块中的每个块中的多个页的更新频率来指定所述指定块。
17.一种存储系统,包括:
外部装置,其被配置为用计算存储装置替换存储介质;
其中,所述计算存储装置包括:
控制模块;以及
非易失性存储器,其连接到所述控制模块,并且被配置为在第一存储器区域和第二存储器区域中存储多个图形数据元素,所述多个图形数据元素包括多个节点和将所述多个节点的至少一部分彼此连接的多个边,所述第一存储器区域和所述第二存储器区域各自具有多个块并具有不同的读取速度,并且
其中,所述控制模块被配置为:
将所述多个图形数据元素中与所述多个节点中的一个节点具有相对高的关联度的第一图形数据元素存储在所述第一存储器区域中,并且
将所述多个图形数据元素中的与所述多个节点中的所述一个节点具有相对低的关联度的第二图形数据元素存储在所述第二存储器区域中。
18.如权利要求17所述的存储系统,其中,所述第一存储器区域中的读取速度比所述第二存储器区域中的读取速度快。
19.如权利要求17所述的存储系统,其中,所述控制模块被配置为:
基于所述关联度将所述多个图形数据元素聚类成多个组,
其中,所述第一图形数据元素被包括在所述多个组中的第一组中,所述第一组包括所述多个节点中的所述一个节点,并且
其中,所述第二图形数据元素被包括在所述多个组中的第二组中。
20.如权利要求17所述的存储系统,其中,所述控制模块还被配置为:
基于所述多个图形数据元素来训练人工智能模型;并且
基于所述人工智能模型的训练,将所述多个图形数据元素中具有相对高的更新频率的图形数据元素存储在所述多个块中的指定块中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0097484 | 2022-08-04 | ||
KR1020220097484A KR20240019602A (ko) | 2022-08-04 | 2022-08-04 | 연산 스토리지 장치, 이를 포함하는 스토리지 시스템 및 그 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117519578A true CN117519578A (zh) | 2024-02-06 |
Family
ID=89748329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310666571.8A Pending CN117519578A (zh) | 2022-08-04 | 2023-06-07 | 计算存储装置及其操作方法、以及存储系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240045592A1 (zh) |
KR (1) | KR20240019602A (zh) |
CN (1) | CN117519578A (zh) |
-
2022
- 2022-08-04 KR KR1020220097484A patent/KR20240019602A/ko unknown
-
2023
- 2023-05-05 US US18/312,817 patent/US20240045592A1/en active Pending
- 2023-06-07 CN CN202310666571.8A patent/CN117519578A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20240019602A (ko) | 2024-02-14 |
US20240045592A1 (en) | 2024-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11948073B2 (en) | Machine learning inference engine scalability | |
JP7366274B2 (ja) | ニューラル・ネットワークのための適応的探索方法および装置 | |
KR102572757B1 (ko) | 집약성을 개선하기 위한 머신 학습 모델들의 수정 | |
CN105373342A (zh) | 异构统一存储器 | |
US11435903B2 (en) | Storage controller and storage device including the same and operating method thereof | |
JP7381429B2 (ja) | ストレージ周辺の階層的ソート加速のためのストレージシステム及び方法 | |
EP3866015B1 (en) | Storage device and operating method of memory controller | |
CN113435682A (zh) | 分布式训练的梯度压缩 | |
KR20190133555A (ko) | 재구성 가능 로직을 포함하는 스토리지 장치 및 상기 스토리지 장치의 동작 방법 | |
CN111465943A (zh) | 芯片上计算网络 | |
US20220197530A1 (en) | Memory system and operating method thereof | |
US20200159445A1 (en) | Deep solid state device (deep-ssd): a neural network based persistent data storage | |
CN116401502A (zh) | 一种基于NUMA系统特性优化Winograd卷积的方法及装置 | |
US9570125B1 (en) | Apparatuses and methods for shifting data during a masked write to a buffer | |
WO2015094721A2 (en) | Apparatuses and methods for writing masked data to a buffer | |
CN112748876A (zh) | 存储装置、存储控制器和操作神经处理器的方法 | |
US10990525B2 (en) | Caching data in artificial neural network computations | |
Zhan et al. | Field programmable gate array‐based all‐layer accelerator with quantization neural networks for sustainable cyber‐physical systems | |
US20230110401A1 (en) | Machine Learning-Enabled Management of Storage Media Access | |
US20240045592A1 (en) | Computational storage device, storage system including the same and operation method therefor | |
WO2022223052A1 (zh) | 加速器、计算机系统和方法 | |
CN111527502B (zh) | 用于部分数字再训练的系统和方法 | |
CN113126908A (zh) | 被配置为支持多流的存储装置及其操作方法 | |
EP3895024A1 (en) | Caching data in artificial neural network computations | |
US20240037412A1 (en) | Neural network generation device, neural network control method, and software generation program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |