Adjunct Processor Queue Reset Recovery via Status Bit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer systems, external resets of adjunct processor queues can lead to lost messages due to the lack of awareness by applications and operating systems, resulting in incorrect message counts and potential program hangs, as existing methods fail to accurately detect and recover lost messages efficiently.

Innovation Solution

Implementing a new status bit ('O' bit) in the Adjunct Processor Queue Status Word (APQSW) to indicate the transition from zero to one message entry, allowing the system to detect message losses and facilitate recovery by requeuing messages with outstanding replies after an external reset.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If external reset operation is performed on AP message queue, then queue is cleared and hardware failure is recovered, but messages are lost and applications are unaware of the reset

Engineering Contradiction:
Improvequeue recoveryVSAvoidmessage loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent implements a feedback mechanism by setting a status bit in the APQSW register when the queue transitions from empty to having messages. This status bit provides feedback to applications about the reset state, enabling them to detect and recover lost messages while maintaining system reliability

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The status bit acts as an intermediary between the queue reset operation and applications. It conveys information about the reset state without requiring direct communication between applications and the queue management system, solving the awareness problem

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If traditional queue status tracking is used, then message counting is maintained, but register space is wasted and recovery is inefficient

Engineering Contradiction:
Improverecovery efficiencyVSAvoidregister space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential information needed for recovery (the transition from empty to non-empty state) and stores it in a single status bit, rather than maintaining complete message counts. This reduces register space usage while enabling efficient recovery by indicating only when messages were lost due to reset

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the parameter representation from maintaining full message counts to using a single status bit that indicates the transition state. This parameter change reduces the quantity of stored information while preserving the ability to detect and recover message losses

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11645154B2Enhanced recovery from externally initiated adjunct processor queue reset
Publication Date: 2023.05.09 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11645154B2 patent drawing
  • US11645154B2 patent drawing
  • US11645154B2 patent drawing

AI summary

A method, computer program product, and computer system are provided. An adjunct processor receives an indication to reset a message queue. The reset removes all messages from the message queue on the adjunct processor. The reset is in response to a hardware failure or an external manual operation. An operation to enqueue a message to the message queue is received. Based on completing a successful enqueue operation, the adjunct processor sets a status that includes an indication that the enqueue operation is a first operation following the reset. A requestor receives the indication of the first operation. Based on the internal count of pending messages being greater than one, the requestor requeues to the adjunct processor, the message requests, except for the first message, having outstanding replies, and resets the indication of the first enqueue operation upon the requeuing of the message requests being complete.