Abstract
Stencil patterns are widely used in scientific simulations and image processing. To parallelize these problems, we have to divide data into chunks that are processed by different processors. One challenge with this approach is the update of ghost cells, which are the neighbor values that calculated on remote processes. This paper focus on the update communication. We provide an abstract array types to describe distribution patterns, such as ghost cells, from global and intuitive view. Based on this description, a general copyto function is provided to perform communication automatically. Furthermore, our work makes it possible to design a distribution-independent algorithm. This results in better productivity on tuning performance.
Supported by National Key R&D Program of China under Grants No. 2016YFB0200502; and National Natural Science Foundation of China Grants No. 61672208, 61432018.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Kjolstad, F.B., Snir, M.: Ghost cell pattern. In: Proceedings of the 2010 Workshop on Parallel Programming Patterns. ACM (2010)
Gropp, W., Thakur, R., Lusk, E.: Using MPI- 2: Advanced Features of the Message Passing Interface. MIT Press, Cambridge (1999)
Gropp, W., Lusk, E., Swider, D.: Improving the performance of MPI derived datatypes. In: Third MPI Developer’s and User’s Conference (MPIDC 1999) (1999)
Hou, C., Xu, J., Wang, P., et al.: Petascale molecular dynamics simulation of crystalline silicon on Tianhe-1A. Int. J. High Perform. Comput. Appl. 27(3), 307–317 (2013)
Draper, J.M., Culler, D.E., Yelick, K.: Introduction to UPC and Language Specification. Center for Computing Sciences, Institute for Defense Analyses (1999)
Numrich, R.W., Reid, J.K.: Co-arrays in the next fortran standard. ACM SIGPLAN Fortran Forum 24(2), 4–17 (2005)
Chen, Y., Cui, X., Mei, H.: PARRAY: a unifying array representation for heterogeneous parallelism. ACM SIGPLAN Symp. Princ. Pract. Parallel Program. 47(8), 171–180 (2012)
Thakur, R., Rabenseifner, R., Gropp, W.: Optimization of collective communication operations in MPICH. Int. J. High Perform. Comput. Appl. 19(1), 49–66 (2005)
Zhang, N., Driscoll, M., Markley, C.: Snowflake: a lightweight portable stencil DSL. Lawrence Berkeley National Laboratory (2017). https://escholarship.org/uc/item/45w9j3z0
Zhu, X., Zhang, J., Yoshii, K.: Analyzing MPI-3.0 process-level shared memory: a case study with stencil computations. In: 2015 15th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (CCGrid), pp. 1099–1106 (2015)
Rawat, P., Kong, M., Henretty, T.: SDSLc: a multi-target domain-specific compiler for stencil computations. In: Proceedings of the 5th International Workshop on Domain-Specific Languages and High-Level Frameworks for High Performance Computing. ACM (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Zhang, S., Wang, B., Chen, Y. (2018). Abstract Parallel Array Types and Ghost Cell Update Implementation. In: Vaidya, J., Li, J. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2018. Lecture Notes in Computer Science(), vol 11334. Springer, Cham. https://doi.org/10.1007/978-3-030-05051-1_37
Download citation
DOI: https://doi.org/10.1007/978-3-030-05051-1_37
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-05050-4
Online ISBN: 978-3-030-05051-1
eBook Packages: Computer ScienceComputer Science (R0)