Technologies for flexibly compressing and decompressing data

US10191684B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10191684-B2
Application numberUS-201715719735-A
CountryUS
Kind codeB2
Filing dateSep 29, 2017
Priority dateNov 29, 2016
Publication dateJan 29, 2019
Grant dateJan 29, 2019

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.

Technologies for flexibly compressing data include a computing device having an accelerator complex that is to receive a compression job request and schedule the compression job request for one or more hardware compression resources of the accelerator complex. The accelerator complex is further to perform the compression job request with the one or more hardware compression resources in response to scheduling the compression job request and to communicate uncompressed data and compressed data with an I/O subsystem of the computing device in response to performing the compression job request. Other embodiments are described and claimed.

First claim

Opening claim text (preview).

The invention claimed is: 1. A computing device for flexibly compressing data, the computing device comprising: one or more processors; and an accelerator complex including digital logic resources to: receive a compression job request from the one or more processors; schedule the compression job request for one or more hardware compression resources of the accelerator complex; perform the compression job request with the one or more hardware compression resources in response to scheduling of the compression job request; and communicate uncompressed data and compressed data with an I/O subsystem of the computing device in response to performance of the compression job request. 2. The computing device of claim 1 , wherein: the compression job request comprises a compress request to compress the uncompressed data, the one or more hardware compression resources comprises a compress/decompress/verify engine, to perform the compression job request comprises to compress the uncompressed data to generate the compressed data with the compress/decompress/verify engine, and to communicate the uncompressed data and the compressed data comprises to input the uncompressed data and to output the compressed data. 3. The computing device of claim 2 , wherein to schedule the compression job request comprises to (i) determine whether a compression level of the compression job request is flexible, and (ii) adjust, in response to a determination that the compression level of the compression job request is flexible, the compression level based on I/O bandwidth availability. 4. The computing device of claim 3 , wherein to determine whether the compression level of the compression job request is flexible comprises to determine whether a requester specified that a compression level of the compression job request is flexible. 5. The computing device of claim 3 , wherein to schedule the compression job request further comprises to adjust, in response to a determination that the compression level of the compression job request is flexible, the compression level based on an estimated time to compute the compression job request. 6. The computing device of claim 2 , wherein to schedule the compression job request comprises to (i) determine whether one or more compression levels of compression job requests pending in a queue of the I/O subsystem are flexible, and (ii) adjust, in response to a determination that the one or more compression levels of the compression job requests are flexible, the one or more compression levels based on I/O bandwidth availability and on an estimated time to compute the compression job requests pending in the queue. 7. The computing device of claim 1 , wherein: the compression job request comprises a compress-verify request to compress the uncompressed data to generate compressed data and verify the compressed data, the one or more hardware compression resources comprises a compress/decompress/verify engine, to perform the compression job request comprises to (i) compress the uncompressed data to generate the compressed data and (ii) verify the compressed data against the uncompressed data, and to communicate the uncompressed data and the compressed data comprises to input the uncompressed data and to output the compressed data. 8. The computing device of claim 7 , wherein to compress the uncompressed data comprises to compress the uncompressed data to generate the compressed data with the compress/decompress/verify engine; and to verify the compressed data comprises to verify the compressed data with the compress/decompress/verify engine. 9. The computing device of claim 8 , wherein to verify the compressed data with the compress/decompress/verify engine comprises to (i) disable a compression function of the compress/decompress/verify engine and (ii) decompress the compressed data with the compress/decompress/verify engine. 10. The computing device of claim 1 , wherein: the compression job request comprises a decompress request to decompress the compressed data, to perform the compression job request comprises to decompress the compressed data to generate the uncompressed data, and to communicate the uncompressed data and the compressed data comprises to input the compressed data and to output the uncompressed data. 11. The computing device of claim 10 , wherein the one or more hardware compression resources comprises a decompress engine, and to decompress the compressed data comprises to decompress the compressed data with the decompress engine. 12. The computing device of claim 10 , wherein the one or more hardware compression resources comprises a compress/decompress/verify engine, and to decompress the compressed data comprises to decompress the compressed data with the compress/decompress/verify engine and disable a compression function of the compress/decompress/verify engine. 13. One or more non-transitory, machine-readable storage media comprising a plurality of instructions stored thereon that, when executed by a compute device cause the compute device to: receive a compression job request; schedule the compression job request for one or more hardware compression resources of an accelerator complex; perform the compression job request with the one or more hardware compression resources in response to scheduling of the compression job request; and communicate uncompressed data and compressed data with an I/O subsystem of the computing device in response to performance of the compression job request. 14. The one or more non-transitory, machine-readable storage media of claim 13 , wherein: the compression job request comprises a compress request to compress the uncompressed data, the one or more hardware compression resources comprises a compress/decompress/verify engine, to perform the compression job request comprises to compress the uncompressed data to generate the compressed data with the compress/decompress/verify engine, and to communicate the uncompressed data and the compressed data comprises to input the uncompressed data and to output the compressed data. 15. The one or more non-transitory, machine-readable storage media of claim 14 , wherein to schedule the compression job request comprises to (i) determine whether a compression level of the compression job request is flexible, and (ii) adjust, in response to a determination that the compression level of the compression job request is flexible, the compression level based on I/O bandwidth availability. 16. The one or more non-transitory, machine-readable storage media of claim 13 , wherein: the compression job request comprises a compress-verify request to compress the uncompressed data to generate compressed data and verify the compressed data, the one or more hardware compression resources comprises a compress/decompress/verify engine, to perform the compression job request comprises to (i) compress the uncompressed data to generate the compressed data and (ii) verify the compressed data against the uncompressed data, and to communicate the uncompressed data and the compressed data comprises to input the uncompressed data and to output the compressed data. 17. The one or more non-transitory, machine-readable storage media of claim 13 , wherein: the compression job request comprises a decompress request to decompress the compressed data, to perform the compression job request comprises to decompress the compressed data to generate the uncompressed data, and to communicate the uncompressed data and the compressed data comprises to input the compressed data and to output

Assignees

Inventors

Classifications

  • Architectures of resource allocation · CPC title

  • Optimisation thereof · CPC title

  • where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50) · CPC title

  • the data filtering being achieved by reporting only the changes of the monitored data · CPC title

  • Updates (security arrangements therefor G06F21/57) · 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 US10191684B2 cover?
Technologies for flexibly compressing data include a computing device having an accelerator complex that is to receive a compression job request and schedule the compression job request for one or more hardware compression resources of the accelerator complex. The accelerator complex is further to perform the compression job request with the one or more hardware compression resources in respons…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/5005. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 29 2019 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).