Shared Memory Segment Assignment to Avoid Read Contention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In cloud environments, simultaneous access to shared resources by multiple application instances can lead to data contentions and performance degradation due to deadlocks, which existing solutions like access restrictions and manual analysis are inefficient and labor-intensive.

Innovation Solution

A communication management system dynamically assigns each application instance to access unique memory segments based on the count of instances, avoiding contention by selecting a target instance for each memory segment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple application instances access shared memory array simultaneously, then resource utilization is improved, but data contentions occur causing performance degradation

Engineering Contradiction:
Improveresource utilizationVSAvoidperformance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The shared memory array is divided into multiple memory segments, with each segment assigned to a specific application instance. This segmentation eliminates data contentions by ensuring that each instance accesses only its designated segment, thereby maintaining high resource utilization without performance degradation from simultaneous access conflicts.

Inventive Principle:
Principle #1Segmentation

2Reliability

If access restrictions are imposed on shared memory array, then data contentions are reduced, but access efficiency decreases requiring manual analysis

Engineering Contradiction:
Improvedata contention reductionVSAvoidaccess efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system automatically manages memory segment assignments based on the number of active application instances. When instances are added or removed, the communication management system dynamically reconfigures the memory segment mappings without requiring manual intervention, thereby reducing data contentions while maintaining high access efficiency through automated resource management.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If dynamic changes in application instances are allowed, then scalability is improved, but shared resource utilization becomes ineffective

Engineering Contradiction:
ImprovescalabilityVSAvoidshared resource utilization
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The memory segment assignments are dynamically adjusted based on the current number of active application instances. The communication management system continuously monitors instance changes and automatically remaps memory segments to maintain optimal utilization, enabling the system to scale while preserving efficient shared resource usage without manual reconfiguration.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12524271B2Shared resource access
Publication Date: 2026.01.13 HEWLETT PACKARD ENTERPRISE DEV LP
  • US12524271B2 patent drawing
  • US12524271B2 patent drawing
  • US12524271B2 patent drawing

AI summary

Examples described herein relate a communication management system (CMS) to manage access to a shared resource, for example, a shared memory array. Responsive to writing a data object into a memory segment at a memory index in the shared memory array for an application, the CMS may select a target application instance as a consumer of the data object. The target application instance is selected from a plurality of application instances based on the memory index and a count of application instances. The target application instance is then notified to read the memory object. The selection of the target application instance to read the data object based on the memory index and the count of application instances avoids data read contentions among the plurality of application instances causing faster data access by the application.