Efficient linker design method based on multi-thread collaborative optimization

Through multi-threaded collaborative optimization design, dynamic task division and hierarchical symbol table, the performance bottlenecks of traditional linkers in a multi-core environment are solved, efficient linking and resource optimization are achieved, and suitable for large-scale software projects and high-performance computing.

CN120276848APending Publication Date: 2025-07-08FUDAN UNIVERSITY
0 Cites 0 Cited by

Patent Information

Application Number
CN202510369162.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-27
Publication Date
2025-07-08

AI Technical Summary

Technical Problem

Traditional linkers fail to make full use of parallel computing power in a multi-core processor environment, resulting in a long linking process for large-scale software projects, and existing optimization methods fail to effectively solve the problems of thread competition and resource waste.

Method used

Multi-threaded collaborative optimization design is adopted, and dynamic task division, hierarchical symbol table and segmented relocation table are combined with collaborative optimization between compiler and linker to form a closed-loop optimization system to reduce thread competition and improve concurrency performance.

Benefits of technology

It significantly shortens link time, reduces memory usage, and improves resource utilization, and is suitable for large-scale software projects and high-performance computing scenarios.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The invention relates to an efficient linker design method based on multi-thread collaborative optimization. Firstly, dynamic task division and priority queue scheduling are adopted, the link process is decomposed into a plurality of task units capable of being executed in parallel, and the computing power of a multi-core processor is fully utilized. Secondly, a hierarchical symbol table is introduced, hot symbols are stored in a lockless hash table, cold data are stored in a read-write lock protected red-black tree, thread competition is effectively reduced, and efficient concurrent access is achieved; and meanwhile, a sectional relocation table and a progress counter supported by atomic operation are adopted, so that the concurrency performance is further improved. And finally, generating an intermediate file with a dependency label through a compiler, pre-obtaining a symbol dependency relationship and a dependency graph between modules, avoiding repeated analysis, and designing a dynamic feedback mechanism, so that the linker can feed back optimization data to the compiler to form a closed-loop optimization system. The method is suitable for large-scale projects and high-performance computing scenes, and the resource utilization rate is optimized while the link speed is increased.
Need to check novelty before this filing date? Find Prior Art