Abstract
AbstractCode instrumentation is the primary method for collecting fine-grained performance data. As instrumentation introduces an inherent runtime overhead, it is essential to measure only those regions of the code which are most relevant to the analysis. In practice, the typical approach is to define filter lists manually. Prior projects aim to automate this process using static analysis. Specifically, InstRO enables tailored instrumentation via sophisticated user-defined selection of code regions. However, due to the need for whole-program call-graph analysis, its application on large-scale scientific codes is currently impractical. In this work, we present the new instrumentation tool CaPI (short for “Compiler-assisted Performance Instrumentation”), which is targeted towards such large-scale applications. We demonstrate its application on the CFD framework OpenFOAM. Our evaluation shows that a hybrid approach of CaPI and existing profile-guided filtering outperforms profile-guided filtering alone. Furthermore, we identify correctness and usability issues and propose possible avenues to improve CaPI, as well as compiler-assisted instrumentation tools in general.
Publisher
Springer International Publishing
Reference26 articles.
1. Berris, D.M., Veitch, A., Heintze, N., Anderson, E., Wang, N.: XRay: a function call tracing system (2016). https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/45287.pdf
2. Bnà, S., Spisso, I., Olesen, M., Rossi, G.: PETSc4FOAM: a library to plug-in PETSc into the OpenFOAM Framework. PRACE White paper (2020)
3. Buck, B.R.: An API for runtime code patching. Int. J. High Perform. Comput. Appl. 14(4), 317–329 (2000). https://doi.org/10.1177/109434200001400404
4. Calotoiu, A., et al.: Fast multi-parameter performance modeling. In: 2016 IEEE International Conference on Cluster Computing (CLUSTER), pp. 172–181. IEEE, September 2016. https://doi.org/10.1109/CLUSTER.2016.57
5. Calotoiu, A., Hoefler, T., Poke, M., Wolf, F.: Using automated performance modeling to find scalability bugs in complex codes. In: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, SC 2013, pp. 45:1–45:12. ACM, New York (2013). https://doi.org/10.1145/2503210.2503277
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Runtime-Adaptable Selective Performance Instrumentation;2023 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW);2023-05