An instrumentation framework for performance analysis of halide schedules

Ravedutti Lucio Machado R, Eitzinger J, Murbach Maidl A, Weingaertner D (2021)

Publication Language: English

Publication Type: Journal article, Original article

Publication year: 2021


Original Authors: Rafael Ravedutti L. Machado, Jan Eitzinger, Andre Murbach Maidl, Daniel Weingaertner

Pages Range: 101065

Article Number: 101065

DOI: 10.1016/j.cola.2021.101065


This work extends Halide with a profiling API to measure events supported by the target processor during the application runtime. We demonstrate how developers can use this extension to profile application loop levels, functions’ producer and consumer relations, and threads on parallel regions. We also show that the extension is library agnostic, hence developers can choose the profiling library that best suits their environment. As a case study we measure data traffic, number of flops and clock-cycles per instruction on x86 processors, and discuss how the reported results can be used to detail the performance aspects and improve Halide schedules.

Authors with CRIS profile

Involved external institutions

How to cite


Ravedutti Lucio Machado, R., Eitzinger, J., Murbach Maidl, A., & Weingaertner, D. (2021). An instrumentation framework for performance analysis of halide schedules. Journal of Computer Languages, 101065.


Ravedutti Lucio Machado, Rafael, et al. "An instrumentation framework for performance analysis of halide schedules." Journal of Computer Languages (2021): 101065.

BibTeX: Download