Dynamic On-Chip Storage Format Control for Many-Core Neural Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In many-core systems, especially when mapping neural network models like VGG or ResNet using RISCV as a core controller, the storage management is inefficient, leading to potential over-limit storage space and stack overflow issues due to the inability to dynamically adjust the storage format based on usage.
Innovation Solution
A method and device for controlling the storage format of on-chip storage resources in many-core systems, which involves generating and parsing on-chip storage resources, adjusting the storage format based on occupied space, and utilizing different storage formats such as two-dimensional arrays, char type data, and bit-level storage to optimize space usage and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a fixed storage format is used for on-chip storage resources in many-core systems, then the system structure is simple and easy to manage, but the storage space cannot be optimized leading to over-limit conditions and stack overflow
Solution Approach 1:
The patent implements dynamic storage format adjustment by introducing a storage format selection mechanism that adapts to different neural network model requirements. The system dynamically chooses between different storage formats (such as contiguous memory layout or scattered memory layout) based on the specific characteristics of the neural network model being deployed, allowing the storage structure to transition from static to dynamic to prevent over-limit conditions while maintaining reasonable system complexity
Solution Approach 2:
The patent changes storage parameters (such as memory allocation size, storage format type) based on the analysis of neural network model characteristics. By analyzing the computational patterns and memory access requirements of different neural network models, the system adjusts storage parameters optimally for each model, preventing both storage overflow and inefficient memory usage
2Reliability
If storage space is allocated generously to avoid overflow, then stack overflow is prevented, but storage resource waste occurs and operation efficiency decreases
Solution Approach 1:
The patent performs preliminary analysis of neural network model characteristics before deployment to the many-core system. By pre-analyzing the memory requirements, computational patterns, and data flow of the neural network model, the system can allocate storage resources appropriately in advance, avoiding both over-allocation (which wastes resources) and under-allocation (which causes stack overflow), thus optimizing operation efficiency from the start
Solution Approach 2:
The patent implements a feedback mechanism that monitors actual storage usage during neural network model execution. Based on this feedback information, the system can adjust storage allocation and format dynamically, ensuring that storage resources are used efficiently without wasting space while maintaining reliability by preventing stack overflow conditions
3Device complexity
If uniform storage management is applied to all processing cores, then system management is simplified, but individual core optimization is prevented leading to suboptimal performance
Solution Approach 1:
The patent applies local quality optimization by allowing each processing core to have its storage format and allocation strategy tailored to the specific neural network model it executes. Instead of a one-size-fits-all approach, the system analyzes the characteristics of each core's workload and configures storage resources locally optimized for that specific task, maximizing the performance of each processing core while maintaining overall system coherence
Data Source
AI summary
The present application provides a method and a device for controlling a storage format of an on-chip storage resource, the method for controlling the storage format of the on-chip storage resource includes: while mapping a neural network model to a many-core system, generating an on-chip storage resource of each processing core in the many-core system, and storing the on-chip storage resource into a specified file; and parsing out a storage format of the on-chip storage resource based on the specified file, obtaining occupied storage space of each processing core, and adjusting the storage format of the on-chip storage resource of each processing core based on the occupied storage space of each processing core.


