Automatic Tracing in Task-Based Runtime SystemsShow others and affiliations
2025 (English)In: ASPLOS 2025 - Proceedings of the 30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Association for Computing Machinery (ACM) , 2025, p. 84-99Conference paper, Published paper (Refereed)
Abstract [en]
Implicitly parallel task-based runtime systems often perform dynamic analysis to discover dependencies in and extract parallelism from sequential programs. Dependence analysis becomes expensive as task granularity drops below a threshold. Tracing techniques have been developed where programmers annotate repeated program fragments (traces) issued by the application, and the runtime system memoizes the dependence analysis for those fragments, greatly reducing overhead when the fragments are executed again. However, manual trace annotation can be brittle and not easily applicable to complex programs built through the composition of independent components. We introduce Apophenia, a system that automatically traces the dependence analysis of task-based runtime systems, removing the burden of manual annotations from programmers and enabling new and complex programs to be traced. Apophenia identifies traces dynamically through a series of dynamic string analyses, which find repeated program fragments in the stream of tasks issued to the runtime system. We show that Apophenia is able to come between 0.92x - 1.03x the performance of manually traced programs, and is able to effectively trace previously untraced programs to yield speedups of between 0.91x - 2.82x on the Perlmutter and Eos supercomputers.
Place, publisher, year, edition, pages
Association for Computing Machinery (ACM) , 2025. p. 84-99
Keywords [en]
dynamic analysis, runtime systems, tracing
National Category
Computer Sciences Computer Systems
Identifiers
URN: urn:nbn:se:kth:diva-362694DOI: 10.1145/3669940.3707237Scopus ID: 2-s2.0-105002385022OAI: oai:DiVA.org:kth-362694DiVA, id: diva2:1954136
Conference
30th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2025, Rotterdam, Netherlands, Kingdom of the, Mar 30 2025 - Apr 3 2025
Note
Part of ISBN 9798400706981
QC 20250428
2025-04-232025-04-232025-04-28Bibliographically approved