Cache Line Information Display for Linker Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional program control methods fail to effectively identify and optimize cache conflicts between functions or variables sharing the same cache line, leading to difficulties in reducing cache misses in C language programs.
Innovation Solution
A program control device and method that generates and displays cache line information with symbolic and memory address information, merging it with cache performance data to facilitate the identification and rearrangement of functions causing cache conflicts, thereby optimizing linker options to reduce cache misses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If conventional program control methods are used to display cache performance information, then cache hit rate and cache miss rate can be displayed, but cache conflicts between functions or variables sharing the same cache line cannot be effectively identified
Solution Approach 1:
The patent segments cache information into two distinct components: cache performance information (hit rate, miss rate) and cache line information (symbolic names, memory addresses, cache line numbers). This segmentation allows the system to display both aggregate performance metrics and detailed cache line assignments, enabling identification of cache conflicts while maintaining a manageable display structure.
Solution Approach 2:
The patent introduces cache line information as an intermediary that connects cache performance information with program structure information. By displaying cache line numbers and symbolic names together, the system creates a bridge between performance metrics and the underlying code structure, allowing users to identify which functions or variables are causing cache conflicts.
2Reliability
If the cache capacity is increased to store more data, then cache hit rate improves, but the small capacity constraint of high-speed cache memory cannot be overcome
Solution Approach 1:
The patent enables preliminary identification of cache conflicts through detailed cache line information display. By showing which functions or variables share the same cache line before program execution, developers can proactively rearrange code or data layout to avoid conflicts, thereby improving cache hit rate without increasing physical cache capacity.
Solution Approach 2:
The patent changes the approach from modifying physical cache parameters (capacity, size) to modifying program structure parameters (function arrangement, variable placement, linker options). By displaying cache line information with symbolic names, the system enables software-level optimizations that improve cache efficiency without hardware changes.
3Ease of operation
If program control methods are simplified to reduce complexity, then ease of operation improves, but the ability to identify and optimize cache conflicts is lost
Solution Approach 1:
The patent merges cache performance information with cache line information in a unified display. By combining hit/miss rates with cache line numbers and symbolic names in the same interface, the system provides both high-level performance overview and detailed conflict identification without requiring separate tools or complex operations.
Solution Approach 2:
The patent creates a multi-functional display system that simultaneously serves as a performance monitor (showing hit/miss rates) and a conflict analyzer (showing cache line assignments with symbolic names). This universal tool eliminates the need for separate analysis methods while maintaining ease of operation through a single integrated interface.
Data Source
AI summary
Disclosed is a program control device for managing cache information and generating an optimum linker option to thereby improve use efficiency of a cache memory. A cache line information generating section is formed which, when a target program is loaded into a main memory, generates cache line information. Therefore, the cache line information having memory address information and symbolic information in a function of the target program in a cache line can be displayed with cache performance information. Accordingly, functions causing a cache conflict can be easily specified and rearranged by a linker option so as not to share the same cache line. As a result, the cache misses can be reduced.


