Abstract
We investigate efficient execution of computations, modeled as Directed Acyclic Graphs (DAGs), on a single processor with a two-level memory hierarchy, where there is a limited fast memory and a larger slower memory. Our goal is to minimize execution time by minimizing redundant data movement between fast and slow memory. We utilize a DAG partitioner that finds localized, acyclic parts of the whole computation that can fit into fast memory, and minimizes the edge cut among the parts. We propose a new scheduler that executes each part one-by-one, obeying the dependency among parts, aiming at reducing redundant data movement needed by cut-edges. Extensive experimental evaluation shows that the proposed DAG-based scheduler significantly reduces redundant data movement.
Keywords
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Akbudak, K., Kayaaslan, E., Aykanat, C.: Hypergraph partitioning based models and methods for exploiting cache locality in sparse matrix-vector multiplication. SIAM J. Sci. Comput. 35(3), C237–C262 (2013)
Aktulga, H.M., Buluç, A., Williams, S., Yang, C.: Optimizing sparse matrix-multiple vectors multiplication for nuclear configuration interaction calculations. In 2014 IEEE 28th International Parallel and Distributed Processing Symposium, pp. 1213–1222, May 2014
Belady, L.A.: A study of replacement algorithms for a virtual-storage computer. IBM Syst. J. 5(2), 78–101 (1966)
Bramas, B.: Impact study of data locality on task-based applications through the Heteroprio scheduler. PeerJ. Comput. Sci. 5, e190 (2019)
Chen, D., Liu, F., Ding, C., Pai, S.: Locality analysis through static parallel sampling. In: Proceedings of the 39th ACM SIGPLAN Conference on PLDI, pp. 557–570. ACM, New York (2018)
Davis, T.A., Hu, Y.: The University of Florida sparse matrix collection. ACM Trans. Math. Softw. 38(1), 1:1–1:25 (2011)
Dolan, E.D., Moré, J.J.: Benchmarking optimization software with performance profiles. Math. Program. 91(2), 201–213 (2002)
Fauzia, N., et al.: Beyond reuse distance analysis: dynamic analysis for characterization of data locality potential. ACM Trans. Archit. Code Optim. 10(4), 53:1–53:29 (2013)
Filippone, S., Cardellini, V., Barbieri, D., Fanfarillo, A.: Sparse matrix-vector multiplication on GPGPUs. ACM Trans. Math. Softw. 43(4), 30:1–30:49 (2017)
Fuller, S.H., Millett, L.I.: The Future of Computing Performance: Game Over or Next Level? National Academy Press, Washington DC (2011)
Gustedt, J., Jeannot, E., Mansouri, F.: Optimizing locality by topology-aware placement for a task based programming model. In: 2016 IEEE International Conference on Cluster Computing (CLUSTER), pp. 164–165, September 2016
Herrmann, J., Özkaya, M.Y., Uçar, B., Kaya, K., Çatalyürek, Ü.V.: Multilevel algorithms for acyclic partitioning of directed acyclic graphs. SIAM J. Sci. Comput. (SISC) 41(4), A2117–A2145 (2019)
Hollman, D.S., Bennett, J.C., Kolla, H., Lifflander, J., Slattengren, N., Wilke, J.: Metaprogramming-enabled parallel execution of apparently sequential C++ code. In: 2016 Second International Workshop on Extreme Scale Programming Models and Middleware (ESPM2), pp. 24–31, November 2016
Hong, C., Sukumaran-Rajam, A., Nisa, I., Singh, K., Sadayappan, P.: Adaptive sparse tiling for sparse matrix multiplication. In: Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming, PPoPP 2019, pp. 300–314. ACM, New York (2019)
Hu, X., Wang, X., Zhou, L., Luo, Y., Ding, C., Wang, Z.: Kinetic modeling of data eviction in cache. In: 2016 USENIX Annual Technical Conference (USENIX ATC 2016), Denver, CO, pp. 351–364. USENIX Association (2016)
Jacquelin, M., Marchal, L., Robert, Y., Uçar, B.: On optimal tree traversals for sparse matrix factorization. In: IPDPS 2011, pp. 556–567 (2011)
Jin, J., et al.: A data-locality-aware task scheduler for distributed social graph queries. Futur. Gener. Comput. Syst. 93, 1010–1022 (2019)
Kiani, M., Rajabzadeh, A.: Analyzing data locality in GPU kernels using memory footprint analysis. Simul. Model. Pract. Theory 91, 102–122 (2019)
Mayer, R., Mayer, C., Laich, L.: The tensorflow partitioning and scheduling problem: it’s the critical path! In: Proceedings of the 1st Workshop on Distributed Infrastructures for Deep Learning, DIDL 2017, pp. 1–6. ACM, New York (2017)
Naik, N.S., Negi, A., Tapas Bapu, B.R., Anitha, R.: A data locality based scheduler to enhance MapReduce performance in heterogeneous environments. Future Gener. Comput. Syst. 90, 423–434 (2019)
Ng, A.Y., Jordan, M.I., Weiss, Y.: On spectral clustering: analysis and an algorithm. In: Advances in Neural Information Processing System, pp. 849–856 (2002)
Page, L., Brin, S., Motwani, R., Winograd, T.: The PageRank citation ranking: Bringing order to the web. Technical report, Stanford InfoLab (1999)
Rogers, S., Tabkhi, H.: Locality aware memory assignment and tiling. In: 2018 55th ACM/ESDA/IEEE Design Automation Conference (DAC), June 2018
Sethi, R.: Complete register allocation problems. In: Proceedings of the 5th Annual ACM Symposium on Theory of Computing (STOC 1973), pp. 182–195 (1973)
Shalf, J., Dosanjh, S., Morrison, J.: Exascale computing technology challenges. In: Palma, J.M.L.M., Daydé, M., Marques, O., Lopes, J.C. (eds.) VECPAR 2010. LNCS, vol. 6449, pp. 1–25. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19328-6_1
Wold, S., Esbensen, K., Geladi, P.: Principal component analysis. Chemometr. Intell. Lab. Syst. 2(1–3), 37–52 (1987)
Xie, B., et al.: CVR: Efficient vectorization of SpMV on x86 processors. In: Proceedings of the 2018 International Symposium on Code Generation and Optimization, CGO 2018, pp. 149–162. ACM (2018)
Yzelman, A.N., Bisseling, R.H.: Two-dimensional cache-oblivious sparse matrix-vector multiplication. Parallel Comput. 37(12), 806–819 (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Özkaya, M.Y., Benoit, A., Çatalyürek, Ü.V. (2020). Improving Locality-Aware Scheduling with Acyclic Directed Graph Partitioning. In: Wyrzykowski, R., Deelman, E., Dongarra, J., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2019. Lecture Notes in Computer Science(), vol 12043. Springer, Cham. https://doi.org/10.1007/978-3-030-43229-4_19
Download citation
DOI: https://doi.org/10.1007/978-3-030-43229-4_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-43228-7
Online ISBN: 978-3-030-43229-4
eBook Packages: Computer ScienceComputer Science (R0)