Multi-mode compression acceleration

US10587284B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10587284-B2
Application numberUS-201815948678-A
CountryUS
Kind codeB2
Filing dateApr 9, 2018
Priority dateApr 9, 2018
Publication dateMar 10, 2020
Grant dateMar 10, 2020

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 computer system includes a plurality of hardware processors, and a hardware accelerator. A first processor among the plurality of processor runs an application that issues a data compression request to compress or decompress a data stream. The hardware accelerator selectively operates in different modes to compresses or decompresses the data stream. Based on a selected mode, the hardware accelerator can utilize a different number of processors among the plurality of hardware to compress or decompress the data stream.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer system comprising: a plurality of hardware processors, wherein a first processor among the plurality of processor configured to run an application that issues a data compression request to compress or decompress a data stream; and a hardware accelerator configured to compress or decompress the data stream, and configured to monitor a current workload of each hardware processor among the plurality of processors, wherein the computer system is configured to selectively operate in a plurality of different compression modes, and wherein a different number of processors among the plurality of hardware processors are utilized to compress or decompress the data stream based on a selected compression mode among the plurality of different compression modes, and wherein the hardware accelerator invokes the selected compression mode based on the current workload of each hardware processor. 2. The computer system of claim 1 , wherein at least one remaining processor among the plurality of processors is utilized to compress or decompress the data stream in response to invoking a first compression mode among the plurality of compression modes. 3. The computer system of claim 2 , wherein the at least one remaining processor is in signal communication with a second hardware accelerator, and the at least one remaining processor and second hardware accelerator are located remotely from the first processor and the hardware accelerator. 4. The computer system of claim 3 , wherein the at least one remaining processor includes a plurality of remaining processors that operate in parallel with one another, each processor among the plurality of remaining processors in signal communication with a corresponding hardware accelerator. 5. The computer system of claim 2 , wherein the accelerator utilizes the first processor while excluding remaining processors among the plurality of processors to compress or decompress the data stream in response to invoking a different second compression mode among the plurality of compression modes. 6. The computer system of claim 5 , wherein the data compression request includes compression information indicating an expected compression ratio associated with the data compression request, and wherein the hardware accelerator determines the expected compression ratio prior to compressing or decompressing the data stream, and automatically selects between the first compression mode and the second compression mode based on the expected compression ratio corresponding to the data compression request. 7. The computer system of claim 6 , wherein the application issues a compression mode request to invoke a selected compression mode among the plurality of different compression modes. 8. The computer system of claim 7 , wherein the accelerator overrides the compression mode request and invokes a second compression mode different from the compression mode indicated by the compression mode request in response to determining a presence of at least one override condition. 9. The computer system of claim 8 , wherein the override condition includes at least one of a compression ratio corresponding to the data compression request, a number of the remaining processors available to perform the data compression request, and an overall latency requirement of the computer system. 10. A method of controlling a hardware accelerator installed in a computer system, the method comprising: running an application via a first processor included among a plurality of hardware processors, each processor in signal communication with a corresponding accelerator; issuing, via the application, a data compression request to compress or decompress a data stream; monitoring, via the hardware accelerator, a current workload of each hardware processor among the plurality of processors; and selectively operating the computer system in a plurality of different compression modes to compress or decompress the data stream, wherein the computer system invokes a different number of processors among the plurality of hardware based on a selected compression mode among the plurality of different compression modes, and each invoked processor uses the corresponding accelerator to compress or decompress the data stream, and invoking, via the hardware accelerator, the selected compression mode based on the current workload of each hardware processor. 11. The method of claim 10 , further comprising invoking a first compression mode among the plurality of compression modes such that at least one remaining processor among the plurality of processors is utilized to drive its corresponding accelerator and compress or decompress the data stream. 12. The method of claim 11 , wherein the at least one remaining processor is located remotely from the first processor. 13. The method of claim 12 , further comprising operating the remaining processors in parallel with one another to compress or decompress the data stream in response to invoking the first compression mode. 14. The method of claim 11 , further comprising invoking a different second compression mode among the plurality of compression modes such that the accelerator utilizes the first processor while remaining processors among the plurality of processors are excluded from compressing or decompressing the data stream. 15. The method of claim 14 , further comprising: adding compression information indicating an expected compression ratio associated with the data compression request to the data compression request; determining, via the hardware accelerator, the expected compression ratio prior to compressing or decompressing the data stream; and automatically selecting, via the hardware accelerator, between the first compression mode and the second compression mode based on the expected compression ratio corresponding to the data compression request. 16. The method of claim 15 , further comprising issuing, via the application, a compression mode request that requests a selected compression mode among the plurality of different compression modes. 17. The method of claim 16 , further comprising: overriding, via the accelerator, the compression mode request; and invoking, via the accelerator, a second compression mode different from the compression mode indicated by the compression mode request in response to determining a presence of at least one override condition, wherein the override condition includes at least one of a compression ratio corresponding to the data compression request, a number of the remaining processors available to perform the data compression request, and an overall latency requirement of the computer system. 18. A computer program product to control a computer system to perform compression or decompression of data stream, the computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by an electronic computer processor to control the computer system to perform operations comprising: running an application via a first processor included among a plurality of hardware processors, each processor in signal communication with a corresponding accelerator; issuing, via the application, a data compression request to compress or decompress a data stream; monitoring, via the hardware accelerator, a current workload of each hardware processor among the plurality of processors; and selectively operating the computer system in a plurality of different compression modes to compress or decompress t

Assignees

Inventors

Classifications

  • H03M7/3086Primary

    employing a sliding window, e.g. LZ77 · CPC title

  • using a secondary processor, e.g. coprocessor (peripheral processor G06F13/12) · CPC title

  • Synchronisation; Hardware support therefor (intertask synchronisation G06F9/52) · CPC title

  • H03M7/6094Primary

    according to reasons other than compression rate or data type · 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 US10587284B2 cover?
A computer system includes a plurality of hardware processors, and a hardware accelerator. A first processor among the plurality of processor runs an application that issues a data compression request to compress or decompress a data stream. The hardware accelerator selectively operates in different modes to compresses or decompresses the data stream. Based on a selected mode, the hardware acce…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H03M7/3086. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 10 2020 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).