TY - GEN
T1 - Parallelizing Compiler Translation Validation Using Happens-Before and Task-Set
AU - Han, Jixin
AU - Yuki, Tomofumi
AU - Mills Strout, Michelle
AU - Umeda, Dan
AU - Kasahara, Hironori
AU - Kimura, Keiji
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021
Y1 - 2021
N2 - Program optimization passes performed by an automatically parallelizing compiler require highly sophisticated transformations of a source program. The compiler must preserve the behavior of the source program with the parallelized program. However, the implementation of such optimization passes may introduce bugs, and detecting them is usually difficult. In this paper, based on a task graph obtained from a source program, we provide a translation validation technique, which validates that the task related program properties, such as partial order among tasks and task-set to be executed, are preserved before and after compiler transformations. These properties are derived from edges in the graph consisting of both data and control dependencies. The implemented translation validator is evaluated with the OSCAR parallelizing compiler using four C programs generated by Embedded Coder from MATLAB/Simulink models to show the feasibility of the validation.
AB - Program optimization passes performed by an automatically parallelizing compiler require highly sophisticated transformations of a source program. The compiler must preserve the behavior of the source program with the parallelized program. However, the implementation of such optimization passes may introduce bugs, and detecting them is usually difficult. In this paper, based on a task graph obtained from a source program, we provide a translation validation technique, which validates that the task related program properties, such as partial order among tasks and task-set to be executed, are preserved before and after compiler transformations. These properties are derived from edges in the graph consisting of both data and control dependencies. The implemented translation validator is evaluated with the OSCAR parallelizing compiler using four C programs generated by Embedded Coder from MATLAB/Simulink models to show the feasibility of the validation.
KW - compiler
KW - data-flow
KW - task-graph
KW - verification
UR - http://www.scopus.com/inward/record.url?scp=85124131928&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85124131928&partnerID=8YFLogxK
U2 - 10.1109/CANDARW53999.2021.00022
DO - 10.1109/CANDARW53999.2021.00022
M3 - Conference contribution
AN - SCOPUS:85124131928
T3 - Proceedings - 2021 9th International Symposium on Computing and Networking Workshops, CANDARW 2021
SP - 87
EP - 93
BT - Proceedings - 2021 9th International Symposium on Computing and Networking Workshops, CANDARW 2021
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 9th International Symposium on Computing and Networking Workshops, CANDARW 2021
Y2 - 23 November 2021 through 26 November 2021
ER -