TY - GEN
T1 - Exploiting the correlation between dependence distance and latency in loop pipelining for HLS
AU - Cheng, Jianyi
AU - Wickerson, John
AU - Constantinides, George A.
PY - 2021/10/12
Y1 - 2021/10/12
N2 - High-level synthesis (HLS) automatically transforms high-level programs in a language such as C/C++ into a low-level hardware description. In this context, loop pipelining is a key optimisation method for improving hardware performance. The main performance bottleneck of a pipelined loop is the ratio between two values: the latency of each iteration and the dependence distance of the operations in the loop. These two values are usually not known exactly, so existing HLS schedulers model them independently, which can cause sub-optimal performance. This paper extends state-of-the-art static schedulers with a fully automated pass that exposes and takes advantage of potential correlation between these two values, enabling smaller initiation intervals (II). We use the Microsoft Boogie software verifier to prove the existence of these correlations, which allows HLS tools to automatically find a high-performance hardware solution while maintaining correctness. Our results show that for a certain class of programs, our approach achieves, on average, an 11.1× performance gain at the cost of a 95% area overhead.
AB - High-level synthesis (HLS) automatically transforms high-level programs in a language such as C/C++ into a low-level hardware description. In this context, loop pipelining is a key optimisation method for improving hardware performance. The main performance bottleneck of a pipelined loop is the ratio between two values: the latency of each iteration and the dependence distance of the operations in the loop. These two values are usually not known exactly, so existing HLS schedulers model them independently, which can cause sub-optimal performance. This paper extends state-of-the-art static schedulers with a fully automated pass that exposes and takes advantage of potential correlation between these two values, enabling smaller initiation intervals (II). We use the Microsoft Boogie software verifier to prove the existence of these correlations, which allows HLS tools to automatically find a high-performance hardware solution while maintaining correctness. Our results show that for a certain class of programs, our approach achieves, on average, an 11.1× performance gain at the cost of a 95% area overhead.
KW - formal methods
KW - high-level synthesis
KW - loop pipelining
UR - http://www.scopus.com/inward/record.url?scp=85125801004&partnerID=8YFLogxK
U2 - 10.1109/FPL53798.2021.00066
DO - 10.1109/FPL53798.2021.00066
M3 - Conference contribution
AN - SCOPUS:85125801004
SN - 9781665442435
T3 - Proceedings of the International Conference on Field-Programmable Logic and Applications
SP - 341
EP - 346
BT - 2021 31st International Conference on Field-Programmable Logic and Applications
PB - Institute of Electrical and Electronics Engineers
T2 - 31st International Conference on Field-Programmable Logic and Applications
Y2 - 30 August 2021 through 3 September 2021
ER -