Partial Coalescing of Transmit Buffers to Reduce Network Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network devices face performance issues due to the inefficiencies in handling small amounts of data scattered across multiple buffers and excessive coalescing of data into single buffers, leading to processing overhead that can decrease network throughput.

Innovation Solution

The solution involves partially coalescing transmit buffers by analyzing packets and combining smaller buffers into larger contiguous ones, optimizing buffer management to improve network throughput without excessive processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is scattered in several small buffers, then memory utilization is improved, but network device performance deteriorates due to multiple buffer accesses

Engineering Contradiction:
Improvememory utilizationVSAvoidnetwork device performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent combines multiple small data buffers into a single larger buffer structure that the network device can access in one operation. This merging eliminates the performance penalty of multiple separate buffer accesses while maintaining efficient memory utilization through the consolidated buffer management approach.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If all data is coalesced into a single buffer, then network device performance is improved, but processing overhead increases

Engineering Contradiction:
Improvenetwork throughputVSAvoidprocessing overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies partial coalescing rather than complete coalescing of all buffers. It selectively combines buffers based on criteria such as data size and buffer characteristics, achieving sufficient performance improvement without the excessive processing overhead that would result from coalescing every buffer into a single structure.

Inventive Principle:
Principle #16Partial or excessive action

3Ease of operation

If interrupt is issued after fixed number of bytes received, then processing simplicity is improved, but responsiveness to actual packet completion deteriorates

Engineering Contradiction:
Improveprocessing simplicityVSAvoidpacket processing delay
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements an interrupt mechanism that provides feedback about actual packet reception status. Instead of relying solely on fixed byte counts, the system monitors actual packet completion and adjusts interrupt timing accordingly, maintaining simplicity while improving responsiveness to real packet boundaries.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS7958255B1Partial coalescing of transmit buffers
Publication Date: 2011.06.07 ADVANCED MICRO DEVICES INC
  • US7958255B1 patent drawing
  • US7958255B1 patent drawing
  • US7958255B1 patent drawing

AI summary

The present invention facilitates overall system performance by balancing system resource utilization and network throughput. The invention analyzes packets received from host software selects one or more of buffers to coalesce into a single, coalesced buffer. The selection is based upon an initial fragment size selected to facilitate overall system performance. The coalesced buffer and non-coalesced buffers, are passed to a network device for transmission.