Browse Prior Art Database

Method for Managing Dependent Work Items on Device Queue

IP.com Disclosure Number: IPCOM000233984D
Publication Date: 2014-Jan-06
Document File: 3 page(s) / 30K

Publishing Venue

The IP.com Prior Art Database

Abstract

A method is disclosed for managing dependent work items on device queue. The method flags one or more work items that have dependency, allowing work items ahead of them to be completed before starting the one or more flagged work items.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 47% of the total text.

Page 01 of 3

Method for Managing Dependent Work Items on Device Queue

Disclosed is a method for managing dependent items on device queue. Each device queue has a primary worker which services only that specific device queue. In addition, there is a limited pool of subordinate workers who can service one or more of multiple device queues. The method flags one or more work items that have dependency, allowing work items ahead of them to be completed before starting the one or more flagged work items. The flag, called TOQ for 'Top of Queue', is on a work item when it is added to the device queue or later when an attempt is made to start processing the work item and a dependent item is found ahead of it on the queue.

In addition to the TOQ flag in each item on the queue, there is a master TOQ flag for each device queue that is turned on when the device is moving into sequential mode or is in sequential mode. This indicates that either the next available work item that needs to be processed requires sequential processing and it is waiting for all in-progress work items to finish on this device queue, or the work item at the top of the queue is being processed sequentially by itself (I/O is being executed) and its TOQ flag is set. Before scanning the device queue for work, subordinate workers (alias addresses) check the device queue TOQ flag to see if the device queue is operating in sequential mode or not. If otherwise, the subordinate worker scans the queue for the next available work item to process. If the device queue TOQ flag is set, the device queue is skipped. By skipping the device queue, the subordinate

workers do not waste CPU time scanning the queue and are free to process work

items on other device queues.

After a work item with the TOQ flag turned on is completed, the device queue TOQ flag is turned off. By turning off the device queue TOQ flag, parallel operations are allowed to resume for this device queue.

When an attempt is made to start a new work item on a device queue (either by a base or alias device) and a sequential dependency is detected (TOQ is already on for that work item or a duplicate record update is found ahead on the queue), then the work item and the device queue are flagged as TOQ. This signifies that the device queue is being put into sequential mode. Any worker (base or alias) looking for new work to start tests the device queue TOQ flag. For aliases, if the TOQ flag is on, alias devices skips scanning the device queue for new work and places back into the available pool for use on other device queues. Any work items ahead of the

TOQ item that are in progress are continued to completion.

Every time a new I/O request is placed on the device queue, the O/S tries to start the next available I/O request for that device queue using a base device or an alias device. A large number of I/O requests could be placed on the queue following a dependent item. By checking the device queue TOQ flag first, alias devices are pre...