Queue-Based Switching Memory Remapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing switching elements face inefficiencies in memory allocation and fragmentation due to the inability to effectively remap memory blocks across port pairs, leading to sparse allocation and reduced memory availability, especially during channel activation and deactivation.
Innovation Solution
A method for remapping allocated memory blocks in switching elements by identifying unallocated and allocated blocks, copying block information, and reallocating memory elements without interrupting data flow, allowing for the migration of blocks to optimize memory usage and free up memory elements for reallocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If dedicated storage is provided for each queue element, then data storage capability is improved, but memory fragmentation and allocation inefficiency worsen
Solution Approach 1:
The patent merges the storage resources of multiple queue elements by introducing shared memory regions. Instead of each queue element having dedicated storage, multiple queue elements can share the same physical memory blocks, thereby improving memory allocation efficiency while maintaining sufficient data storage capability through proper memory management mechanisms.
2Productivity
If shared storage is allocated dynamically, then memory availability is improved, but data integrity and retrieval accuracy worsen
Solution Approach 1:
The patent implements feedback mechanisms through memory management tables that track which queue elements are currently using which memory blocks. This allows the system to dynamically allocate and deallocate memory while maintaining accurate records of data locations, ensuring data integrity is preserved even when multiple queue elements share storage resources.
3Ease of operation
If memory is allocated when channels are activated, then channel provisioning is improved, but memory fragmentation increases during channel deactivation
Solution Approach 1:
The patent prepares memory blocks in advance for potential reallocation by maintaining a pool of available memory regions. When channels are deactivated, the system can quickly reallocate these pre-prepared memory blocks to other active channels, preventing memory fragmentation and simplifying the memory management process during dynamic channel operations.
Data Source
AI summary
A method of remapping allocated memory in a queue based switching element having first and second memory elements each allocated to a first port pair. An unallocated block of memory is identified in the first memory element as a candidate block, and an allocated block of memory is identified in the second memory element as a target block. Block information is copied from the target block to the candidate block, and the candidate block is maintained as unallocated. In response to a determination that read and write pointers are in a suitable position for a remapping operation, the candidate block is allocated and the target block is deallocated so that the second memory element becomes unallocated and available for reallocation to a second port pair.


