Optimizing the initialization of a queue via a batch operation

US10108466B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10108466-B2
Application numberUS-201514753566-A
CountryUS
Kind codeB2
Filing dateJun 29, 2015
Priority dateJun 29, 2015
Publication dateOct 23, 2018
Grant dateOct 23, 2018

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, a computer program product, and a system for performing a batch processing are provided. The batch processing includes initializing a set of elements corresponding to a set of resources to produce an initialized group and chaining the initialized group to previously initialized elements to produce an element batch, when the previously initialized elements are available. The batch processing further includes setting a system lock on the set of resources after the element batch is produced; executing a service routine to move the element batch to a queue by referencing first and last elements of the element batch; and releasing the system lock on the set of resources once the service routine is complete.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product for performing a batch processing, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform: initializing a set of elements corresponding to a first set of resources to produce an initialized group, wherein the initializing of the set of elements is performed without a system lock on at least the first set of resources; setting an indicator signifying that the set of elements are not available prior to the system lock on at least the first set of resources while the set of elements is being initialized, wherein the indicator is checked by a second processor attempting to access the set of elements to verify whether the set of elements are available for use; chaining the initialized group to previously initialized elements to produce an element batch when the previously initialized elements are available, wherein the chaining of the initialized group is performed without the system lock on at least the first set of resources, and wherein the previously initialized elements correspond to a second set of resources; obtaining a system lock on at least the first and second sets of resources in accordance with the element batch after the initialized group is chained to the previously initialized elements; executing a service routine to move the element batch to a queue, wherein the service routine increases an efficiency of the batch processing by referencing only first and last elements of the element batch and not middle elements of the element batch; and updating counts representing a number of elements on the queue to correspond to the service routine; and releasing the system lock on at least the first and second sets of resources once the service routine is complete and resetting the indicator to signal that the set of elements is fully initialized once all elements in the element batch have been processed, wherein each element of the set of elements is an address pointing to a corresponding resource of the first set of resources, wherein all elements on the queue are chained via a forward and backward pointer. 2. The computer program product of claim 1 , the program instructions executable by the processor to cause the processor to perform: receiving a request for resources, the request for resources corresponding to the set of elements. 3. The computer program product of claim 1 , wherein a size of the element batch corresponds to an increment size of the first and second sets of resources. 4. A system for performing a batch processing, comprising: a memory having computer readable instructions; and a processor for executing the computer readable instructions; the computer readable instructions including: initializing a set of elements corresponding to a first set of resources to produce an initialized group, wherein the initializing of the set of elements is performed without a system lock on at least the first set of resources; setting an indicator signifying that the set of elements are not available prior to the system lock on at least the first set of resources while the set of elements is being initialized, wherein the indicator is checked by a second processor attempting to access the set of elements to verify whether the set of elements are available for use; chaining the initialized group to previously initialized elements to produce an element batch when the previously initialized elements are available, wherein the chaining of the initialized group is performed without the system lock on at least the first set of resources, and wherein the previously initialized elements correspond to a second set of resources; obtaining a system lock on at least the first and second sets of resources in accordance with the element batch after the initialized group is chained to the previously initialized elements; executing a service routine to move the element batch to a queue, wherein the service routine increases an efficiency of the batch processing by referencing only first and last elements of the element batch and not middle elements of the element batch; and updating counts representing a number of elements on the queue to correspond to the service routine; and releasing the system lock on at least the first and second sets of resources once the service routine is complete and resetting the indicator to signal that the set of elements is fully initialized once all elements in the element batch have been processed, wherein each element of the set of elements is an address pointing to a corresponding resource of the first set of resources, wherein all elements on the queue are chained via a forward and backward pointer. 5. The system of claim 4 , the computer readable instructions including: receiving a request for resources, the request for resources corresponding to the set of elements. 6. The system of claim 4 , wherein a size of the element batch corresponds to an increment size of the first and second sets of resources.

Assignees

Inventors

Classifications

  • G06F9/485Primary

    Task life-cycle, e.g. stopping, restarting, resuming execution (G06F9/4881 takes precedence) · CPC title

  • Queue · CPC title

  • G06F9/52Primary

    Program synchronisation; Mutual exclusion, e.g. by means of semaphores · CPC title

  • Precedence · CPC title

  • Mutual exclusion algorithms · 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 US10108466B2 cover?
A method, a computer program product, and a system for performing a batch processing are provided. The batch processing includes initializing a set of elements corresponding to a set of resources to produce an initialized group and chaining the initialized group to previously initialized elements to produce an element batch, when the previously initialized elements are available. The batch proc…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/485. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 23 2018 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).