Packet Processing Device for Server Memory Routing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current datacenter server architectures face inefficiencies due to L3 cache overflow and random data packet placement, leading to increased power consumption and reduced performance as data packets are often stored off-chip, causing 'Dark Silicon' issues where many processing units remain idle due to power constraints.
Innovation Solution
A packet processing device that is physical location aware, determining the optimal cache location within the server architecture for data storage based on the computing unit's workload, thereby routing data packets to the nearest memory location, reducing access distance and power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data packets are stored in L3 caches, then data access speed is improved, but L3 caches overflow and cause data to be stored off chip, increasing power consumption
Solution Approach 1:
The patent applies local quality by determining the physical location of computing units and routing data to specific local memory locations nearest to the computing unit that will process it. This ensures data is stored in the most favorable position (closest to the processor), reducing access distance and power consumption while maintaining fast access speed.
Solution Approach 2:
The patent implements preliminary action by pre-determining the optimal memory location for data storage based on the computing unit's physical location before data is actually needed. The packet processing device routes data to the correct memory location in advance, preventing cache misses and avoiding the need to fetch data from slower off-chip memory later.
2Quantity of substance
If data is stored off chip due to L3 cache overflow, then storage capacity is increased, but access distance increases and power consumption increases
Solution Approach 1:
The patent uses local quality to route data to specific local memory locations within the server architecture that are physically nearest to the computing unit. This maintains data storage within the chip whenever possible, avoiding off-chip storage and the associated high power consumption from long access distances.
Solution Approach 2:
The patent introduces a new dimension of physical location awareness into the data routing process. By considering the physical spatial dimension and routing data based on proximity to computing units, the system optimizes the balance between storage capacity utilization and power consumption, keeping frequently accessed data in on-chip memory.
3Device complexity
If packet processing device routes data randomly, then routing complexity is reduced, but cache miss rate increases and performance decreases
Solution Approach 1:
The patent implements self-service by enabling the packet processing device to autonomously determine optimal memory locations and route data accordingly, based on information about computing unit physical locations. This self-directed routing eliminates cache misses and improves performance without requiring complex external control mechanisms.
Solution Approach 2:
The system uses feedback about the physical locations of computing units to dynamically determine optimal data routing decisions. The packet processing device receives information about which computing units will process data and their physical locations, then uses this feedback to route data to the nearest memory location, optimizing performance.
Data Source
AI summary
A packet processing device, a method to be performed at the packet processing device, a computer-readable storage medium, and a computing system. The packet processing device is to determine a computing unit of the server architecture, the computing unit to execute a workload; receive a data packet including data to be used by the computing unit to execute the workload; determine, based on the computing unit to execute the workload, a memory of the server architecture to store the data for access by the computing unit to execute the workload; and route the data to the server architecture for storage at the memory.


