Crypto device operation

US11727154B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11727154-B2
Application numberUS-202117377589-A
CountryUS
Kind codeB2
Filing dateJul 16, 2021
Priority dateJul 16, 2021
Publication dateAug 15, 2023
Grant dateAug 15, 2023

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.

Multiple work requests from different applications are queued to be processed subsequently without interruption by a crypto device. A prediction table is generated for each application to be processed by the crypto device. An initial credit value is determined for each incoming work request. The work request is an entry in an ordered queue in the order of time using respective time stamps. The next work request to be processed is selected from the entries in the queue by using the first entry in the queue for which the credit values for the corresponding application is greater than or equal to the predicted execution time for the corresponding request type in the prediction table. The selected next work request is processed.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for operating a crypto device, wherein multiple work requests from one or more applications are queued to be processed by the crypto device, the method comprising: generating a prediction table that includes multiple request types that correspond to the multiple work requests; assigning, each of the multiple request types in the prediction table, a predicted execution time, wherein the predicted execution time corresponds to a type value of each of the multiple request types; determining, for each application of the one or more applications, a credit value; storing, for each application of the one or more applications, the credit value as an initial credit value; determining, for each work request of the multiple work requests, a corresponding application of the one or more applications, a request type, and a current time stamp; storing, for each work request of the multiple work requests, one or more entries in an ordered queue, wherein each entry of the one or more entries includes the determined corresponding application, the determined request type, and the determined current time stamp; selecting, from the ordered queue and in response to the credit value being greater than or equal to the predicted execution time, a queued work request to be processed by the crypto device to create a selected work request; processing, in response to determining none of the multiple work requests are being processed, the selected work request to create a processed work request; removing an entry of the one or more entries in the ordered queue that corresponds to the processed work request; determining a first execution time of the processed work request; and reducing, based on the first execution time, the credit value to create an updated credit value for the application of the one or more applications. 2. The method according to claim 1 , further comprising: determining, for each entry and in response to the credit value being less than the predicted execution time, a set of candidate entries from the ordered queue, wherein each of the candidate entries includes a difference between the corresponding credit values of each entry and the predicted execution time; determining, from the set of candidate entries, a subset of the set of candidate entries that share a smallest absolute difference of the differences; selecting, from the subset of the set of candidate entries, a second work request that corresponds to an entry with a determined current time stamp that is older than the other determined current time stamps of the subset of the set of candidate entries; and processing the second work request. 3. The method according to claim 1 , wherein a plurality of time slices are defined as a relative share of the applications to be used for executing work requests in a predefined time window that represents a sum of the time slices of the applications. 4. The method according to claim 3 , wherein the method further comprises: determining a first determined subset of completed work requests that have a determined current time stamp outside of the predefined time window; and increasing the credit values for all applications that correspond to the first determined subset, by the corresponding stored initial credit values. 5. The method according to claim 3 , wherein the method further comprises: increasing, in response to an aggregate of all predicted execution times of the queue entries exceeding the predefined time window, the credit values for all applications by at least the greatest predicted execution time of all predicted execution times in the prediction table. 6. The method according to claim 3 , wherein the method further comprises: increasing, in response to a predicted execution time of a given entry in the ordered queue exceeding the corresponding credit value of the given entry, the credit values for all applications by the corresponding stored initial credit values. 7. The method according to claim 3 , wherein the predefined time window is defined such that it exceeds the greatest value of the predicted execution times of the applications. 8. The method according to claim 3 , wherein the method further comprises: increasing, in response to all of the predicted execution times being greater than the predefined time window, the predefined time window. 9. The method according to claim 3 , wherein the method further comprises: increasing, if a given predicted execution time of an entry exceeds a value that corresponds to the predefined time window, the credit value of all entries in the queue by the corresponding initial credit values. 10. The method according to claim 3 , wherein the initial credit value is chosen to be equal to the time slice of the corresponding application. 11. The method according to claim 1 , wherein an order of the work requests in the ordered queue is defined by appearance of work requests according to time stamps to the queue. 12. The method according to claim 1 , wherein the method further comprises: increasing, if a given application is not executed in a predefined time window, the credit value of a work request that corresponds to the application by a bonus value. 13. The method according to claim 1 , wherein the request type for a given work request is selected from the group consisting of a symmetric, an asymmetric, a key generation, a request, and a reply. 14. The method according to claim 1 , wherein the method further comprises: providing a configurable service level agreement for performing the work requests. 15. The method according to claim 14 , wherein the service level agreement is defined for a specific logical partition of a computer system. 16. The method according to claim 14 , wherein the service level agreement is defined for a specific logical partition of the crypto device. 17. The method according to claim 1 , implementing the method as a workload manager on the crypto device. 18. A system, the system comprising: a memory, the memory containing one or more instructions; and a processor, the processor communicatively coupled to the memory, the processor, in response to reading the one or more instructions, configured to: generate a prediction table that includes multiple request types that correspond to multiple work requests; assign, each of the multiple request types in the prediction table, a predicted execution time, wherein the predicted execution time corresponds to a type value of each of the multiple request types; determine, for each application of one or more applications, a credit value; store, for each application of the one or more applications, the credit value as an initial credit value; determine, for each work request of the multiple work requests, a corresponding application of the one or more applications, a request type, and a current time stamp; store, for each work request of the multiple work requests, one or more entries in an ordered queue, wherein each entry of the one or more entries includes the determined corresponding application, the determined request type, and the determined current time stamp; select, from the ordered queue and in response to the credit value being greater than or equal to the predicted execution time, a queued work request to be processed by a crypto device to create a selected work request; process, in response to determining none of the multiple work requests are being processed, the selected work request to create a processed work request; remove an entry of the one o

Assignees

Inventors

Classifications

  • G06F21/72Primary

    in cryptographic circuits · CPC title

  • Allocation of resources, e.g. of the central processing unit [CPU] · CPC title

  • to service a request · CPC title

  • the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups) · 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 US11727154B2 cover?
Multiple work requests from different applications are queued to be processed subsequently without interruption by a crypto device. A prediction table is generated for each application to be processed by the crypto device. An initial credit value is determined for each incoming work request. The work request is an entry in an ordered queue in the order of time using respective time stamps. The …
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F21/72. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 15 2023 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).