Loop Fusion Strategy Based on Data Reuse Analysis in Polyhedral Compilation
Existing polyhedral compilation tools often use some simple heuristic strategies to find the optimal loop fusion decisions.It is necessary to manually adjust the loop fusion strategy to get the best performance for different programs.To solve this problem, a fusion strategy based on data reuse analy...
Saved in:
Published in | Ji suan ji ke xue Vol. 48; no. 12; pp. 49 - 58 |
---|---|
Main Authors | , , , |
Format | Journal Article |
Language | Chinese |
Published |
Chongqing
Guojia Kexue Jishu Bu
01.12.2021
Editorial office of Computer Science |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Summary: | Existing polyhedral compilation tools often use some simple heuristic strategies to find the optimal loop fusion decisions.It is necessary to manually adjust the loop fusion strategy to get the best performance for different programs.To solve this problem, a fusion strategy based on data reuse analysis is proposed for multi-core CPU platform.This strategy avoids unnecessary fusion constraints that affecting the mining of data locality.For different stages of scheduling, the parallelism constraint for diffe-rent parallel levels is proposed.And a tiling constraint for CPU cache optimization is proposed for statements with complex array accesses.Compared with the previous loop fuion strategies, this strategy takes into account the changes in spatial locality when calculating the fusion profits.This strategy is implemented based on the polyhedral compilation module Polly in the LLVM compilation framework, and some test cases in test suites such as Polybench are selected for testing.In the case of single-core test |
---|---|
ISSN: | 1002-137X |
DOI: | 10.11896/jsjkx.210200071 |