2D CNN Kernel Tiling With Overlap Rows to Cut IFM I/O

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The implementation of Convolution Neural Networks (CNNs) in real-time applications faces challenges due to high computational requirements and significant data transfer bottlenecks, particularly in the transfer of input feature maps (IFMs) to and from larger memory units, which necessitates segmentation into multiple tiles and multiple fetches of IFM rows for kernel calculations, leading to an input/output (I/O) bottleneck.

Innovation Solution

A method is introduced where overlap rows of the current IFM tile are fetched once and maintained in a buffer until the completion of calculations for the next IFM tile, reducing the need for repeated fetching and enhancing buffer utilization by using a cyclic buffer mechanism.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the input feature map is segmented into multiple tiles to fit the buffer, then the buffer can be utilized, but the I/O bandwidth traffic increases due to multiple fetches

Engineering Contradiction:
Improvebuffer utilizationVSAvoidI/O bandwidth traffic
Core Design Contradiction:
Ease of operationVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by fetching and storing overlap rows of the input feature map into the buffer before they are actually needed for computation. By pre-loading these overlapping rows that will be required for both current and next tile calculations, the system avoids repeated I/O operations during the computation phase, thereby reducing overall I/O bandwidth traffic while maintaining effective buffer utilization

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the input feature map into multiple tiles for processing, but introduces an overlap region between adjacent tiles. This segmentation strategy allows the buffer to be efficiently utilized for each tile while the overlap rows serve as a shared resource between tiles, reducing the total number of fetch operations required compared to non-overlapping segmentation

Inventive Principle:
Principle #1Segmentation

2Productivity

If rows are fetched multiple times for different OFM tiles, then calculations for multiple tiles can be completed, but the I/O bottleneck worsens

Engineering Contradiction:
Improvecalculation completionVSAvoidI/O bottleneck
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements discarding and recovering by allowing the buffer to be overwritten with new tile data after the overlap rows have been utilized for computation. The overlap rows are effectively 'recovered' and reused for the next tile's calculations, while non-overlap rows are discarded and replaced. This cyclic reuse pattern minimizes repeated fetching from external memory, reducing I/O bottleneck and processing time

Inventive Principle:
Principle #34Discarding and recovering

Solution Approach 2:

The patent ensures continuity of useful action by maintaining the overlap rows in the buffer continuously across tile boundaries. Instead of completing one tile calculation and then fetching data for the next tile, the overlap rows remain available in the buffer, allowing computation to proceed continuously without I/O interruptions, thereby reducing the I/O bottleneck

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12481878B2Applying a two dimensional (2D) kernel on an input feature map
Publication Date: 2025.11.25 MOBILEYE VISION TECH LTD
  • US12481878B2 patent drawing
  • US12481878B2 patent drawing
  • US12481878B2 patent drawing

AI summary

A method, integrated circuit, and a computer readable medium that stores instructions for reducing IO traffic from a global or remote memory unit to a buffer of a neural network unit, by using overlap rows of an input feature map tile.