CN112771515A - 具有元数据计算引擎的存储边缘控制器 - Google Patents
具有元数据计算引擎的存储边缘控制器 Download PDFInfo
- Publication number
- CN112771515A CN112771515A CN201980064192.3A CN201980064192A CN112771515A CN 112771515 A CN112771515 A CN 112771515A CN 201980064192 A CN201980064192 A CN 201980064192A CN 112771515 A CN112771515 A CN 112771515A
- Authority
- CN
- China
- Prior art keywords
- metadata
- volatile memory
- storage
- storage device
- host
- 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 claims abstract description 47
- 230000015654 memory Effects 0.000 claims description 220
- 238000005094 computer simulation Methods 0.000 claims description 58
- 230000004044 response Effects 0.000 claims description 38
- 238000004458 analytical method Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000008451 emotion Effects 0.000 claims description 8
- 230000009471 action Effects 0.000 claims description 7
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 5
- 238000013473 artificial intelligence Methods 0.000 abstract description 114
- 238000012545 processing Methods 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 description 30
- 230000008569 process Effects 0.000 description 20
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000005055 memory storage Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004744 fabric Substances 0.000 description 2
- 230000003116 impacting effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
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/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/41—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
- G06F12/1054—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache the data cache being concurrently physically addressed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17331—Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/289—Object oriented databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/383—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/387—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/483—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage 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/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
-
- 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
-
- 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/068—Hybrid storage device
-
- 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/901—Buffering arrangements using storage descriptor, e.g. read or write pointers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/254—Distributed memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
Abstract
本文中所描述的实施例提供了改善的方法和系统,用于在存储边缘控制器内的计算引擎(诸如人工智能引擎)处生成用于媒体对象的元数据,以及用于在数据处理系统中存储并其使用这种元数据。
Description
技术领域
本公开涉及非易失性存储设备的存储控制和管理,具体涉及具有计算引擎的存储控制器。
背景技术
现有存储系统经常以相关联的元数据来存储数据,元数据以紧凑格式提供了数据的描述或其含义。元数据的常见格式包括各种标签、标记、数据类型指示符、在数据中检测到的对象和活动、其中创建数据的位置等。通常,元数据由诸如数据中心的主机系统生成,该主机系统与诸如其中存储数据的存储服务器的存储系统远程交互。例如,存储系统被配置为从非易失性存储器中获得所存储的数据,并且通过计算机网络将所获得的数据发送到主机系统。然后,主机系统可以分析所获得的数据,并且生成与所获得的数据有关的元数据。然后,所生成的元数据经由主机接口传递回远程存储系统用于存储。在存储系统与主机系统之间交换的数据量可以很大,因此会对计算机处理和网络系统的可用带宽产生负面影响。结果,针对在当今世界生成的相当多的媒体生成元数据数乎不太可能。
发明内容
本文中的描述的实施例提供一种存储设备控制器,用于管理在一个或多个存储设备处对数据的存储和取回。该存储设备控制器包括主机接口,其被配置为与一个或多个主机通信;存储器接口,其被配置为与一个或多个存储设备的非易失性存储器本地通信;第一处理器,其被配置为管理在非易失性存储器处对对象的本地存储或取回。存储设备控制器还包括计算引擎,其被配置为从易失性存储器获得第一计算模型和用于实现第一计算模型的参数集合,并且使用第一计算模型选择性地计算元数据,该元数据定义从非易失性存储器取回或从一个或多个主机接收用于存储在非易失性存储器中的对象的内容特性。
在一些实现方式中,易失性存储器是动态随机存取存储器,其耦合到存储设备控制器。
在一些实现方式中,易失性存储器是主机存储器缓冲器,其通过主机系统分配给存储设备控制器;并且该主机存储器缓冲器可由存储设备控制器通过计算机网络连接或总线连接(例如,PCIe)访问。
在一些实现方式中,计算引擎包括第二处理器,其与第一处理器分隔、并且被配置为执行与元数据生成有关的计算任务,这些任务包括实现第一计算模型。第一处理器被配置为在计算引擎处向第二处理器发送与元数据生成有关的计算任务,而无需占用第一处理器的资源,该资源用于由存储设备控制器所执行的进行中操作。
在一些实现方式中,计算引擎还包括易失性存储器,其耦合到第二处理器。易失性存储器是静态随机存取存储器,被配置为在计算元数据期间缓存对象的至少一部分,该元数据定义对象的所缓存的部分的内容特性。
在一些实现方式中,第一处理器还被配置为经由主机接口从一个或多个主机接收对象。对象要被存储在非易失性存储器中。第一处理器还被配置为将所接收的对象临时存储在存储设备控制器内设置的易失性存储器中,以便计算元数据。在完成对定义对象的内容特性的元数据的计算之后,第一处理器被配置为经由存储器接口将所接收的对象从易失性存储器发送到非易失性存储器,以便存储。第一处理器被配置为执行以下至少一项:经由主机接口将元数据发送到主机系统;以及经由存储器接口将元数据发送到非易失性存储器以便存储。
在一些实现方式中,第一处理器还被配置为经由主机接口从一个或多个主机的主机系统接收从非易失性存储器取回对象的命令。响应于该命令,第一处理器被配置为经由存储器接口从存储控制器内设置的易失性存储器取回对象,以便计算元数据。在完成对定义对象的内容特性的元数据的计算之后,第一处理器被配置为经由存储器接口将元数据和对象发送到非易失性存储器以便供存储。
在一些实现方式中,第一处理器还被配置为在计算引擎处正在计算元数据时,经由主机接口并且从一个或多个主机接收对元数据的请求。第一处理器还被配置为通过以下各项来异步响应对元数据的请求:等待直到在计算引擎处计算出所请求的元数据为止;以及在计算引擎处正在计算与所请求的元数据不同的新元数据时,经由主机接口将所请求的元数据发送到主机系统。
在一些实现方式中,第一处理器还被配置为响应于命令,确定来自主机系统的命令是否需要第一计算模型的更新。响应于确定来自主机系统的命令无需计算模型的更新,第一处理器被配置为指令计算引擎实现现有计算模型。响应于确定来自主机系统的命令需要将第一计算模型更新为与第一计算模型不同的第二计算模型,第一处理器被配置为从在存储控制器内设置的易失性存储器或经由主机接口从主机系统内设置的主机缓冲器存储器,取回用于第二计算模型的经更新参数集合。第一处理器还被配置为将经更新参数集合发送到计算引擎以实现第二计算模型。
在一些实现方式中,计算引擎还被配置为通过执行以下任一项来自动生成定义对象的内容特性的元数据:对感兴趣人员或其他对象的标识;在流式视频中对广告的定制插入;对来自自主车辆的数据的基于云的分析;在对在ChatBot话音呼叫的数据库中的呼叫和响应质量的分析、文本文档的数据库和文本消息的数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;以及对汽车传感器数据和驾驶响应的分析。
附图说明
继结合附图考虑以下具体实施方式之后,本公开的其他特征、其性质和各种优点将变得显而易见,其中相同的附图标记始终是指相同部分,并且其中:
图1是根据本文中所描述的一个实施例的框图,其图示了具有用于固态设备(SSD)存储设备的存储中(in-storage)DRAM的存储中设备计算结构;
图2是根据本文中所描述的一个备选实施例的框图,其图示了没有用于固态设备(SSD)存储设备的存储中DRAM的备选存储中计算结构;
图3是示意性数据流程图,其图示了在非易失性存储设备内的各个模块,以及在用于生成从主机系统传输的数据流的元数据的那些模块之间的数据流;
图4是根据本文中所描述的实施例的逻辑流程图,其提供了图3中所描绘的数据流的示例逻辑流;
图5是根据本文中所描述的另一实施例的示意性数据流程图,其图示了在非易失性存储器存储设备内的各个模块以及在用于生成非易失性存储器中存储的数据的元数据的那些模块之间的数据流;
图6是根据本文中所描述的另一实施例的逻辑流程图,其提供了图5中描绘的数据流的示例逻辑流;以及
图7是示意性数据流程图,其图示了在非易失性存储器存储设备内的各个模块以及使用存储模块的AI引擎内的专用CPU来生成元数据的那些模块之间的数据流;以及
图8是本文中所描述的另一实施例的逻辑流程图,其提供了图7中所描绘的数据流的示例逻辑流。
具体实施方式
本文中所描述的各个实施例提供了改善方法和系统,用于在存储边缘控制器内的计算引擎(诸如人工智能引擎)处生成针对媒体对象的元数据,以及用于在数据处理系统中且存储并使用这种元数据。
在一些实施例中,数据处理系统被用于存储和分析大量媒体对象。媒体对象的一些非限制性示例包括视频、录音、静止图像、诸如文本消息和电子邮件的文本对象、从诸如汽车传感器和物联网(IoT)传感器的各种类型的传感器获得的数据、数据库对象、和/或任何其他合适对象。对象分析应用的一些非限制性示例包括:对安全相机的视频录像中的感兴趣人员或其他对象的标识;在流式视频中对广告(“ads”)的定制插入;对来自自主车辆的数据的基于云的分析;对在分析ChatBot话音呼叫的数据库中的呼叫和响应质量的分析、文本文档的数据库和文本消息的数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;对车辆传感器数据和驾驶响应的分析等等。
如本公开的背景技术中所讨论的,传统上讲,主机系统被配置为从非易失性存储器读取媒体对象,生成与媒体对象有关的元数据,然后将元数据传递回到非易失性存储器用于存储。因此,在非易失性存储器与主机系统之间交换的数据量可能很大,从而对计算机处理和网络系统的可用带宽产生负面影响。
如背景技术中所描述的,鉴于在远离数据存储位置的主机系统处元数据的计算效率低下,这些主机系统需要通过计算机网络从数据存储向数据计算位置传送大量数据,对存储边缘处的元数据的计算进行描述。通过在存储边缘计算元数据,可以避免通过计算机网络传输过多数据。具体地,本文中所描述的实施例提供了一种计算引擎,其位于非易失性存储设备的存储控制器内以生成关于在途中存储在非易失性存储设备中的数据的元数据,或从非易失性存储设备取回元数据。这样,存储设备能够例如经由驻留在存储控制器内的内部计算引擎本地生成元数据,而无需将原始数据内容传递到主机系统用于处理。通过使用关于其中存储数据的位置而言在本地的高级计算引擎来计算元数据,元数据生成不再受到例如存储设备的主机接口的容量或数据从存储传送到计算设施所通过的计算机网络的带宽限制的限制。通过在存储边缘处计算用于所存储的数据的元数据,特别是用于非结构化媒体或部分结构化媒体的元数据,描述所存储的数据的元数据的存储和生成效率得以被改善。
如本文中所使用的,术语“存储边缘”用于意指非易失性存储设备本地的模块或部件。例如,控制一个或多个存储设备在非易失性存储器的一个或多个实例处存储或取回数据的操作的控制器被设置在存储边缘上。存储边缘例如在专用存储设备中或存储网络处被找到,并且与例如被远程定位在主机计算机中或数据中心处的处理器分隔。在存储边缘与远程主机之间的通信通过计算机网络连接进行。
如本文中所使用的,术语“数据对象”、“媒体对象”或“对象”用于意指通过在主机系统上运行的应用发布并且可以被存储在存储设备上的各种类型的数据。“媒体对象”或“对象”的示例包括但不限于视频、录音、静止图像、诸如文本消息和电子邮件的文本对象、从诸如车辆传感器和物联网(IoT)传感器的各种类型的传感器获得的数据、数据库对象、和/或任何其他合适对象。在许多情况下,媒体对象是非结构化媒体对象。如本文中所使用的,术语“非结构化对象”意指对象的媒体内容(例如,文本内容、音频内容、图像内容或视频内容)以原始形式提供,并且尚未提前根据固定字段格式进行组织。未结构化对象不会使用元数据预先标记,该元数据限定每帧内容或其他内容部分的任何方面。非结构化数据是非事务性数据,并且其格式不容易符合关系数据库模式。
如本文中所使用的,术语“元数据”是指非易失性存储设备中存储的实际数据内容的高级表示。“元数据”可以是实际数据内容的抽象层,其以紧凑格式给出数据内容的描述或含义。元数据可以以各种方式由通常非结构化的媒体对象生成。示例元数据可以包括标签、标记、数据类型、在数据内容中检测的对象/概念/情感、数据内容内这样的对象/概念/情感的空间位置/时间位置等。
如本文中所使用的,术语“存储中计算(in-storage compute)”用于指在存储设备(例如,硬盘驱动器、固态硬盘驱动器等)上存储的数据通过在该存储设备上的存储控制器对该数据进行本地处理,以自动生成数据的结构。换句话说,数据不会例如通过计算机网络发送到单独服务器或主机系统,而是在存储设备的“边界”内进行处理。虽然“存储中计算”可以是指不同种类的计算,但是在一个实现方式中,这样的计算可以通过存储设备内的人工智能(AI)引擎来进行。
如本文中所使用的,术语“人工智能(AI)模型”用于指例如在深度神经网络或任何递归神经网络或其任何变型上实现的任何合适AI算法。在一些实现方式中,AI模型适当地是任何其他有监督学习算法、无监督学习算法、或强化学习算法。使用“训练集”对AI模型进行训练,该“训练集”是媒体对象本体和已知准确的对应元数据。然后,经训练AI模型被应用于生成其他媒体对象的元数据。接收诸如经预先训练的AI模型并且使用它来计算对象的元数据的软件模块或硬件模块在本文中被称为“AI引擎”或“AI推理引擎”。在一些实现方式中,数种不同的AI模型将应用于非结构化媒体对象或部分结构化媒体对象。
图1是根据本文中所描述的一个实施例的框图100,其图示了具有用于存储设备的存储中DRAM的存储中设备计算结构。该存储设备包括任何种类的非易失性存储器,诸如但不限于固态硬盘设备(SSD)、混合硬盘驱动器等。图100示出了连接到主机系统110的存储设备120。主机系统110远离相应存储设备120定位,该存储设备120可经由计算机网络访问。
存储设备120(例如,SSD存储设备控制器)包括多个非易失性存储器,其在图1中被描绘为NAND闪存119a-d(但是其他类型的非易失性存储器也可适用),该多个非易失性存储器经由数据总线连接到存储控制器130。
在实现方式中,存储控制器130被配置为片上系统,该片上系统包括一个或多个集成电路,该一个或多个集成电路在封装中被组合在一起。存储控制器130被配置为在非易失性存储器(例如,NAND闪存119a-d)处执行读取操作或写入操作,例如,从NAND闪存119a-d读取所存储的数据内容,或将数据内容写入NAND闪存119a-d用于存储。
存储控制器130包括各种模块,诸如主机接口136、存储控制器的中央处理单元(CPU)133、本地存储器(经由DRAM控制器134的SRAM 137或DRAM 125)、媒体控制器138等。各个模块被配置为经由控制总线或数据总线135的构造彼此交互。具体地,CPU 133被配置为发布指令用于存储控制器130在NAND存储器119a-n中的一个或多个NAND存储器处执行诸如写入操作或读取操作的各种任务。SRAM 137被配置为缓存在由存储控制器130所执行的操作期间生成或使用的数据。在实现方式中,媒体控制器138被配置为接口与NAND闪存119a-d的通信。主机接口136被配置为例如通过计算机网络连接111接口与外部主机系统110的通信。
根据实现方式,存储控制器130还包括计算引擎,诸如例如,AI引擎131,该计算引擎经由控制总线或数据总线135的构造与存储控制器130内部的其他模块通信。AI引擎131被配置为加速器,以与CPU 133分隔地对数据内容进行处理,以生成元数据,该元数据描述了数据内容,该数据内容被存储在NAND存储器119a-h中的一个NAND存储器中或从其中取回该数据内容、或该数据在途中用于存储在NAND存储器119a-h中的一个NAND存储器处。在实现方式中,AI引擎包括以下一项或多项:矢量处理器、DSP、以及其他用于分析媒体数据并且生成元数据的合适核。关于图3至图6,还对通过AI引擎131生成元数据的详细实现方式进行描述。可替代地,由专用AI引擎所提供的一些或全部功能性可以通过运行合适软件或固件的CPU 132和133中的一个或多个CPU来提供。
AI引擎131可选地包括其自己的CPU 132,该CPU 132与存储控制器130的CPU 133分隔。当AI引擎131包括CPU 132时,CPU 132合适地被配置为协处理器,该协处理器器被配置为例如从主CPU 133卸载各种AI相关计算操作,管理AI引擎中断和寄存器编程,协助元数据生成等。当AI引擎131不包括CPU 132时,诸如由用于生成元数据的任何计算任务的AI引擎131所需要的任何CPU操作通过存储控制器130的CPU 133来执行。在这种情况下,AI引擎131与其他存储相关操作共享CPU资源。关于图7至图8,对在AI引擎处通过专用CPU生成元数据的详细实现方式进行描述。
存储设备120包括本地易失性存储器,诸如DRAM 125,该本地易失性存储器被配置为存储AI模型的数据参数,诸如深度神经网络的系数、权重。这样,AI引擎131被配置为经由DRAM控制器134从DRAM 125获得数据参数,以适当地执行由AI模型所需的计算。
图2是根据本文中所描述的一个备选实施例的框图,其图示了用于存储设备的存储中DRAM的备选存储中计算结构。图200图示了与图1中的图100中的存储设备和主机系统相似的存储设备120和主机系统110。与图100所示的结构不同,存储设备120没有本地DRAM,因此不会将AI模型的数据参数存储在本地DRAM处。取而代之的是,主机系统110被配置为向存储控制器130分配一块存储器作为主机缓冲器存储器108,用于存储用于AI模型的数据参数。主机存储器缓冲器108位于主机110处,并且可由存储控制器130经由主机接口136(例如,通过数据总线连接112)或在NAND闪存119a-d中的一个或多个NAND闪存中访问。因此,用于AI模型108的数据参数经由主机接口136(例如,通过数据总线连接112)从主机存储器缓冲器108或从NAND闪存传递到AI引擎131。
在一些实施例中,当主机系统110在存储设备120本地、并且经由数据总线112连接到存储设备120时,可以应用存储中计算结构。由于主机系统110没有远离存储设备120,所以与当主机设备经由网络连接程连接到存储设备时的场景的数据交换相比,在主机系统110与存储设备120之间的数据交换相对更高效。因此,可以读取主机侧(例如,主机存储器缓冲器108)处存储的AI模型的参数,并且将这些参数有效发送到存储侧。当AI模型的数据参数包括大量数据时,主机存储器缓冲器108可以用作本地存储器以存储大量数据,而没有受到位于存储设备120内的SRAM或DRAM的数据容量的限制。
图3是示意性数据流程图,其图示了非易失性存储器存储设备内的各个模块以及用于生成从主机系统传输的数据流的元数据的那些模块之间的数据流,并且图4是根据本文中所描述的一个实施例的逻辑流程图,其提供了图3中所描绘的数据流的示例逻辑流。图300图示了通信耦合到主机系统110的存储控制器130以及通过各个部件之间的数据流。存储控制器130和主机系统110的部件与图1至图2所示的图100至200中所描述的结构相似。在所图示的示例中,过程400通过在存储设备120的各个模块与主机系统110之间的数据交换,使用图300中所示的结构来实现。
具体地,过程400从402开始,在该402处,从媒体生成器直接或间接接收诸如媒体对象的非结构化数据。例如,在一些实现方式中,从在主机系统100处运行的主机应用105接收媒体对象。在一些其他实施方式中,在没有传递通过主机处理器的情况下、或在传递通过与其中可能生成或分析元数据的主机处理器不同的服务器(即,云服务器)之后,从生成媒体对象的设备直接或间接接收非结构化媒体对象。写入命令与媒体对象的数据流301一起被发送到存储设备120,用于存储。具体地,发送到存储设备120的数据流301包含非结构化(即,原始)媒体对象或部分结构化对象(例如,加框对象或具有仅部分描述媒体内容的一些属性的部分元数据的对象)。
在404处,通过主机内容管理器142发送经过非结构化或经过部分结构化的媒体对象的数据流301,并且将其临时存储在本地存储器125处。主机内容管理器142是软件模块,其通过CPU 133实现为利用存储控制器130的主机接口136操作。例如,主机接口136被配置为从主机系统110接收非结构化媒体对象的数据流301。然后,主机数据命令处置模块141被配置为在302a处将非结构化媒体对象转发到主机内容管理器142。例如,主机数据命令处置模块141和主机内容管理器142是在同一CPU 133上运行的软件模块,并且被配置为交换数据。主机内容管理器142被配置为经由数据总线302b将数据内容转发到本地存储器125。在实现方式中,本地存储器125是如图1所示的DRAM。在另一实现方式中,代替发送数据流301以便临时存储在SSD存储设备130内的本地存储器125处,该数据流301被临时存储在基于NAND的缓存系统(未示出)处,该基于NAND的缓存系统形成在NAND存储器中的一个NAND存储器中。基于NAND的缓存系统的其他示例可以在共同拥有的于2016年10月25日发布的美国专利No.9,477,611以及于2018年9月4日发布的美国专利No.10,067,687中找到。
在406处,从本地存储器125读取非结构化媒体对象和/或AI模型的参数(例如,深度神经网络的权重/系数)。例如,AI模型的参数先前从主机系统110获得,并且预先存储在本地存储器125处。在一些实现方式中,经由数据总线302a-b使用来自主机系统110的新参数周期性地、恒定地或间歇地对AI模型的参数进行更新。主机内容管理器模块142被配置为经由数据总线304从本地存储器125读取非结构化媒体对象以及用于AI模型的参数。在另一实现方式中,用于AI模型的参数可选地从图2所示的主机存储器缓冲器108读取。
在408处,由AI引擎131通过对各种类型的媒体对象(诸如视频、录音、静止图像、诸如文本消息和电子邮件的文本对象、从诸如车辆传感器和物联网(IoT)传感器的各种类型的传感器获得的数据、数据库对象和/或任何其他合适对象)的分类、标记或存档等来对非结构化媒体对象或部分结构化媒体对象进行处理。具体地,主机内容管理器被配置为将数据内容以及用于AI模型的数据参数发送到以AI引擎131运行的AI驱动器144(例如,HAL驱动器)。然后,AI驱动器144被配置为并入数据参数,以实现(对于深度神经网络,具有期望系数/权重的)期望AI模型。然后,AI引擎131被配置为通过运行AI模型来产生描述数据内容的元数据。然后,所生成的元数据可以经由图1至图2中所示的数据总线135的构造发送到媒体控制器138。
在一个实现方式中,在410处,所生成的元数据与原始数据内容一起存储在NAND闪存119a-n上。具体地,主机内容管理器142被配置为使得从AI引擎131生成的元数据经由数据总线306传输到内部文件系统148,该数据总线306是数据总线135的结构的一部分。然后,内部文件系统148被配置为使元数据与对应媒体对象链接。使元数据与对应媒体对象链接的内部文件系统148的其他示例可以在于同一天提交的题为“针对多种对象类型的元数据生成(Metadata Generation For Multiple Object Types)”的共同待决且共同拥有的美国专利申请No.16/262,971(代理人案卷号:MP11074/1036-1182)中找到。然后,元数据经由数据总线307从内部文件系统148发送到媒体命令处理器149,该数据总线307是数据总线135的结构的一部分。媒体命令处理器149又发布写入命令以经由闪存控制器129将元数据写入NAND闪存119a-n。
在一些实现方式中,所生成的元数据与原始数据内容一起存储在NAND闪存119a-n中。例如,每个数据流301a-n伴随有描述相应数据流的对应元数据317a-n。这样,元数据317a-n可以通过在单独物理位置处存储或通过逻辑分隔来从原始数据内容301a-n中分隔地取回。
在一些实现方式中,元数据可以与数据内容分隔存储,例如,不会存储在连续存储器地址中,不会存储在相同存储器页面内,或甚至不会存储在相同NAND存储器管芯上。在这种情况下,内部文件系统148被配置为指派指示符,该指示符使数据内容的媒体对象所驻留的存储器地址与描述数据内容的元数据所驻留的存储器地址链接。这样,当使用元数据标识感兴趣媒体对象中的原始数据内容的一部分时,可以从非结构化媒体对象中取回媒体的对应分段。非结构化媒体对象和描述媒体对象的元数据的存储结构的更多细节可以在于同日提交的题为“用于在存储边缘处生成描述非结构化数据对象的元数据的系统和方法(Systems And Methods For Generating Metadata Describing Unstructured DataObjects At The Storage Edge)”的共同待决且共同拥有的美国专利申请No.16/163,387(代理人案卷号:MP11049/004048-0729-101)中找到。
在412处,当数据处理尚未完成时,例如,当存在要处理的媒体对象的新数据流时,要生成使用不同的AI模型的与不同的内容属性集合相对应的单独元数据集合等,过程400进行到重复406、408和410。当数据处理完成时,过程400结束。
图5是示意性数据流程图,其图示了非易失性存储器存储设备内的各个模块以及用于生成存储在非易失性存储器中的数据的元数据的那些模块之间的数据流,并且图6是根据本文中所描述的另一实施例的逻辑流程图,其提供图5中所描绘的数据流的示例逻辑流。图500示出了通信耦合到主机系统110的SSD存储设备120,其与图1至图2所示的图100至200中所描述的结构相似、并且与图3中的图300所示的结构相似。通过SSD存储设备120的各个模块与主机系统110之间的数据交换,在图500所示的结构上实现过程600。
具体地,与从主机系统110接收和处理数据流的过程400不同,图500中的过程600和数据流描述了其中非结构化媒体对象或部分媒体对象已经存储在NAND闪存119a-n上的场景,但是对应元数据尚未完全生成。因此,过程600可以应用于“离线”场景,在该场景中,在比最初从主机系统接收非结构化媒体对象或部分结构化媒体对象的时间晚的时间,对非结构化媒体对象或部分结构化媒体对象进行处理(或重新处理)。
在602处,从主机系统110接收数据请求,以对先前已经存储在非易失性存储器(例如,NAND闪存119a-n)处的非结构化媒体对象进行处理。具体地,主机应用105被配置为发布命令501,以指令存储控制器130从非易失性存储器119a-n取回数据内容的非结构化媒体对象或部分结构化媒体对象的一部分。具体地,在接收到命令501之后,主机数据命令处置模块141被配置为经由数据总线502a将命令转发到主机内容管理器142,该主机内容管理器142又使得将媒体对象从NAND存储器119a-d取回到本地存储器125。
在604处,主机内容管理器142被配置为确定命令501是否请求使用已经加载到AI引擎131中的现有AI模型对数据进行处理,或请求使用尚未加载到AI引擎131中的新AI模型来对所存储的数据内容进行重新处理。
当命令501请求使用现有AI模型对数据进行处理时,过程600进行到608,在该608处,AI引擎131被配置为通过已经在AI引擎131处加载用于生成元数据的现有AI模型重新开始。
当命令501请求使用新AI模型对数据进行处理时,过程600进行到606,在该606处,用于AI模型的新数据参数被加载到AI引擎131和本地存储器125中。具体地,新数据参数(例如,新参数/权重、新神经网络模型等)有时与命令501一起从主机系统110发送到主机数据命令处置模块141,该主机数据命令处置模块141又经由数据总线502a将新数据参数发送到主机内容管理器142。然后,主机内容管理器142被配置为经由数据总线502c将新数据参数发送到本地存储器125用于存储(例如,更新用于AI模型的先前所存储的参数等),该数据总线502c是数据总线135的结构的一部分。主机内容管理器142还经由数据总线503将新数据参数发送到AI驱动器144,该数据总线503是数据总线135的结构的一部分。然后,AI驱动器144被配置为并入新数据参数以在AI引擎131处实现新AI模型。
在一些实现方式中,代替由主机系统110命令,存储控制器130被配置为当存储控制器130针对存储在非易失性存储器上的数据执行任何存储和取回操作或对直接从主机系统110接收的任何数据流(例如,图3中的301)进行处理等处于空闲状态时,对存储于非易失性存储器119a-d处的非结构化媒体对象的元数据进行自发起计算。因此,当存储控制器130针对执行诸如从非易失性存储器读取数据或将数据写入非易失性存储器的存储操作而处于空闲状态时,存储控制器130的CPU资源被用于过量AI计算,以生成关于内容的元数据,该内容存储在与存储控制器130相关联的非易失性存储器中的一个或多个非易失性存储器中。在一些实现方式中,存储控制器130是聚合器,其被配置为利用诸如存储器阵列的多个存储设备操作并且控制这些存储设备。使用聚合器计算并聚合存储器阵列处存储的非结构化媒体对象的元数据的更多细节可以在于同日提交的题为“具有元数据计算控制的存储聚合器控制器(Storage Aggregator Controller With Metadata Computation Control)”的共同未决且共同拥有的美国专利申请Np.16/264,248(代理人案卷号:MP11065/004048-0731-101)中找到。
然后,过程600进行到操作606或608之后的610。在一个实现方式中,除了使用新AI模型对数据内容进行重新处理之外,操作610至615分别与图4中的操作406至412相似。在这种情况下,之前可能已经产生了用于相同数据内容的一些元数据,并且使用从新AI模型新生成的元数据对这些元数据进行更新或修饰。
在610处,数据内容的媒体对象从NAND闪存119a-n取回到本地存储器125。具体地,闪存控制器129经由数据总线接收从NAND存储器119a-n取回的数据内容的媒体对象,并且将该数据内容提供给主机内容管理器142,该主机内容管理器142被配置为经由数据总线502c将要处理或重新处理的数据内容供应给本地存储器125。
在612处,通过AI引擎131对非结构化媒体对象进行处理,该AI引擎131在608处运行先前加载的AI模型,或在606处生成并运行新AI模型。具体地,主机内容管理器142被配置为经由数据总线504从本地存储器125读取数据内容,然后经由数据总线503将数据内容发送到以AI引擎131运行的AI驱动器144。然后,该AI引擎131被配置为通过运行可用(现有或新)AI模型来生成描述数据内容的元数据。
在614处,所生成的元数据被提供给NAND闪存119a-n用于存储。具体地,主机内容管理器142被配置为使得从AI引擎131生成的元数据经由数据总线506传输到内部文件系统148,该数据总线506是数据总线135的结构的一部分。然后,内部文件系统148被配置为使元数据与对应媒体对象链接。内部文件系统148使元数据与对应媒体对象链接的其他示例可以在于同一天提交的题为“针对多种对象类型的元数据生成(Metadata Generation ForMultiple Object Types)”的共同未决且共同拥有的美国申请No.16/262,961(代理人案卷号:MP11074/1036-1182)中找到。
媒体命令处理器149继而发布写入命令,以经由闪存控制器129将元数据写入到NAND闪存119a-n。
在一些实现方式中,针对数据内容的同一媒体对象,存储新生成的元数据并且将其与先前生成的元数据组合。例如,非结构化媒体对象的数据流512a-n中的一个数据流伴随有描述相应数据流的对应元数据集合507a-n。在一个实现方式中,在元数据507a-n之中,相应元数据集合507a-n的分段可以是经由新AI模型生成的新生成的元数据,如508所示。非结构化媒体对象以及描述媒体对象的元数据的存储结构的更多细节可以在于同日提交的题为“用于在存储边缘处生成描述非结构化数据对象的元数据的系统和方法(Systems AndMethods For Generating Metadata Describing Unstructured Data Objects At TheStorage Edge)”的共同待决且共同拥有的美国专利申请No.16/263,387(代理人案卷号:MP11049/004048-0729-101)中找到。
在615处,当数据处理尚未完成时,例如,当存在要处理的附加数据时,要生成使用不同的AI模型的与不同的内容属性集合相对应的单独的元数据集合等,过程600进行到重复610、612和614。当数据处理完成时,过程600进行到616,在该616处,新生成的元数据可选地例如经由包含新元数据报告509的形式发送回到主机系统110。在一个实现方式中,存储控制器130被配置为当完成数据处理时,将新元数据报告509发送回到主机系统110。或可替代地,存储控制器130被配置为关于命令501异步将新元数据报告509发送回到主机系统110。例如,在任何时候,主机系统可以在正在执行元数据的更新时,请求元数据;并且存储控制器130被配置为当元数据更新完成时,与元数据请求异步发回新元数据报告509。
图7是示意性数据流程图,其图示了非易失性存储器存储设备内的各个模块、以及用于使用存储设备的AI引擎内的专用CPU来生成元数据的那些模块之间的数据流,并且图8是根据本文中所描述的另一实施例的逻辑流程图,其提供图7中所描绘的数据流的示例逻辑流。图700示出了通信耦合到主机系统110的存储设备120,其与图1至图2所示的图100至200中所描述的结构相似。通过存储设备120的各个模块与主机系统110之间的数据交换,在图700所示的结构上实现过程800。具体地,图700描述了存储控制器结构130,其中AI引擎131包括其自己的CPU 132和SRAM 154。
在一个实现方式中,在存储控制器130处,CPU 133用于在CPU 133处对一个或多个控制寄存器进行编程,以执行AI相关操作。当AI相关操作完成时,服务中断从AI引擎131发送到CPU 133,使得CPU 133可以释放经编程的控制寄存器以进行其他活动。例如,CPU 133通常需要用于主机接口管理的资源,以从主机系统110获取命令并且传送来自主机系统110的数据,执行闪存转换层(FTL)操作以从NAND闪存119a-d提取基础媒体数据,执行媒体管理以访问基础媒体(例如,NAND存储器119a-d等)设备并且执行实际数据读取操作或写入操作等。由于一些AI模型具有递归性质,所以需要在某些时候以高频率重复AI操作。如果需要CPU 133不断指派控制寄存器以执行AI操作,则会导致相对较高的CPU工作负荷。这会占用存储控制器CPU 133的带宽,并且降低其执行存储相关任务的可用性,从而对存储性能产生负面影响。
AI引擎131中包括CPU 132或协处理器,以从一个或多个主CPU 133卸载AI相关任务,以及在AI管理与运行存储相关任务的主操作系统(OS)之间提供OS隔离。CPU 132包括一个或多个处理器单元,其提供强大的通用功能性、数字信号功能性、向量功能性或其他合适的中央处理功能性。另外,专用SRAM 154位于AI引擎131内,用于缓存被频繁访问的数据,使得无需通过构造从DRAM 125读出数据(或从基于NAND的高速缓存读出数据)。因此,结构的带宽可以应用于其他非AI相关操作。
过程800从802开始,在该802处,从主机系统110接收存储请求701以及要存储的数据内容,该802例如与图4的操作402相似。在804处,数据内容经由数据总线702加载到本地存储器DRAM 125中,该804例如与图4中的操作404相似。在806处,频繁访问的数据被缓存到AI引擎131内部的专用SRAM 154中。例如,在一个实现方式中,在正在生成元数据时,数据缓存以AI引擎的实现方式逐步执行。要处理的数据内容的非结构化媒体对象的分段、递归AI模型中的常用数据变量等被分别缓存在SRAM 154中,用于访问并且用于AI模型的后续迭代。在一个实现方式中,在正在实现AI模型时,根据需要不断地、周期性或间歇地重写并且替换SRAM 154处缓存的数据。
在808处,AI引擎131被配置为从SRAM 154读取所缓存的数据并且继续AI模型实现方式。具体地,AI硬件153被配置为协助AI相关任务,但是通常这些AI操作并非完全硬件自动化,并且仍然需要一些CPU协助以进行更复杂的任务。存储控制器133的CPU 133被配置为将所有或基本上所有AI相关任务161指派给专用CPU 132以进行处理,该专用CPU 132在存储控制器130本地。
在810处,所生成的元数据可选地存储在本地存储器DRAM 125处,或在812处,直接存储到NAND闪存处,例如,存储在基于NAND的高速缓存中。例如,新生成的元数据与AI模型的参数一起存储在DRAM 125中,该新生成的数据可以用作经更新的训练数据以修改AI模型。在812处,数据内容以及描述该数据内容的元数据经由数据总线703和705发送到NAND闪存119a-d用于存储。
在一些实现方式中,808处的AI操作与802、804、810和812处的存储操作同时执行。例如,新数据可以从主机系统110连续发送到存储控制器130,同时在AI引擎131处正在生成元数据。通过专用CPU 132,CPU 133被配置为管理存储操作(例如,802、804、810和812),同时将AI操作161卸载到专用CPU 132,例如,在AI引擎处对AI块寄存器进行编程,为AI中断服务等。因此,当执行SSD相关任务时,AI相关任务不会干扰存储控制器CPU 133的操作,并且不会有效增加CPU 133的工作负荷。
结合图1至图8所讨论的各种实施例通过一个或多个电子电路的电子部件来实现,这些电子部件诸如但不限于集成电路、专用集成电路(ASIC)、和/或等。在整个本公开中所讨论的各种部件(诸如但不限于CPU 133、AI引擎131、主机接口136等)被配置为包括电子电路部件集合,并且在一个或多个电子电路上以通信方式进行操作。
虽然本文中已经示出并描述了本公开的各个实施例,但是这些实施例仅通过示例提供。在没有背离本公开的情况下,与本文中所描述的实施例有关的许多变化、改变和替代可适用。应当指出,在实践本公开时,可以采用本文中所描述的本公开的实施例的各种备选方案。意图是以下权利要求限定本公开的范围,由此涵盖这些权利要求的范围内的方法和结构及其等同物。
已经按照特定方面本说明书的主题进行了描述,但是可以实现其他方面并且这些方面在所附权利要求的范围之内。例如,权利要求中所记载的动作可以按不同次序执行并且仍然实现期望结果。在某些实现方式中,多任务和并行处理可能是有利的。其他变型在所附权利要求的范围之内。
权利要求书(按照条约第19条的修改)
1.一种用于管理在一个或多个存储设备处对数据的存储和取回的存储设备控制器,所述存储设备控制器包括:
主机接口,被配置为与一个或多个主机通信;
存储器接口,被配置为与所述一个或多个存储设备的非易失性存储器本地通信;
第一处理器,被配置为管理在所述非易失性存储器处对对象的本地存储或取回;以及
计算引擎,被配置为:
从易失性存储器获得存储在所述易失性存储器中的多个计算模型之间的第一计算模型以及用于实现所述第一计算模型的参数集合,以及
使用所述第一计算模型选择性地计算元数据,所述元数据定义从所述非易失性存储器取回的所述对象的内容特性、或从所述一个或多个主机接收用于存储在所述非易失性存储器中的所述对象的内容特性。
2.根据权利要求1所述的存储设备控制器,其中所述易失性存储器是动态随机存取存储器,所述动态随机存取存储器耦合到所述存储设备控制器。
3.根据权利要求1所述的存储设备控制器,其中所述易失性存储器是主机存储器缓冲器,所述主机存储器缓冲器由主机系统分配给所述存储设备控制器,并且其中所述主机存储器缓冲器能够由所述存储设备控制器通过计算机网络连接或总线连接访问。
4.根据权利要求1所述的存储设备控制器,其中所述计算引擎包括:
第二处理器,所述第二处理器与所述第一处理器分离,并且被配置为执行与元数据生成有关的计算任务,所述计算任务包括实现所述第一计算模型;以及
其中所述第一处理器被配置为:
在所述计算引擎处向所述第二处理器发送与元数据生成有关的计算任务,而无需占用所述第一处理器的、用于由所述存储设备控制器正在执行的进行中操作的资源。
5.根据权利要求4所述的存储设备控制器,其中所述计算引擎还包括:
易失性存储器,耦合到所述第二处理器,其中所述易失性存储器是静态随机存取存储器,所述静态随机存取存储器被配置为在计算所述元数据期间缓存所述对象的至少一部分,所述元数据定义所述对象的所缓存的部分的内容特性。
6.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
经由所述主机接口从所述一个或多个主机接收所述对象,其中所述对象要被存储在所述非易失性存储器处;
将所接收的对象临时存储在所述存储设备控制器内设置的易失性存储器中,用于元数据计算;
在完成对定义所述对象的内容特性的所述元数据的计算之后:
经由所述存储器接口将所接收的对象从所述易失性存储器发送到所述非易失性存储器,用于存储;以及
执行以下至少一项:经由所述主机接口将所述元数据发送到所述主机系统;以及经由所述存储器接口将所述元数据发送到所述非易失性存储器,用于存储。
7.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
经由所述主机接口从所述一个或多个主机的主机系统接收从所述非易失性存储器取回所述对象的命令;
响应于所述命令,经由所述存储器接口从在所述存储控制器内设置的所述易失性存储器取回所述对象,用于元数据计算;以及
在完成对定义所述对象的内容特性的元数据的计算之后,经由所述存储器接口将所述元数据和所述对象发送到所述非易失性存储器,用于存储。
8.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
在所述计算引擎正在计算所述元数据时,经由所述主机接口并且从所述一个或多个主机接收对元数据的请求;以及
通过以下各项来异步响应所述对元数据的请求:
等待直到在所述计算引擎处计算出所请求的元数据为止;以及
在所述计算引擎处正在计算与所请求的元数据不同的新元数据时,经由所述主机接口将所请求的元数据发送到所述主机系统。
9.根据权利要求7所述的存储设备控制器,其中所述第一处理器还被配置为:
响应于所述命令,确定来自所述主机系统的所述命令是否需要所述第一计算模型的更新;
响应于确定来自所述主机系统的所述命令无需所述计算模型的更新,指示所述计算引擎实现现有计算模型;
响应于确定来自所述主机系统的所述命令需要将所述第一计算模型更新为与所述第一计算模型不同的第二计算模型:
从在所述存储控制器内设置的所述易失性存储器取回用于所述第二计算模型的经更新参数集合、或经由所述主机接口从在所述主机系统内设置的主机缓冲器存储器取回用于所述第二计算模型的经更新参数集合;以及
将所述经更新参数集合发送到所述计算引擎,以实现所述第二计算模型。
10.根据权利要求1所述的存储设备控制器,其中所述计算引擎还被配置为通过执行以下任一项来自动生成定义所述对象的内容特性的元数据:对感兴趣人员或其他对象的标识;在流式视频中对广告的定制插入;对来自自主车辆的数据的基于云的分析;对在ChatBot话音呼叫数据库中的呼叫和响应质量的分析、文本文档和文本消息数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;以及对车辆传感器数据和驾驶响应的分析。
11.一种用于管理在一个或多个存储设备处对数据的存储和取回的方法,所述方法包括:
经由存储设备控制器的主机接口,与一个或多个主机通信;
经由所述存储设备控制器的存储器接口,与所述一个或多个存储设备的非易失性存储器本地通信;
经由所述存储设备控制器的第一处理器,管理在所述非易失性存储器处对对象的本地存储或取回;
从易失性存储器获得存储在所述易失性存储器中的多个计算模型之间的第一计算模型以及用于实现所述第一计算模型的参数集合,以及
使用所述第一计算模型选择性地计算元数据,所述元数据定义从所述非易失性存储器取回的所述对象的内容特性、或从所述一个或多个主机接收用于存储在所述非易失性存储器中的所述对象的内容特性。
12.根据权利要求11所述的方法,还包括:
在所述易失性存储器处存储用于所述计算引擎的所述第一计算模型的参数,
其中所述易失性存储器是动态随机存取存储器,所述动态随机存取存储器耦合到所述存储设备控制器。
13.根据权利要求11所述的方法,还包括:
在所述易失性存储器处存储用于所述计算引擎的所述计算模型的参数,其中所述易失性存储器是主机存储器缓冲器,所述主机存储器缓冲器由主机系统分配给所述存储设备控制器,并且其中所述主机存储器缓冲器能够由所述存储设备控制器通过计算机网络连接或总线连接访问。
14.根据权利要求11所述的方法,还包括:
通过第二处理器实现所述计算模型,所述第二处理器与所述第一处理器分离;以及
在所述计算引擎处通过所述第一处理器将与元数据生成有关的计算任务发送到所述第二处理器,而无需占用所述第一处理器的、用于由所述存储设备控制器正在执行的进行中操作的资源。
15.根据权利要求14所述的方法,还包括:
在计算所述元数据期间,在易失性存储器处缓存所述对象的至少一部分,所述元数据定义对象的所缓存的部分的内容特性,所述易失性存储器耦合到所述第二处理器,其中所述易失性存储器是静态随机存取存储器。
16.根据权利要求11所述的方法,还包括:
经由所述主机接口从所述一个或多个主机接收所述对象,其中所述对象要被存储在所述非易失性存储器处;
将所接收的对象临时存储在所述存储设备控制器内设置的易失性存储器中,用于元数据计算;
在完成对定义所述对象的内容特性的所述元数据的计算之后:
经由所述存储器接口将所接收的对象从所述易失性存储器发送到所述非易失性存储器,用于存储;以及
执行以下至少一项:经由所述主机接口将所述元数据发送到所述主机系统;以及经由所述存储器接口将所述元数据发送到所述非易失性存储器,用于存储。
17.根据权利要求11所述的方法,还包括:
经由所述主机接口从所述一个或多个主机的主机系统接收从所述非易失性存储器取回所述对象的命令;
响应于所述命令,经由所述存储器接口从在所述存储控制器内设置的所述易失性存储器取回所述对象,用于元数据计算;以及
在完成对定义所述对象的内容特性的元数据的计算之后,经由所述存储器接口将所述元数据和所述对象发送到所述非易失性存储器,用于存储。
18.根据权利要求11所述的方法,还包括:
在所述计算引擎正在计算所述元数据时,经由所述主机接口并且从所述一个或多个主机接收对元数据的请求;
通过以下各项来异步响应所述对元数据的请求:
等待直到在所述计算引擎处计算出所请求的元数据为止;以及
在所述计算引擎处正在计算与所请求的元数据不同的新元数据时,经由所述主机接口将所请求的元数据发送到所述主机系统。
19.根据权利要求17所述的方法,还包括:
响应于所述命令,确定来自所述主机系统的所述命令是否需要所述第一计算模型的更新;
响应于确定来自所述主机系统的所述命令无需所述第一计算模型的更新,指示所述计算引擎实现所述第一计算模型;
响应于确定来自所述主机系统的所述命令需要将所述第一计算模型更新为与所述第一计算模型不同的第二计算模型:
从在所述存储控制器内设置的所述易失性存储器取回用于所述第二计算模型的经更新参数集合、或经由所述主机接口并且从在所述主机系统内设置的主机缓冲器存储器取回用于所述第二计算模型的经更新参数集合;以及
将所述经更新参数集合发送到所述计算引擎,以实现所述第二计算模型。
20.根据权利要求11所述的方法,还包括:
通过自动执行以下任一项来生成定义所述对象的内容特性的元数据:对感兴趣人员或其他对象的标识;在流式视频中对广告的定制插入;对来自自主车辆的数据的基于云的分析;对在ChatBot话音呼叫数据库中的呼叫和响应质量的分析、文本文档和文本消息数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;以及对车辆传感器数据和驾驶响应的分析。
Claims (20)
1.一种用于管理在一个或多个存储设备处对数据的存储和取回的存储设备控制器,所述存储设备控制器包括:
主机接口,被配置为与一个或多个主机通信;
存储器接口,被配置为与所述一个或多个存储设备的非易失性存储器本地通信;
第一处理器,被配置为管理在所述非易失性存储器处对对象的本地存储或取回;以及
计算引擎,被配置为:
从易失性存储器获得第一计算模型以及用于实现所述第一计算模型的参数集合,以及
使用所述第一计算模型选择性地计算元数据,所述元数据定义从所述非易失性存储器取回的所述对象的内容特性、或从所述一个或多个主机接收用于存储在所述非易失性存储器中的所述对象的内容特性。
2.根据权利要求1所述的存储设备控制器,其中所述易失性存储器是动态随机存取存储器,所述动态随机存取存储器耦合到所述存储设备控制器。
3.根据权利要求1所述的存储设备控制器,其中所述易失性存储器是主机存储器缓冲器,所述主机存储器缓冲器由主机系统分配给所述存储设备控制器,并且其中所述主机存储器缓冲器能够由所述存储设备控制器通过计算机网络连接或总线连接访问。
4.根据权利要求1所述的存储设备控制器,其中所述计算引擎包括:
第二处理器,所述第二处理器与所述第一处理器分离,并且被配置为执行与元数据生成有关的计算任务,所述计算任务包括实现所述第一计算模型;以及
其中所述第一处理器被配置为:
在所述计算引擎处向所述第二处理器发送与元数据生成有关的计算任务,而无需占用所述第一处理器的、用于由所述存储设备控制器正在执行的进行中操作的资源。
5.根据权利要求4所述的存储设备控制器,其中所述计算引擎还包括:
易失性存储器,耦合到所述第二处理器,其中所述易失性存储器是静态随机存取存储器,所述静态随机存取存储器被配置为在计算所述元数据期间缓存所述对象的至少一部分,所述元数据定义所述对象的所缓存的部分的内容特性。
6.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
经由所述主机接口从所述一个或多个主机接收所述对象,其中所述对象要被存储在所述非易失性存储器处;
将所接收的对象临时存储在所述存储设备控制器内设置的易失性存储器中,用于元数据计算;
在完成对定义所述对象的内容特性的所述元数据的计算之后:
经由所述存储器接口将所接收的对象从所述易失性存储器发送到所述非易失性存储器,用于存储;以及
执行以下至少一项:经由所述主机接口将所述元数据发送到所述主机系统;以及经由所述存储器接口将所述元数据发送到所述非易失性存储器,用于存储。
7.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
经由所述主机接口从所述一个或多个主机的主机系统接收从所述非易失性存储器取回所述对象的命令;
响应于所述命令,经由所述存储器接口从在所述存储控制器内设置的所述易失性存储器取回所述对象,用于元数据计算;以及
在完成对定义所述对象的内容特性的元数据的计算之后,经由所述存储器接口将所述元数据和所述对象发送到所述非易失性存储器,用于存储。
8.根据权利要求1所述的存储设备控制器,其中所述第一处理器还被配置为:
在所述计算引擎正在计算所述元数据时,经由所述主机接口并且从所述一个或多个主机接收对元数据的请求;
通过以下各项来异步响应所述对元数据的请求:
等待直到在所述计算引擎处计算出所请求的元数据为止;以及
在所述计算引擎处正在计算与所请求的元数据不同的新元数据时,经由所述主机接口将所请求的元数据发送到所述主机系统。
9.根据权利要求7所述的存储设备控制器,其中所述第一处理器还被配置为:
响应于所述命令,确定来自所述主机系统的所述命令是否需要所述第一计算模型的更新;
响应于确定来自所述主机系统的所述命令无需所述计算模型的更新,指示所述计算引擎实现现有计算模型;
响应于确定来自所述主机系统的所述命令需要将所述第一计算模型更新为与所述第一计算模型不同的第二计算模型:
从在所述存储控制器内设置的所述易失性存储器取回用于所述第二计算模型的经更新参数集合、或经由所述主机接口从在所述主机系统内设置的主机缓冲器存储器取回用于所述第二计算模型的经更新参数集合,以及
将所述经更新参数集合发送到所述计算引擎,以实现所述第二计算模型。
10.根据权利要求1所述的存储设备控制器,其中所述计算引擎还被配置为通过执行以下任一项来自动生成定义所述对象的内容特性的元数据:对感兴趣人员或其他对象的标识;在流式视频中对广告的定制插入;对来自自主车辆的数据的基于云的分析;对在ChatBot话音呼叫数据库中的呼叫和响应质量的分析、文本文档和文本消息数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;以及对车辆传感器数据和驾驶响应的分析。
11.一种用于管理在一个或多个存储设备处对数据的存储和取回的方法,所述方法包括:
经由存储设备控制器的主机接口,与一个或多个主机通信;
经由所述存储设备控制器的存储器接口,与所述一个或多个存储设备的非易失性存储器本地通信;
经由所述存储设备控制器的第一处理器,管理在所述非易失性存储器处对对象的本地存储或取回;
从易失性存储器获得第一计算模型以及用于实现所述第一计算模型的参数集合,以及
使用所述第一计算模型选择性地计算元数据,所述元数据定义从所述非易失性存储器取回的所述对象的内容特性、或从所述一个或多个主机接收用于存储在所述非易失性存储器中的所述对象的内容特性。
12.根据权利要求11所述的方法,还包括:
在所述易失性存储器处存储用于所述计算引擎的所述第一计算模型的参数,
其中所述易失性存储器是动态随机存取存储器,所述动态随机存取存储器耦合到所述存储设备控制器。
13.根据权利要求11所述的方法,还包括:
在所述易失性存储器处存储用于所述计算引擎的所述计算模型的参数,其中所述易失性存储器是主机存储器缓冲器,所述主机存储器缓冲器由主机系统分配给所述存储设备控制器,并且其中所述主机存储器缓冲器能够由所述存储设备控制器通过计算机网络连接或总线连接访问。
14.根据权利要求11所述的方法,还包括:
通过第二处理器实现所述计算模型,所述第二处理器与所述第一处理器分离;以及
在所述计算引擎处通过所述第一处理器将与元数据生成有关的计算任务发送到所述第二处理器,而无需占用所述第一处理器的、用于由所述存储设备控制器正在执行的进行中操作的资源。
15.根据权利要求14所述的方法,还包括:
在计算所述元数据期间,在易失性存储器处缓存所述对象的至少一部分,所述元数据定义对象的所缓存的部分的内容特性,所述易失性存储器耦合到所述第二处理器,其中所述易失性存储器是静态随机存取存储器。
16.根据权利要求11所述的方法,还包括:
经由所述主机接口从所述一个或多个主机接收所述对象,其中所述对象要被存储在所述非易失性存储器处;
将所接收的对象临时存储在所述存储设备控制器内设置的易失性存储器中,用于元数据计算;
在完成对定义所述对象的内容特性的所述元数据的计算之后:
经由所述存储器接口将所接收的对象从所述易失性存储器发送到所述非易失性存储器,用于存储;以及
执行以下至少一项:经由所述主机接口将所述元数据发送到所述主机系统;以及经由所述存储器接口将所述元数据发送到所述非易失性存储器,用于存储。
17.根据权利要求11所述的方法,还包括:
经由所述主机接口从所述一个或多个主机的主机系统接收从所述非易失性存储器取回所述对象的命令;
响应于所述命令,经由所述存储器接口从在所述存储控制器内设置的所述易失性存储器取回所述对象,用于元数据计算;以及
在完成对定义所述对象的内容特性的元数据的计算之后,经由所述存储器接口将所述元数据和所述对象发送到所述非易失性存储器,用于存储。
18.根据权利要求11所述的方法,还包括:
在所述计算引擎正在计算所述元数据时,经由所述主机接口并且从所述一个或多个主机接收对元数据的请求;
通过以下各项来异步响应所述对元数据的请求:
等待直到在所述计算引擎处计算出所请求的元数据为止;以及
在所述计算引擎处正在计算与所请求的元数据不同的新元数据时,经由所述主机接口将所请求的元数据发送到所述主机系统。
19.根据权利要求17所述的方法,还包括:
响应于所述命令,确定来自所述主机系统的所述命令是否需要所述第一计算模型的更新;
响应于确定来自所述主机系统的所述命令无需所述第一计算模型的更新,指示所述计算引擎实现所述第一计算模型;
响应于确定来自所述主机系统的所述命令需要将所述第一计算模型更新为与所述第一计算模型不同的第二计算模型:
从在所述存储控制器内设置的所述易失性存储器取回用于所述第二计算模型的经更新参数集合、或经由所述主机接口并且从在所述主机系统内设置的主机缓冲器存储器取回用于所述第二计算模型的经更新参数集合;以及
将所述经更新参数集合发送到所述计算引擎,以实现所述第二计算模型。
20.根据权利要求11所述的方法,还包括:
通过自动执行以下任一项来生成定义所述对象的内容特性的元数据:对感兴趣人员或其他对象的标识;在流式视频中对广告的定制插入;对来自自主车辆的数据的基于云的分析;对在ChatBot话音呼叫数据库中的呼叫和响应质量的分析、文本文档和文本消息数据库分析;情绪检测;视频文件或话音呼叫内的场景标识;对监控录像中的人员或对象的标识;对监控录像中发生的动作的类型的标识;对录音中的话音或声音类型的标识;对在对话期间使用的短语和响应的分类;以及对车辆传感器数据和驾驶响应的分析。
Applications Claiming Priority (21)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862712823P | 2018-07-31 | 2018-07-31 | |
US62/712,823 | 2018-07-31 | ||
US201862714563P | 2018-08-03 | 2018-08-03 | |
US62/714,563 | 2018-08-03 | ||
US201862716269P | 2018-08-08 | 2018-08-08 | |
US62/716,269 | 2018-08-08 | ||
US201862726847P | 2018-09-04 | 2018-09-04 | |
US201862726852P | 2018-09-04 | 2018-09-04 | |
US62/726,852 | 2018-09-04 | ||
US62/726,847 | 2018-09-04 | ||
US16/262,971 US11294965B2 (en) | 2018-07-31 | 2019-01-31 | Metadata generation for multiple object types |
US16/264,248 US11748418B2 (en) | 2018-07-31 | 2019-01-31 | Storage aggregator controller with metadata computation control |
US16/263,387 US11068544B2 (en) | 2018-07-31 | 2019-01-31 | Systems and methods for generating metadata describing unstructured data objects at the storage edge |
US16/264,473 US11080337B2 (en) | 2018-07-31 | 2019-01-31 | Storage edge controller with a metadata computational engine |
US16/262,971 | 2019-01-31 | ||
US16/264,473 | 2019-01-31 | ||
US16/264,248 | 2019-01-31 | ||
US16/262,975 US11036807B2 (en) | 2018-07-31 | 2019-01-31 | Metadata generation at the storage edge |
US16/263,387 | 2019-01-31 | ||
US16/262,975 | 2019-01-31 | ||
PCT/US2019/044551 WO2020028594A1 (en) | 2018-07-31 | 2019-07-31 | Storage edge controller with a metadata computational engine |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112771515A true CN112771515A (zh) | 2021-05-07 |
Family
ID=65520347
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980050454.0A Pending CN112534423A (zh) | 2018-07-31 | 2019-01-31 | 存储边缘处的元数据生成 |
CN201980050665.4A Pending CN112513834A (zh) | 2018-07-31 | 2019-07-29 | 针对多个对象类型的元数据生成 |
CN201980064192.3A Pending CN112771515A (zh) | 2018-07-31 | 2019-07-31 | 具有元数据计算引擎的存储边缘控制器 |
CN201980058977.XA Pending CN112673368A (zh) | 2018-07-31 | 2019-07-31 | 用于在存储边缘处生成描述非结构化数据对象的元数据的系统和方法 |
CN201980057663.8A Pending CN112639768A (zh) | 2018-07-31 | 2019-07-31 | 具有元数据计算控制的存储聚合器控制器 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980050454.0A Pending CN112534423A (zh) | 2018-07-31 | 2019-01-31 | 存储边缘处的元数据生成 |
CN201980050665.4A Pending CN112513834A (zh) | 2018-07-31 | 2019-07-29 | 针对多个对象类型的元数据生成 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980058977.XA Pending CN112673368A (zh) | 2018-07-31 | 2019-07-31 | 用于在存储边缘处生成描述非结构化数据对象的元数据的系统和方法 |
CN201980057663.8A Pending CN112639768A (zh) | 2018-07-31 | 2019-07-31 | 具有元数据计算控制的存储聚合器控制器 |
Country Status (6)
Country | Link |
---|---|
US (7) | US11294965B2 (zh) |
EP (8) | EP3830713A1 (zh) |
JP (8) | JP7326667B2 (zh) |
KR (2) | KR20210039394A (zh) |
CN (5) | CN112534423A (zh) |
WO (4) | WO2020026036A1 (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10652594B2 (en) | 2016-07-07 | 2020-05-12 | Time Warner Cable Enterprises Llc | Apparatus and methods for presentation of key frames in encrypted content |
WO2018033137A1 (zh) * | 2016-08-19 | 2018-02-22 | 北京市商汤科技开发有限公司 | 在视频图像中展示业务对象的方法、装置和电子设备 |
US10958948B2 (en) * | 2017-08-29 | 2021-03-23 | Charter Communications Operating, Llc | Apparatus and methods for latency reduction in digital content switching operations |
US10939142B2 (en) | 2018-02-27 | 2021-03-02 | Charter Communications Operating, Llc | Apparatus and methods for content storage, distribution and security within a content distribution network |
EP3830713A1 (en) | 2018-07-31 | 2021-06-09 | Marvell Asia Pte, Ltd. | Metadata generation at the storage edge |
US11863844B2 (en) * | 2019-03-29 | 2024-01-02 | Intel Corporation | On-demand generation and personalization of video content |
CN111782577B (zh) * | 2019-04-04 | 2023-03-24 | 安徽寒武纪信息科技有限公司 | 数据处理装置及方法以及相关产品 |
US10942881B2 (en) | 2019-06-25 | 2021-03-09 | Micron Technology, Inc. | Parallel operations in aggregated and virtualized solid state drives |
US11573708B2 (en) * | 2019-06-25 | 2023-02-07 | Micron Technology, Inc. | Fail-safe redundancy in aggregated and virtualized solid state drives |
US11768613B2 (en) | 2019-06-25 | 2023-09-26 | Micron Technology, Inc. | Aggregation and virtualization of solid state drives |
US10942846B2 (en) | 2019-06-25 | 2021-03-09 | Micron Technology, Inc. | Aggregated and virtualized solid state drives accessed via multiple logical address spaces |
US11762798B2 (en) | 2019-06-25 | 2023-09-19 | Micron Technology, Inc. | Aggregated and virtualized solid state drives with multiple host interfaces |
US11513923B2 (en) | 2019-06-25 | 2022-11-29 | Micron Technology, Inc. | Dynamic fail-safe redundancy in aggregated and virtualized solid state drives |
US11055249B2 (en) | 2019-06-25 | 2021-07-06 | Micron Technology, Inc. | Access optimization in aggregated and virtualized solid state drives |
KR20210012439A (ko) * | 2019-07-25 | 2021-02-03 | 삼성전자주식회사 | 마스터 지능 소자 및 이의 제어 방법 |
US11388487B2 (en) | 2019-10-14 | 2022-07-12 | Palantir Technologies Inc. | Systems and methods for generating, analyzing, and storing data snippets |
US11861674B1 (en) | 2019-10-18 | 2024-01-02 | Meta Platforms Technologies, Llc | Method, one or more computer-readable non-transitory storage media, and a system for generating comprehensive information for products of interest by assistant systems |
EP4073665A1 (en) | 2019-12-13 | 2022-10-19 | Marvell Asia Pte, Ltd. | Automotive data processing system with efficient generation and exporting of metadata |
CN111240743B (zh) * | 2020-01-03 | 2022-06-03 | 格兰菲智能科技有限公司 | 人工智能集成电路 |
US11216348B2 (en) * | 2020-03-02 | 2022-01-04 | Silicon Motion, Inc. | All flash array server and control method thereof |
US11321340B1 (en) * | 2020-03-31 | 2022-05-03 | Wells Fargo Bank, N.A. | Metadata extraction from big data sources |
US11321341B2 (en) * | 2020-05-15 | 2022-05-03 | National Instruments Corporation | Dynamic metadata extraction workflow for measurement data storage |
US20210357119A1 (en) * | 2020-05-15 | 2021-11-18 | Rey Bruce | Artificial intelligence-based hybrid raid controller device |
CN111782886A (zh) * | 2020-06-28 | 2020-10-16 | 杭州海康威视数字技术股份有限公司 | 元数据管理的方法和装置 |
US11683453B2 (en) * | 2020-08-12 | 2023-06-20 | Nvidia Corporation | Overlaying metadata on video streams on demand for intelligent video analysis |
KR20220034542A (ko) | 2020-09-11 | 2022-03-18 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
KR20220056986A (ko) | 2020-10-29 | 2022-05-09 | 삼성전자주식회사 | 메모리 확장기, 이종 컴퓨팅 장치, 및 이종 컴퓨팅 장치의 동작 방법 |
US20220365718A1 (en) * | 2021-05-13 | 2022-11-17 | Micron Technology, Inc. | Workload profile data and performance-based memory management |
US11483630B1 (en) * | 2021-08-17 | 2022-10-25 | Rovi Guides, Inc. | Systems and methods to generate metadata for content |
US11829619B2 (en) | 2021-11-09 | 2023-11-28 | Western Digital Technologies, Inc. | Resource usage arbitration in non-volatile memory (NVM) data storage devices with artificial intelligence accelerators |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1841379A (zh) * | 2005-03-28 | 2006-10-04 | 微软公司 | 将文件系统模型映射到数据库对象 |
CN104575595A (zh) * | 2014-12-12 | 2015-04-29 | 杭州华澜微科技有限公司 | 非易失性随机存取的存储装置 |
US20170169358A1 (en) * | 2015-12-09 | 2017-06-15 | Samsung Electronics Co., Ltd. | In-storage computing apparatus and method for decentralized machine learning |
KR20170095607A (ko) * | 2016-02-15 | 2017-08-23 | 주식회사 맴레이 | 컴퓨팅 디바이스, 코프로세서와 비휘발성 메모리 사이의 데이터 이동 방법 및 이를 포함하는 프로그램 |
CN107797935A (zh) * | 2016-09-06 | 2018-03-13 | 三星电子株式会社 | 存储装置和用于非易失性存储器装置的访问方法 |
CN107851061A (zh) * | 2015-05-19 | 2018-03-27 | 净睿存储股份有限公司 | 远程存储器中硬件辅助的事务提交 |
US20180189635A1 (en) * | 2016-12-30 | 2018-07-05 | Samsung Electronics Co., Ltd. | Method and apparatus for supporting machine learning algorithms and data pattern matching in ethernet ssd |
Family Cites Families (120)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US1012909A (en) | 1909-10-28 | 1911-12-26 | Safety Power Transmission Company | Shaft-protector. |
US6012068A (en) | 1997-06-30 | 2000-01-04 | International Business Machines Corporation | Media manager for access to multiple media types |
US6215749B1 (en) * | 1998-10-26 | 2001-04-10 | Samsung Electronics Co., Ltd. | Signal distortion minimization apparatus in high speed optical disc reproducing device |
US7127120B2 (en) | 2002-11-01 | 2006-10-24 | Microsoft Corporation | Systems and methods for automatically editing a video |
US7509321B2 (en) * | 2003-01-21 | 2009-03-24 | Microsoft Corporation | Selection bins for browsing, annotating, sorting, clustering, and filtering media objects |
US8200775B2 (en) * | 2005-02-01 | 2012-06-12 | Newsilike Media Group, Inc | Enhanced syndication |
US7707320B2 (en) | 2003-09-05 | 2010-04-27 | Qualcomm Incorporated | Communication buffer manager and method therefor |
US7707590B2 (en) | 2004-09-01 | 2010-04-27 | Microsoft Corporation | Computer system and method for providing robust file system information for non-native file system devices |
US7788592B2 (en) | 2005-01-12 | 2010-08-31 | Microsoft Corporation | Architecture and engine for time line based visualization of data |
US10210159B2 (en) | 2005-04-21 | 2019-02-19 | Oath Inc. | Media object metadata association and ranking |
US20060274949A1 (en) | 2005-06-02 | 2006-12-07 | Eastman Kodak Company | Using photographer identity to classify images |
US20070038647A1 (en) | 2005-08-04 | 2007-02-15 | Microsoft Corporation | Management of media sources in memory constrained devices |
US20070078896A1 (en) | 2005-09-30 | 2007-04-05 | Yahoo! Inc. | Identifying portions within media files with location tags |
US7801910B2 (en) | 2005-11-09 | 2010-09-21 | Ramp Holdings, Inc. | Method and apparatus for timed tagging of media content |
US8930496B2 (en) | 2005-12-19 | 2015-01-06 | Commvault Systems, Inc. | Systems and methods of unified reconstruction in storage systems |
EP1963958B1 (en) | 2005-12-21 | 2019-04-24 | Digimarc Corporation | Rules driven pan id metadata routing system and network |
US7801847B2 (en) * | 2006-03-27 | 2010-09-21 | Microsoft Corporation | Media file conversion using plug-ins |
CN101449538A (zh) * | 2006-04-04 | 2009-06-03 | 约翰逊控制技术公司 | 媒体文件的文本-语法改进 |
US20070239780A1 (en) * | 2006-04-07 | 2007-10-11 | Microsoft Corporation | Simultaneous capture and analysis of media content |
US7730047B2 (en) * | 2006-04-07 | 2010-06-01 | Microsoft Corporation | Analysis of media content via extensible object |
US8589973B2 (en) * | 2006-09-14 | 2013-11-19 | At&T Intellectual Property I, L.P. | Peer to peer media distribution system and method |
EP2177010B1 (en) * | 2006-12-13 | 2015-10-28 | Quickplay Media Inc. | Mobile media platform |
JP2008192102A (ja) | 2007-02-08 | 2008-08-21 | Sony Computer Entertainment Inc | メタデータ生成装置およびメタデータ生成方法 |
JP4891802B2 (ja) | 2007-02-20 | 2012-03-07 | 日本電信電話株式会社 | コンテンツ検索・推薦方法、コンテンツ検索・推薦装置およびコンテンツ検索・推薦プログラム |
US8166076B2 (en) * | 2007-03-08 | 2012-04-24 | Microsoft Corporation | Digital media metadata management |
US7929766B2 (en) * | 2007-06-08 | 2011-04-19 | Apple Inc. | Identifiers for digital media |
BRPI0811833B1 (pt) * | 2007-07-02 | 2020-12-29 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V | aparelho e método para armazenamento e leitura de um arquivo tendo um container de dados de mídia e um container de metadados |
US20090077561A1 (en) * | 2007-07-05 | 2009-03-19 | International Business Machines Corporation | Pipeline Processing Method and Apparatus in a Multi-processor Environment |
KR101432994B1 (ko) * | 2007-08-13 | 2014-08-22 | 삼성전자주식회사 | 미디어 객체 기반 메타데이터의 생성 방법, 재생 방법 및그 장치 |
US9824006B2 (en) | 2007-08-13 | 2017-11-21 | Digital Kiva, Inc. | Apparatus and system for object-based storage solid-state device |
KR101268987B1 (ko) * | 2007-09-11 | 2013-05-29 | 삼성전자주식회사 | 메타데이터를 자동적으로 생성/갱신하는 멀티미디어 데이터기록 방법 및 장치 |
US20090132462A1 (en) | 2007-11-19 | 2009-05-21 | Sony Corporation | Distributed metadata extraction |
US9465892B2 (en) | 2007-12-03 | 2016-10-11 | Yahoo! Inc. | Associating metadata with media objects using time |
US7996431B2 (en) | 2008-02-25 | 2011-08-09 | International Business Machines Corporation | Systems, methods and computer program products for generating metadata and visualizing media content |
US9966112B1 (en) * | 2013-04-18 | 2018-05-08 | Gracenote, Inc. | Systems and methods to associate multimedia tags with user comments and generate user modifiable snippets around a tag time for efficient storage and sharing of tagged items |
US8452855B2 (en) | 2008-06-27 | 2013-05-28 | Yahoo! Inc. | System and method for presentation of media related to a context |
JP2010039966A (ja) | 2008-08-08 | 2010-02-18 | Hitachi Ltd | データ管理方式 |
US8867779B2 (en) | 2008-08-28 | 2014-10-21 | Microsoft Corporation | Image tagging user interface |
CN101754056B (zh) * | 2008-12-17 | 2013-01-02 | 中国科学院自动化研究所 | 支持海量数据自动处理的数字内容编目管理系统及方法 |
US20100179874A1 (en) * | 2009-01-13 | 2010-07-15 | Yahoo! Inc. | Media object metadata engine configured to determine relationships between persons and brands |
US8831276B2 (en) * | 2009-01-13 | 2014-09-09 | Yahoo! Inc. | Media object metadata engine configured to determine relationships between persons |
CN101605210B (zh) * | 2009-05-31 | 2014-01-08 | 上海东方传媒集团有限公司 | 财经数据制播综合系统 |
US8938492B1 (en) | 2009-09-11 | 2015-01-20 | Symantec Corporation | Enabling efficient review of media objects associated with a client device |
JP5595701B2 (ja) | 2009-09-16 | 2014-09-24 | 株式会社日立製作所 | ファイル管理方法及びストレージシステム |
US20120278560A1 (en) | 2009-10-04 | 2012-11-01 | Infinidat Ltd. | Pre-fetching in a storage system that maintains a mapping tree |
US8589871B2 (en) * | 2009-12-18 | 2013-11-19 | Avid Technology, Inc. | Metadata plug-in application programming interface |
WO2011085562A1 (en) | 2010-01-18 | 2011-07-21 | Hewlett-Packard Development Company, L.P. | System and method for automatically extracting metadata from unstructured electronic documents |
US8611678B2 (en) | 2010-03-25 | 2013-12-17 | Apple Inc. | Grouping digital media items based on shared features |
US20110289084A1 (en) * | 2010-05-18 | 2011-11-24 | Rovi Technologies Corporation | Interface for relating clusters of data objects |
US8763068B2 (en) * | 2010-12-09 | 2014-06-24 | Microsoft Corporation | Generation and provision of media metadata |
US20130097172A1 (en) * | 2011-04-04 | 2013-04-18 | Zachary McIntosh | Method and apparatus for indexing and retrieving multimedia with objective metadata |
JP2012221322A (ja) | 2011-04-11 | 2012-11-12 | Toshiba Corp | オーサリング支援装置、オーサリング支援方法およびプログラム |
US9380356B2 (en) | 2011-04-12 | 2016-06-28 | The Nielsen Company (Us), Llc | Methods and apparatus to generate a tag for media content |
CN102439574B (zh) | 2011-04-18 | 2015-01-28 | 华为技术有限公司 | 系统缓存中数据替换方法及多核通信处理器 |
US8917971B2 (en) * | 2011-12-30 | 2014-12-23 | United Video Properties, Inc. | Methods and systems for providing relevant supplemental content to a user device |
US8990263B2 (en) | 2012-03-15 | 2015-03-24 | International Business Machines Corporation | Policy-based management of storage functions in data replication environments |
US20130289991A1 (en) | 2012-04-30 | 2013-10-31 | International Business Machines Corporation | Application of Voice Tags in a Social Media Context |
US20140074855A1 (en) | 2012-09-13 | 2014-03-13 | Verance Corporation | Multimedia content tags |
US9678961B2 (en) * | 2012-09-13 | 2017-06-13 | Canon Europa N.V. | Method and device for associating metadata to media objects |
US8775372B2 (en) | 2012-11-01 | 2014-07-08 | Red Hat Israel, Ltd. | Retrieving historical object-related configuration data |
EP4224324A3 (en) | 2013-02-27 | 2023-09-27 | Hitachi Vantara LLC | Rain-based archival system with self-describing objects |
WO2014133497A1 (en) | 2013-02-27 | 2014-09-04 | Hitachi Data Systems Corporation | Decoupled content and metadata in a distributed object storage ecosystem |
US9405771B2 (en) | 2013-03-14 | 2016-08-02 | Microsoft Technology Licensing, Llc | Associating metadata with images in a personal image collection |
WO2014170953A1 (ja) | 2013-04-16 | 2014-10-23 | 株式会社日立製作所 | 計算機、計算機システム及びキャッシュ制御方法 |
JP6224356B2 (ja) | 2013-06-11 | 2017-11-01 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置 |
EP3014888A4 (en) | 2013-06-28 | 2017-02-22 | INTEL Corporation | Live crowdsourced media streaming |
US9876828B1 (en) | 2013-07-25 | 2018-01-23 | Overlay Studio, Inc. | Collaborative design |
KR20150029402A (ko) | 2013-09-10 | 2015-03-18 | 에스케이하이닉스 주식회사 | 데이터 저장 시스템 및 그것의 동작 방법 |
WO2015054361A1 (en) | 2013-10-08 | 2015-04-16 | The Echo Nest Corporation | Systems, methods, and computer program products for providing contextually-aware video recommendation |
CN117215971A (zh) | 2013-10-21 | 2023-12-12 | Flc环球有限公司 | 最终级高速缓存系统和对应的方法 |
US9390513B2 (en) | 2013-10-29 | 2016-07-12 | Hua Zhong University Of Science Technology | Simultaneous metadata extraction of moving objects |
US9170746B2 (en) * | 2014-01-07 | 2015-10-27 | Netapp, Inc. | Clustered raid assimilation management |
EP3138099A1 (en) | 2014-05-02 | 2017-03-08 | Marvell World Trade Ltd. | Caching systems and methods for hard disk drives and hybrid drives |
US20180107660A1 (en) * | 2014-06-27 | 2018-04-19 | Amazon Technologies, Inc. | System, method and apparatus for organizing photographs stored on a mobile computing device |
US9749311B2 (en) | 2014-09-24 | 2017-08-29 | Oracle International Corporation | Policy based compliance management and remediation of devices in an enterprise system |
GB2532075A (en) | 2014-11-10 | 2016-05-11 | Lego As | System and method for toy recognition and detection based on convolutional neural networks |
US9916237B2 (en) | 2014-12-12 | 2018-03-13 | Sandisk Technologies Llc | Model based configuration parameter management |
JP5953384B1 (ja) | 2015-02-04 | 2016-07-20 | エヌ・ティ・ティ・コムウェア株式会社 | 学習装置、学習方法、およびプログラム |
US10198498B2 (en) | 2015-05-13 | 2019-02-05 | Rovi Guides, Inc. | Methods and systems for updating database tags for media content |
US9990159B2 (en) | 2015-06-26 | 2018-06-05 | Xitore, Inc. | Apparatus, system, and method of look-ahead address scheduling and autonomous broadcasting operation to non-volatile storage memory |
US20170083519A1 (en) * | 2015-09-22 | 2017-03-23 | Riffsy, Inc. | Platform and dynamic interface for procuring, organizing, and retrieving expressive media content |
CA2997562A1 (en) | 2015-09-30 | 2017-04-06 | Tivo Solutions Inc. | Synchronizing media content tag data |
US10528613B2 (en) | 2015-11-23 | 2020-01-07 | Advanced Micro Devices, Inc. | Method and apparatus for performing a parallel search operation |
US9881236B2 (en) | 2015-12-28 | 2018-01-30 | Google Llc | Organizing images associated with a user |
US20170193003A1 (en) | 2015-12-30 | 2017-07-06 | Commvault Systems, Inc. | Redundant and robust distributed deduplication data storage system |
US10902043B2 (en) | 2016-01-03 | 2021-01-26 | Gracenote, Inc. | Responding to remote media classification queries using classifier models and context parameters |
US10089401B2 (en) | 2016-01-12 | 2018-10-02 | Fox Broadcasting Company | Method and pluggable system for trend-based allocation of media assets between global and local storage |
KR102466412B1 (ko) | 2016-01-14 | 2022-11-15 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US10180788B2 (en) * | 2016-04-06 | 2019-01-15 | Sandisk Technologies Inc. | Data storage device having internal tagging capabilities |
US10346700B1 (en) | 2016-05-03 | 2019-07-09 | Cynny Spa | Object recognition in an adaptive resource management system |
US10404798B2 (en) | 2016-05-16 | 2019-09-03 | Carbonite, Inc. | Systems and methods for third-party policy-based file distribution in an aggregation of cloud storage services |
US10509407B2 (en) | 2016-07-01 | 2019-12-17 | Samsung Electronics Co., Ltd. | Apparatus and method for a vehicle platform |
KR20180011376A (ko) | 2016-07-21 | 2018-02-01 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10403044B2 (en) * | 2016-07-26 | 2019-09-03 | tagSpace Pty Ltd | Telelocation: location sharing for users in augmented and virtual reality environments |
JP2019530061A (ja) | 2016-08-10 | 2019-10-17 | ジーボ インコーポレーテッドXevo Inc. | 推測注意モデルを用いて収集され格納されたメタデータを通して情報を提供する方法及び装置 |
US10701377B2 (en) * | 2016-09-14 | 2020-06-30 | Amazon Technologies, Inc. | Media storage |
US10853233B2 (en) * | 2016-10-18 | 2020-12-01 | Toshiba Memory Corporation | Reconstruction of address mapping in a host of a storage system |
US10535355B2 (en) * | 2016-11-18 | 2020-01-14 | Microsoft Technology Licensing, Llc | Frame coding for spatial audio data |
US10162563B2 (en) | 2016-12-02 | 2018-12-25 | International Business Machines Corporation | Asynchronous local and remote generation of consistent point-in-time snap copies |
EP3549063A4 (en) | 2016-12-05 | 2020-06-24 | Avigilon Corporation | APPEARANCE SEARCH SYSTEM AND METHOD |
US20180173619A1 (en) * | 2016-12-21 | 2018-06-21 | Sandisk Technologies Llc | System and Method for Distributed Logical to Physical Address Mapping |
US10970605B2 (en) | 2017-01-03 | 2021-04-06 | Samsung Electronics Co., Ltd. | Electronic apparatus and method of operating the same |
US10956346B1 (en) | 2017-01-13 | 2021-03-23 | Lightbits Labs Ltd. | Storage system having an in-line hardware accelerator |
US11221939B2 (en) | 2017-03-31 | 2022-01-11 | Commvault Systems, Inc. | Managing data from internet of things devices in a vehicle |
US10223272B2 (en) | 2017-04-25 | 2019-03-05 | Seagate Technology Llc | Latency sensitive metadata object persistence operation for storage device |
US10860508B2 (en) * | 2017-05-25 | 2020-12-08 | Western Digital Technologies, Inc. | Offloaded disaggregated storage architecture |
KR102444606B1 (ko) | 2017-08-28 | 2022-09-20 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
CN107622281B (zh) * | 2017-09-20 | 2021-02-05 | Oppo广东移动通信有限公司 | 图像分类方法、装置、存储介质及移动终端 |
US10817565B2 (en) * | 2017-11-06 | 2020-10-27 | Disney Enterprises, Inc. | Automation of media content tag selection |
US10884996B1 (en) | 2018-02-27 | 2021-01-05 | NTT DATA Services, LLC | Systems and methods for optimizing automatic schema-based metadata generation |
KR20190106005A (ko) | 2018-03-07 | 2019-09-18 | 에스케이하이닉스 주식회사 | 메모리 시스템, 그것의 동작 방법 및 전자 장치 |
JP7119630B2 (ja) | 2018-06-20 | 2022-08-17 | 日本電信電話株式会社 | 情報処理装置、情報交換システム、情報処理方法および情報処理プログラム |
CN110766164A (zh) | 2018-07-10 | 2020-02-07 | 第四范式(北京)技术有限公司 | 用于执行机器学习过程的方法和系统 |
US20200042888A1 (en) | 2018-07-31 | 2020-02-06 | Gyrfalcon Technology Inc. | Self-sufficient artificial intelligence edge devices |
EP3830713A1 (en) | 2018-07-31 | 2021-06-09 | Marvell Asia Pte, Ltd. | Metadata generation at the storage edge |
US20210279603A1 (en) | 2018-12-13 | 2021-09-09 | SparkCognition, Inc. | Security systems and methods |
FR3094511B1 (fr) | 2019-03-25 | 2021-04-09 | Alstom Transp Tech | Procédé d’acquisition de données capturées par un module de capture embarqué dans un engin mobile suivant une trajectoire prédéterminée, programme d’ordinateur et dispositif correspondants |
US20220126864A1 (en) | 2019-03-29 | 2022-04-28 | Intel Corporation | Autonomous vehicle system |
US20200402328A1 (en) | 2019-06-20 | 2020-12-24 | Volvo Car Corporation | Closed loop parallel batch data logging in a vehicle |
CN111125442B (zh) | 2019-12-11 | 2022-11-15 | 苏州智加科技有限公司 | 数据标注方法及装置 |
-
2019
- 2019-01-31 EP EP19707121.0A patent/EP3830713A1/en active Pending
- 2019-01-31 WO PCT/IB2019/050776 patent/WO2020026036A1/en unknown
- 2019-01-31 US US16/262,971 patent/US11294965B2/en active Active
- 2019-01-31 CN CN201980050454.0A patent/CN112534423A/zh active Pending
- 2019-01-31 US US16/264,473 patent/US11080337B2/en active Active
- 2019-01-31 JP JP2021503769A patent/JP7326667B2/ja active Active
- 2019-01-31 US US16/263,387 patent/US11068544B2/en active Active
- 2019-01-31 US US16/262,975 patent/US11036807B2/en active Active
- 2019-01-31 US US16/264,248 patent/US11748418B2/en active Active
- 2019-01-31 KR KR1020217004754A patent/KR20210039394A/ko not_active Application Discontinuation
- 2019-07-29 EP EP23167414.4A patent/EP4266194A1/en active Pending
- 2019-07-29 JP JP2021503760A patent/JP7419621B2/ja active Active
- 2019-07-29 CN CN201980050665.4A patent/CN112513834A/zh active Pending
- 2019-07-29 EP EP19762480.2A patent/EP3830717B1/en active Active
- 2019-07-29 WO PCT/IB2019/056442 patent/WO2020026112A1/en unknown
- 2019-07-31 EP EP19756453.7A patent/EP3830714B1/en active Active
- 2019-07-31 EP EP23174241.2A patent/EP4220437A1/en active Pending
- 2019-07-31 EP EP19758853.6A patent/EP3830715B1/en active Active
- 2019-07-31 WO PCT/US2019/044551 patent/WO2020028594A1/en unknown
- 2019-07-31 CN CN201980064192.3A patent/CN112771515A/zh active Pending
- 2019-07-31 JP JP2021504432A patent/JP2021533447A/ja active Pending
- 2019-07-31 EP EP19759088.8A patent/EP3830716B1/en active Active
- 2019-07-31 WO PCT/US2019/044558 patent/WO2020028597A1/en unknown
- 2019-07-31 KR KR1020217004932A patent/KR20210037684A/ko active Search and Examination
- 2019-07-31 JP JP2021503799A patent/JP7351057B2/ja active Active
- 2019-07-31 CN CN201980058977.XA patent/CN112673368A/zh active Pending
- 2019-07-31 JP JP2021504383A patent/JP2021533446A/ja active Pending
- 2019-07-31 CN CN201980057663.8A patent/CN112639768A/zh active Pending
- 2019-07-31 EP EP23157721.4A patent/EP4206951A1/en active Pending
-
2021
- 2021-05-02 US US17/246,650 patent/US11727064B2/en active Active
- 2021-07-15 US US17/377,236 patent/US11734363B2/en active Active
-
2023
- 2023-09-29 JP JP2023169249A patent/JP2023171874A/ja not_active Abandoned
- 2023-10-12 JP JP2023176582A patent/JP2023179680A/ja active Pending
-
2024
- 2024-01-05 JP JP2024000847A patent/JP2024038276A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1841379A (zh) * | 2005-03-28 | 2006-10-04 | 微软公司 | 将文件系统模型映射到数据库对象 |
CN104575595A (zh) * | 2014-12-12 | 2015-04-29 | 杭州华澜微科技有限公司 | 非易失性随机存取的存储装置 |
CN107851061A (zh) * | 2015-05-19 | 2018-03-27 | 净睿存储股份有限公司 | 远程存储器中硬件辅助的事务提交 |
US20170169358A1 (en) * | 2015-12-09 | 2017-06-15 | Samsung Electronics Co., Ltd. | In-storage computing apparatus and method for decentralized machine learning |
KR20170095607A (ko) * | 2016-02-15 | 2017-08-23 | 주식회사 맴레이 | 컴퓨팅 디바이스, 코프로세서와 비휘발성 메모리 사이의 데이터 이동 방법 및 이를 포함하는 프로그램 |
CN107797935A (zh) * | 2016-09-06 | 2018-03-13 | 三星电子株式会社 | 存储装置和用于非易失性存储器装置的访问方法 |
US20180189635A1 (en) * | 2016-12-30 | 2018-07-05 | Samsung Electronics Co., Ltd. | Method and apparatus for supporting machine learning algorithms and data pattern matching in ethernet ssd |
Non-Patent Citations (1)
Title |
---|
梅挺: "计算机组装维护与维修教程", 30 November 2009, 中国铁道出版社, pages: 46 - 47 * |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11734363B2 (en) | Storage edge controller with a metadata computational engine | |
US20210142146A1 (en) | Intelligent image sensor stack | |
US20210127090A1 (en) | Distributed neural network processing on an intelligent image sensor stack | |
WO2020052480A1 (zh) | 无人驾驶行为决策及模型训练 | |
US11967150B2 (en) | Parallel video processing systems | |
US20190094941A1 (en) | Power state control of a mobile device | |
US11562237B2 (en) | Processing of overwhelming stimuli in vehicle data recorders |
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 |