Methods, devices, and computer program products for processing data

US11029866B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11029866-B2
Application numberUS-201916415812-A
CountryUS
Kind codeB2
Filing dateMay 17, 2019
Priority dateOct 31, 2018
Publication dateJun 8, 2021
Grant dateJun 8, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method comprises: determining whether an event triggering processing of data at a storage device occurs, the data being predetermined to be processed at a computing device associated with the storage device; in response to determining that the event occurs, determining available resources of the storage device; and in response to an amount of the available resources exceeding a first predetermined threshold, causing the storage device to process the data and provide the processed data to the computing device. As such, operations to be performed to data may be adaptively allocated, deployed and adjusted on the storage device and the computing device, so that computing capabilities of both the storage device and the computing device may be fully leveraged, and further the computing efficiency of the entire data processing system may be improved.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of processing data, comprising: determining, by a storage device, whether an event triggering processing of data at the storage device occurs, the data being predetermined to be processed at a computing device associated with the storage device; in response to determining that the event occurs, determining, by the storage device, available resources of the storage device; in response to an amount of the available resources of the storage device exceeding a first predetermined threshold, causing the storage device to process the data rather than the computing device processing the data and provide the processed data from the storage device to the computing device; determining, by the storage device, updated available resources of the storage device, the available resources being updated due to processing the data; and in response to an amount of the updated available resources being below a second predetermined threshold, performing, by the storage device, at least one of: pausing processing of the data; and reducing operations of processing the data. 2. The method according to claim 1 , wherein determining whether the event triggering processing of data at the storage device occurs comprises at least one of: in response to determining that the data is detected to be to-be-processed data stored in the storage device, determining that the event occurs; and in response to determining that a request for processing the data is received from the computing device, determining that the event occurs. 3. The method according to claim 1 , wherein determining the available resources of the storage device comprises at least one of: determining available computing resources of the storage device; and determining available storage space of the storage device. 4. The method according to claim 1 , wherein processing the data comprises: performing, on the data, at least one of: shuffling, decoding, re-sizing, and data augmentation. 5. The method according to claim 1 , further comprising: notifying the computing device that the storage device processes the data. 6. The method according to claim 1 , wherein reducing the operation of processing the data comprises: notifying the computing device of the reduced operations. 7. The method according to claim 1 , wherein processing the data comprises: determining a negotiation result between the storage device and the computing device regarding processing the data, the negotiation result indicating which operations among operations of processing the data will be performed by the storage device; and processing the data based on the negotiation result. 8. A computer program product being tangibly stored on a non-transient computer readable medium and comprising machine executable instructions which, when being executed, causing a machine to perform steps of the method of claim 1 . 9. A device for processing data, comprising at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions to be executed by the at least one processing unit, the instructions, when being executed by the at least one processing unit, causing the device to perform steps of the method of claim 1 . 10. A method of processing data, the method comprising: sending, from a computing device to a storage device associated with the computing device, a request for processing data at the storage device, the data being predetermined to be processed at the computing device; receiving, at the computing device, the processed data from the storage device, the data being processed by the storage device rather than the computing device processing the data when available resources of the storage device exceed a first predetermined threshold; responsive to an amount of updated available resources of the storage device being below a second predetermined threshold, receiving, at the computing device, notification of a reduction in operations of processing the data; and performing, by the computing device, at least a portion of the operations of processing the data. 11. The method according to claim 10 , wherein sending the request comprises: determining available resources of the computing device; and in response to an amount of the available resources of the computing device being below a third predetermined threshold, sending the request to the storage device. 12. The method according to claim 11 , wherein determining the available resources of the computing device comprises at least one of: determining available computing resources of the computing device; and determining available storage space of the computing device. 13. The method according to claim 10 , further comprising: determining a negotiation result between the computing device and the storage device regarding processing the data, the negotiation result indicating which operations among operations of processing the data will be performed by the storage device. 14. The method according to claim 10 , wherein processing the data comprises: performing, on the data, at least one of: shuffling, decoding, re-sizing, and data augmentation. 15. A computer program product being tangibly stored on a non-transient computer readable medium and comprising machine executable instructions which, when being executed, causing a machine to perform steps of the method of claim 10 . 16. A device for processing data, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions to be executed by the at least one processing unit, the instructions, when being executed by the at least one processing unit, causing the device to perform acts comprising: sending, from a computing device to a storage device associated with the computing device, a request for processing data at the storage device, the data being predetermined to be processed at the computing device; receiving, at the computing device, the processed data from the storage device, the data being processed by the storage device rather than the computing device processing the data when available resources of the storage device exceed a first predetermined threshold; responsive to an amount of updated available resources of the storage device being below a second predetermined threshold, receiving, at the computing device, notification of a reduction in operations of processing the data; and performing, by the computing device, at least a portion of the operations of processing the data. 17. The device according to claim 16 , wherein sending the request comprises: determining available resources of the computing device; and in response to an amount of the available resources of the computing device being below a third predetermined threshold, sending the request to the storage device. 18. The device according to claim 17 , wherein determining the available resources of the computing device comprises at least one of: determining available computing resources of the computing device; and determining available storage space of the computing device. 19. The device according to claim 16 , the acts further comprising: determining a negotiation result between the computing device and the storage device regarding processing the data, the negotiation result indicating which operations among operations of processing the data will be performed by the storage device.

Assignees

Inventors

Classifications

  • G06T1/20Primary

    Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • Monitoring storage devices or systems · CPC title

  • Machine learning · CPC title

  • Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11029866B2 cover?
A method comprises: determining whether an event triggering processing of data at a storage device occurs, the data being predetermined to be processed at a computing device associated with the storage device; in response to determining that the event occurs, determining available resources of the storage device; and in response to an amount of the available resources exceeding a first predeter…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06T1/20. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 08 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).