Convolution Tensor Tiling With Read-Modify-Write Boundary Handling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Processing large-sized images in machine learning models, such as Convolutional Neural Networks, is computationally expensive and inefficient, often requiring significant memory and computational resources, and existing methods like downsampling or patch-based approaches lead to information loss or annotation complications.
Innovation Solution
Implementing a read-modify-write operation for lossless tiling in convolution networks, where tensors are divided into non-overlapping or partially overlapping tiles, allowing efficient processing by reconfigurable data processors with improved read-modify-write operations to manage tile boundaries and reduce computational burden.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If large-sized images are processed directly in convolution networks, then processing accuracy is maintained, but computational complexity and resource requirements increase significantly
Solution Approach 1:
The patent divides large images into smaller tiles or patches that can be processed independently by convolution networks. This segmentation allows the system to maintain processing accuracy on each tile while reducing the computational complexity burden on any single processing unit. The tiles are then reassembled to form the complete processed image.
2Productivity
If downsampling is applied to reduce computational burden, then processing speed increases, but information loss occurs
Solution Approach 1:
Instead of downsampling the entire image, the patent segments the image into tiles and processes each tile at full resolution. This approach maintains information integrity while enabling parallel processing that improves overall processing speed. Each tile retains its original detail and quality.
3Productivity
If patch-based approaches are used to divide images, then computational efficiency improves, but annotation complications arise
Solution Approach 1:
The patent implements a systematic tiling approach where images are divided into regular grid patterns with defined overlap regions. This structured segmentation simplifies annotation by providing consistent spatial relationships between tiles, making it easier to transfer annotations from full images to individual tiles and back.
Solution Approach 2:
The patent combines multiple processed tiles back into a complete image, ensuring that annotations and processing results are properly integrated. This merging process maintains the relationship between tile-level processing and image-level annotations, reducing annotation complexity.
4Quantity of substance
If tiling is applied to divide tensors, then memory requirements are reduced, but read-modify-write operations at tile boundaries increase computational overhead
Solution Approach 1:
The patent applies partial overlap between adjacent tiles, where the overlap region is processed multiple times (read-modify-write operations). This excessive processing at boundaries ensures that boundary elements are correctly computed by multiple neighboring tiles, maintaining accuracy while the overlap strategy actually reduces overall computational overhead by eliminating the need for complex boundary handling.
Data Source
AI summary
A data processing system that implements an improved read-modify-write operation for lossless tiling in convolution networks is presented. The data processing system includes runtime logic that is configured to execute a graph to generate at the output of the graph, a plurality of tiles of a tensor, initialize a memory comprising all zeros for storing the plurality of tiles, determine a current memory region in the memory for storing a current tile of the plurality of tiles, wherein the current memory region comprises an overlapping memory region that stores data from write operations of previously stored neighboring tiles of the plurality of tiles and a remaining memory region, and perform a read-modify-write operation on the data from the overlapping memory region using the data from the overlapping memory region and first tile data of the current tile for storing in the overlapping memory region.


