Parallelization Tool for Multicore Microcomputers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing parallelization methods struggle to accurately analyze dependencies between processes using both address and symbol specifications, leading to errors in determining data access and parallelization, which affects the generation of reliable parallel programs for multicore microcomputers.
Innovation Solution
A method that extracts and associates addresses and symbol names of accessed data items, allowing for accurate dependency analysis between processes, thereby determining parallelizable processes and generating error-free parallel programs for multicore microcomputers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If dependency analysis is performed using both address specification and symbol specification, then more data access patterns can be analyzed, but errors arise in determining whether processes access the same data
Solution Approach 1:
The patent introduces an intermediary mechanism (address-symboI association table) that maps symbol names to their corresponding memory addresses. This mediator enables the system to resolve and compare data references regardless of whether they are specified by address or symbol, thereby maintaining reliability while supporting both specification methods.
Solution Approach 2:
The patent performs preliminary action by pre-establishing the association between symbol names and memory addresses before dependency analysis. The address-symbol association table is constructed in advance, allowing the system to quickly resolve symbol references to their actual memory addresses during dependency analysis, thus preventing errors.
2Productivity
If parallelization is attempted without accurate dependency analysis, then program execution speed may improve, but errors in dependency determination lead to incorrect parallelization
Solution Approach 1:
The address-symbol association table serves as a mediator that enables accurate comparison of data references across different specification methods. This ensures that dependency analysis correctly identifies when processes access the same data, preventing incorrect parallelization while still enabling speed improvements through valid parallelization opportunities.
Solution Approach 2:
The patent replaces the mechanical/naive approach of directly comparing address and symbol specifications with a systematic substitution method. By substituting symbol names with their corresponding addresses through the association table, the system creates a unified basis for dependency comparison, ensuring correctness.
3Device complexity
If address and symbol specifications are treated as equivalent without verification, then dependency analysis becomes simpler, but errors arise in determining data access equivalence
Solution Approach 1:
The patent performs preliminary verification by pre-building the address-symbol association table that stores the mapping relationships. This preliminary action enables the system to precisely determine data access equivalence by looking up symbol-to-address mappings, rather than making unverified assumptions about equivalence.
Solution Approach 2:
The patent creates a copied representation of the address-symbol relationships in the association table. This copy allows the system to verify equivalence by comparing against the stored mappings, ensuring measurement precision while maintaining manageable complexity through structured data organization.
Data Source
AI summary
A method is for generating a parallel program for a multicore microcomputer from processes in a single program for a single core. The method includes extraction procedure, association procedure, and analysis procedure. The extraction procedure extracts (i) an extracted address of an accessed data item, which is among data items stored in a storage area together with the processes and accessed when each process is executed and (ii) an extracted symbol name of the accessed data item. The association procedure associates an associated address in the storage area storing the accessed data item of the extracted symbol name with the extracted symbol name. The analysis procedure analyzes a dependency between each process based on the extracted address and the associated address, and determines that two processes accessing an identical address have a dependency while determining that two processes not accessing an identical address have no dependency.


