Semi-Transparent Read Sharing in Transactional Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software transactional memory implementations do not efficiently handle concurrent transactions accessing shared memory locations, leading to costly validation procedures and complex management of read-write conflicts, as they either abort all reader transactions or require expensive re-reading of ownership records.

Innovation Solution

The implementation of semi-transparent read sharing with a global indication of read-write conflicts allows transactions to quickly validate by notifying active readers of potential data corruption without tracking individual transactions, reducing overhead and complexity by having readers abort themselves upon detection of conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If transparent reading is used to allow multiple transactions to read the same location without aborting, then read sharing is supported, but validation becomes expensive requiring repeated rereading of ownership records

Engineering Contradiction:
Improveread sharing capabilityVSAvoidvalidation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent introduces a global read-write conflict indication as an intermediary mechanism that mediates between reading transactions and writing transactions. This global indication allows reading transactions to quickly detect conflicts without directly tracking individual readers, resolving the contradiction between supporting read sharing and maintaining efficient validation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent extracts the conflict detection mechanism from individual ownership records and implements it at the global level. By taking out the conflict tracking from local ownership records and placing it in a global indication, the system enables fast validation for reading transactions while still supporting read sharing.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If non-transparent reading is used to allow readers to determine conflicting writers, then validation can be performed, but aborting all reader transactions becomes significantly expensive and complex

Engineering Contradiction:
Improvevalidation accuracyVSAvoidmanagement complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The global read-write conflict indication serves as an intermediary that provides validation information without requiring the complex mechanism of tracking and aborting individual reader transactions. This intermediary approach maintains validation accuracy while dramatically reducing management complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements self-service validation where transactions check the global read-write conflict indication themselves rather than requiring the system to actively manage and abort transactions. This approach maintains reliability while reducing device complexity.

Inventive Principle:
Principle #25Self-service

3Reliability

If ownership records track individual reader transactions to enable validation, then read conflicts can be detected, but the overhead of maintaining and managing lists of reader transactions becomes expensive

Engineering Contradiction:
Improveconflict detection accuracyVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The global read-write conflict indication acts as an intermediary that provides conflict detection information without requiring ownership records to track individual reader transactions. This eliminates the expensive overhead of maintaining reader lists while preserving conflict detection accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses a global copy of conflict information that can be efficiently checked by multiple transactions without requiring individual tracking. This copying approach reduces computational overhead while maintaining reliable conflict detection.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7711909B1Read sharing using global conflict indication and semi-transparent reading in a transactional memory space
Publication Date: 2010.05.04 ORACLE AMERICAN INC
  • US7711909B1 patent drawing
  • US7711909B1 patent drawing
  • US7711909B1 patent drawing

AI summary

It has been discovered that globally indicating read-write conflicts and semi-transparent read sharing in a transactional memory space allows for a more expedient validation. Without being aware of particular transactions, a writing transaction can determine that a read-write conflict will occur with some transaction that has read one or more memory locations to be modified by the writing transaction. With semi-transparent reading, reading transactions can validate quickly. If a read-write conflict has not occurred since a reading transaction began (or since the last validation), then the previous reads are valid. Otherwise, the reading transaction investigates each memory location or ownership record to determine if a read-write conflict affected the investigating transaction.