A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2019; you can also visit the original URL.
The file type is
We present an approach to optimize the cache locality for recursive programs by dynamically splicing-recursively interleaving-the execution of distinct function invocations. By utilizing data effect annotations, we identify concurrency and data reuse opportunities across function invocations and interleave them to reduce reuse distance. We present algorithms that efficiently track effects in recursive programs, detect interference and dependencies, and interleave execution of functiondoi:10.1145/3062341.3062385 dblp:conf/pldi/LifflanderK17 fatcat:r24zpnzwbnexffnu6gga72nxoq