Transaction Diagnostic Block for Abort Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multiprocessor environments, updating multiple storage locations simultaneously is challenging due to the need for serialization, which can lead to coarse-grained locking issues and potential deadlocks, and handling exception conditions is costly and complex.

Innovation Solution

A transactional execution facility that allows for block-concurrent storage accesses, enabling atomic updates of multiple storage locations and providing diagnostic information on aborts, with features like nested transactions, constrained and nonconstrained execution modes, and specialized instructions for managing transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If lock words are used to serialize access to multiple storage locations, then atomic updates are guaranteed, but the serialization is coarse-grained and may serialize entire queues even when only two elements are being updated

Engineering Contradiction:
Improveatomic update guaranteeVSAvoidserialization granularity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the serialization mechanism into multiple independent lock words, each associated with specific storage locations. Instead of using a single coarse-grained lock word that serializes all access to a data structure, the system creates fine-grained lock words that can be independently acquired and released. This allows concurrent access to different parts of the data structure, improving productivity while maintaining atomicity where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different locking strategies to different parts of the data structure based on local requirements. Each storage location or group of locations has its own lock word, allowing the system to apply serialization only where necessary rather than globally. This local approach to serialization reduces contention and improves overall system throughput.

Inventive Principle:
Principle #3Local quality

2Productivity

If finer-grained serialization is implemented using a hierarchy of lock points, then productivity improves, but potential deadlock situations arise if the hierarchy is violated

Engineering Contradiction:
Improveserialization granularityVSAvoiddeadlock prevention
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements dynamic lock acquisition and release based on the actual execution path and data access patterns. Rather than requiring a fixed hierarchy of lock acquisition, the system dynamically determines which lock words need to be acquired based on the specific storage locations being accessed. This dynamic approach maintains productivity while reducing deadlock risk by acquiring only the necessary locks in the appropriate order.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses feedback from the actual data access patterns to determine lock acquisition and release. By monitoring which storage locations are being accessed and by whom, the system can dynamically adjust lock acquisition strategies, release locks when no longer needed, and prevent deadlock situations by detecting and resolving potential conflicts before they occur.

Inventive Principle:
Principle #23Feedback

3Reliability

If recovery environments are established to intercept exception conditions, then exception handling capability improves, but the system becomes costly and complicated

Engineering Contradiction:
Improveexception handling capabilityVSAvoidrecovery environment complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts exception handling from the main execution flow by using separate recovery routines that are only invoked when exceptions occur. Rather than establishing comprehensive recovery environments for all possible exceptions, the system uses targeted exception handlers that address specific error conditions. This reduces the overall complexity while maintaining adequate exception handling capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system uses lightweight, temporary recovery environments that are created only when needed and discarded afterward. Rather than maintaining permanent, complex recovery infrastructure, the patent implements ephemeral exception handling mechanisms that exist only during exception processing. This approach reduces device complexity while providing necessary exception handling capability.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentEP2834739B1Transaction diagnostic block
Publication Date: 2018.08.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • EP2834739B1 patent drawingFigure 1
  • EP2834739B1 patent drawingFigure 2A~3B
  • EP2834739B1 patent drawingFigure 4~5

AI summary

When an abort of a transaction occurs in a computer system, a determination is made as to whether diagnostic information is to be stored in one or more transaction diagnostic blocks (TDBs). There are different types of transaction diagnostic blocks to accept diagnostic information depending on the type of abort and other considerations. As examples, there are a program-specified TDB in which information is stored if a valid TDB address is provided in a transaction begin instruction; a program interruption TDB, which is stored into when the program is aborted due to an interruption; and a program interception TDB, which is stored into when an abort results in an interception.