Abstract
Embedded multi-core systems often show special limitations in sharing resources and storage capacity, which will lead to the reduction of parallel efficiency due to bandwidth, data competition and other factors. In this paper, a run-time optimization framework is proposed to dynamically and adaptively adjust parallel strategies according to the structure of different parallel programs. On the one hand, the performance analysis model of a parallel program structure is established to get the number of threads during the best performance. On the other hand, in view of the load imbalance in parallel thread execution, an adaptive dynamic scheduling algorithm is proposed to dynamically select the size of the scheduling block. Experimental results show that the proposed dynamic scheduling strategy can improve program performance and achieve improvement of the performance of the embedded multi-core system.
Background: Embedded multi-core systems often have special limitations in sharing resources and storage capacity. These limitations often lead to parallel programs running with lower parallel efficiency due to bandwidth, data competition and other factors.
Objective: In order to improve the performance of embedded multi-core systems, parallel strategies can be adjusted dynamically and adaptively for different parallel program structures.
Methods: A control mechanism of the thread count based on runtime information feedback is proposed, which enables the system to dynamically select the number of threads when the program runs best according to the structure characteristics of parallel programs. Then, an adaptive dynamic scheduling algorithm is proposed to solve the load imbalance in parallel program execution.
Results: An optimization framework based on run-time architecture is presented, which consists of two parts: performance monitoring and control interface. It can take corresponding optimization strategies according to the running state of parallel programs.
Conclusion: The performance of the embedded multi-core system is improved.
Keywords: Adaptive dynamic algorithm, embedded multi-core system, open multi-processing, optimization strategy, parallel optimization, runtime.
Graphical Abstract
[http://dx.doi.org/10.1145/511399.511343]
[http://dx.doi.org/10.1145/225830.223990]