Shared Memory Arenas for Selective Process Crash Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Crashes in one process or task in shared memory data processing systems force all processes or tasks to be restarted, leading to computational expense and limiting scalability as systems grow larger.
Innovation Solution
Implementing a processing application with processing groups that allocate memory from a global shared memory to a group-private shared memory arena, allowing detection of abnormal execution conditions, and performing recovery of the processing group while continuing execution of other groups, including restoring the group-private memory arena to global shared memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all processes are restarted when one process crashes in shared memory systems, then system reliability is maintained, but computational overhead increases and scalability is limited
Solution Approach 1:
The patent divides the shared memory system into isolated memory arenas, where each processing group has its own dedicated arena. When a crash occurs in one processing group, only that group's arena is affected and needs to be restarted, while other groups continue operating. This segmentation isolates failures and prevents system-wide restarts, reducing computational overhead while maintaining reliability.
2Reliability
If all processes are restarted when one process crashes, then consistent shared state is restored, but system productivity decreases
Solution Approach 1:
By segmenting shared memory into isolated arenas per processing group, the patent enables selective restart of only the affected group rather than the entire system. This maintains shared state consistency within the crashed group's arena while preserving productivity of other groups that continue operating without interruption.
Solution Approach 2:
When a processing group crashes, its memory arena is discarded (reset to initial state) and can be recovered independently. Other processing groups retain their arenas and continue operating, allowing the system to recover from crashes with minimal productivity loss by only discarding and recovering the affected segment.
3Device complexity
If shared memory is fully shared across all processes, then system complexity is reduced, but crash propagation increases
Solution Approach 1:
The patent segments shared memory into separate arenas for different processing groups, reducing crash propagation while maintaining manageable system complexity through a standardized arena interface. Each arena is isolated but managed through uniform allocation and reset operations, balancing complexity and reliability.
Data Source
AI summary
Improved crash resilience is implemented in shared memory processing systems. A processing application including a plurality processing groups may be configured, and a processing group including a plurality of processes may allocate memory from a global shared memory to a group-private shared memory arena. Then, an abnormal execution condition for a failing process of the processing group may be detected during execution of a processing job. Responsive to the detection, a recovery of execution of the processing group may be performed while continuing execution of processing groups of the application. The recovery may include restoring the processing group to a normal execution state and returning the allocated memory of the group-private memory arena to the global shared memory.


