Transaction Begin End Instructions for Multiprocessor Storage Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multiprocessor programming, updating multiple storage locations simultaneously by multiple CPUs is challenging due to the need for serialization, which often results in coarse-grained locking, leading to potential deadlocks and recovery issues, and existing instructions for interlocked updates are limited to single storage locations.

Innovation Solution

A computer program product that executes a machine instruction with a TRANSACTION BEGIN instruction, determining whether it's a constrained or nonconstrained transaction, allowing for finer-grained updates of multiple storage locations with diagnostic capabilities and automatic retry mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If coarse-grained locking is used to ensure safe updates of multiple storage locations, then serialization is achieved, but deadlock potential and recovery complexity increase

Engineering Contradiction:
Improvesafe updatesVSAvoiddeadlock and recovery complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the locking mechanism into fine-grained locks associated with individual storage locations rather than using a single coarse-grained lock. This allows multiple CPUs to access different storage locations simultaneously without deadlock, while still ensuring safe updates through location-specific serialization when needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a transaction manager as an intermediary that coordinates updates across multiple storage locations without requiring coarse-grained locking. The transaction manager handles commit/abort logic and diagnostic information collection, reducing the complexity of deadlock prevention and recovery while maintaining safe updates.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If existing interlocked update instructions are used, then single storage location updates are atomic, but multiple storage location updates require additional locking mechanisms

Engineering Contradiction:
ImproveatomicityVSAvoidlocking mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges multiple single-location interlocked update instructions into a unified transactional update mechanism that handles multiple storage locations atomically. The transaction begin/end instructions encapsulate the entire sequence of updates, providing atomicity across multiple locations without requiring separate locking mechanisms for each operation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent creates a universal transactional update mechanism that can handle both single and multiple storage location updates through the same instruction sequence. The transaction begin instruction initializes a transaction context that can accommodate any number of storage location updates, eliminating the need for different mechanisms based on the number of locations involved.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Manufacturing precision

If finer-grained serialization is implemented through lock hierarchies, then update precision improves, but deadlock situations and recovery issues increase

Engineering Contradiction:
Improveupdate precisionVSAvoiddeadlock and recovery complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent segments the serialization mechanism into fine-grained locks at the storage location level rather than using hierarchical lock structures. This provides precise control over concurrent updates to specific locations while avoiding the deadlock problems associated with lock hierarchies, as there is no hierarchical ordering that could be violated.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a self-service mechanism where the transaction manager automatically handles commit or abort based on the outcome of the update sequence, without requiring manual intervention or complex recovery procedures. Diagnostic information is automatically collected and stored, enabling automatic retry or fallback to non-transactional execution, reducing recovery complexity while maintaining precise update control.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11080087B2Transaction begin/end instructions
Publication Date: 2021.08.03 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11080087B2 patent drawing
  • US11080087B2 patent drawing
  • US11080087B2 patent drawing

AI summary

A TRANSACTION BEGIN instruction and a TRANSACTION END instruction are provided. The TRANSACTION BEGIN instruction causes either a constrained or nonconstrained transaction to be initiated, depending on a field of the instruction. The TRANSACTION END instruction ends the transaction started by the TRANSACTION BEGIN instruction.