Transactional Memory Exception Mask Update Handling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing transactional memory systems face performance bottlenecks due to the prohibition of exception mask updates within transactions, leading to unnecessary aborts and potential livelock situations when exception mask information changes during processing.

Innovation Solution

Allowing exception mask updates within transactions and providing abort status information to distinguish between abort causes, enabling continued processing and reducing the risk of livelock by permitting unaborted execution after mask updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If exception mask updates are prohibited within transactions, then transaction abort reliability is improved, but transactional memory performance deteriorates due to unnecessary aborts

Engineering Contradiction:
Improvetransaction abort reliabilityVSAvoidtransactional memory performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the parameter of exception mask update behavior from prohibited to permitted within transactions. By allowing exception mask updates and distinguishing their abort cause through status information, the system reduces unnecessary aborts while maintaining reliability for other abort conditions, thus improving transactional memory performance without sacrificing reliability.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If exception mask updates are allowed within transactions, then transactional memory performance is improved, but the risk of livelock situations increases

Engineering Contradiction:
Improvetransactional memory performanceVSAvoidlivelock risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces feedback through abort status information that distinguishes abort causes. This feedback mechanism allows the system to identify when an abort is caused by an exception mask update versus other reasons, enabling differentiated handling that reduces livelock risk while maintaining performance benefits.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent segments abort causes into different categories using status information. By separating aborts caused by exception mask updates from other abort causes, the system can apply different handling strategies, reducing the overall risk of livelock situations while maintaining performance improvements.

Inventive Principle:
Principle #1Segmentation

3Reliability

If transactions abort on exception mask updates, then exception handling reliability is improved, but processing continuity deteriorates

Engineering Contradiction:
Improveexception handling reliabilityVSAvoidprocessing continuity
Core Design Contradiction:
ReliabilityVSDuration of action of moving object

Solution Approach 1:

The patent changes the parameter of exception mask update handling from abort-triggering to permit-continued-processing. By allowing transactions to continue after exception mask updates and using abort status information to distinguish causes, the system improves processing continuity while maintaining exception handling reliability through proper status tracking.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11663034B2Permitting unaborted processing of transaction after exception mask update instruction
Publication Date: 2023.05.30 ARM LTD
  • US11663034B2 patent drawing
  • US11663034B2 patent drawing
  • US11663034B2 patent drawing

AI summary

A data processing apparatus has processing circuitry with transactional memory support circuitry to support execution of a transaction using transactional memory. In response to an exception mask updating instruction which updates exception mask information to enable at least one subset of exceptions which was disabled at the start of processing of a transaction, the processing circuitry permits un-aborted processing of one or more subsequent instruction of the transaction that follow the exception mask update instruction.