Winograd Convolution Partitioning to Cut Multiplier Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolution operations in convolution neural networks require numerous multipliers, leading to high overheads in timing, power consumption, and reduced processing efficiency when implemented in hardware.

Innovation Solution

The method involves splitting data into sub-tensors during winograd convolution operations, transforming these sub-tensors, and summing their results using multiple operation sub-apparatuses to reduce matrix multiplications, thereby improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If Winograd convolution algorithm is used to reduce computational complexity, then the number of multiplications is reduced, but the algorithm complexity increases due to additional data processing steps

Engineering Contradiction:
Improvecomputational complexityVSAvoidalgorithm complexity
Core Design Contradiction:
PowerVSDevice complexity

Solution Approach 1:

The patent segments the convolution operation into distinct phases: input data storage, Winograd transformation, coefficient calculation, and output generation. By dividing the computation into modular stages with specialized handling for each phase, the system reduces overall computational complexity while managing algorithmic complexity through structured organization of operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the convolution operation from standard form to Winograd form by changing the mathematical parameters and representation of the data. This parameter transformation reduces the number of multiplications required from O(n³) to O(n²), directly addressing computational complexity while the transformation itself manages algorithmic complexity through established mathematical relationships.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If more memory is used to store input data and intermediate results, then computational efficiency is improved, but memory resource consumption increases

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidmemory resource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent performs preliminary actions by pre-storing input data in memory before the convolution operation begins. This preliminary data preparation allows the main computation to proceed more efficiently by avoiding repeated data access and transformation operations, thereby improving computational efficiency while using memory resources strategically for data that will be reused multiple times.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4053746B1Winograd convolution operation method, apparatus, and device, and storage medium
Publication Date: 2026.05.06 CAMBRICON TECH CO LTD
  • EP4053746B1 patent drawingFigure 1~2
  • EP4053746B1 patent drawingFigure 3
  • EP4053746B1 patent drawingFigure 4

AI summary

The present disclosure provides a winograd convolution operation method, a winograd convolution operation apparatus, a device, and a storage medium. The apparatus includes: processors and a memory, where the memory is configured to store a program code, and the processors are configured to call the program code stored in the memory and execute the operation method. Through the operation method, a system, the device and the storage medium of the present disclosure, performance loss of a computer system may be reduced, and operation speed may be improved. Through the present disclosure, processing efficiency may be improved.