Parallel Processing Transport Model MT3DMS by Using OpenMP
Abstract
:1. Introduction
2. Methodology
2.1. The Governing Equation and the Analysis of Time Consumption for MT3DMS
2.2. Speedup of Parallelization
2.3. OpenMP Programming Paradigm
2.4. Parallelization of MT3DMS Using OpenMP
2.4.1. Analysis of Parallelization
2.4.2. Data Sharing Attribute Clauses
2.4.3. Reduction Clause
2.4.4. Grain Size
2.4.5. Other Issues Need Be Addressed for Parallelization
- The time-stepping loops and iteration loops are not parallelizable because the results are interconnected between two successive time steps and iterations.
- The code enclosed in a parallel region must be a structured block of code. That is, it is not allowed to jump in or out of a given parallel region, for example, by using a GOTO command.
3. Performance Results
3.1. Benchmark Test 1
3.1.1. Comparison between Parallel MT3DMS and Serial MT3DMS
3.1.2. Comparison between Three GCG Preconditioning Options
3.2. Benchmark Test 2
3.2.1. Parallelizing the K Loop
3.2.2. Parallelizing the I Loop
4. Conclusions
Author Contributions
Acknowledgments
Conflicts of Interest
References
- Wu, Y.S.; Lu, G.; Zhang, K.; Bodvarsson, G.S. Modeling unsaturated flow and transport processes in fractured tuffs of yucca mountain. Vadose Zone J. 2003, 3, 796–805. [Google Scholar] [CrossRef]
- Zhang, K.; Zhang, K.; Wu, Y.S.; Pruess, K. User’s Guide for TOUGH2-MP—A Massively Parallel Version of the TOUGH2 Code; Lawrence Berkeley National Laboratory: Berkeley, CA, USA, 2008.
- Anderson, M.P.; Woessner, W.W.; Hunt, R.J. Applied Groundwater Modeling: Simulation of Flow and Advective Transport; Academic Press: Cambridge, MA, USA, 2015. [Google Scholar]
- Chau, K.; Jiang, Y. Three-dimensional pollutant transport model for the pearl river estuary. Water Res. 2002, 36, 2029–2039. [Google Scholar] [CrossRef]
- Wang, W.-C.; Xu, D.-M.; Chau, K.-W.; Lei, G.-J. Assessment of river water quality based on theory of variable fuzzy sets and fuzzy binary comparison method. Water Resour. Manag. 2014, 28, 4183–4200. [Google Scholar] [CrossRef]
- Zheng, C.; Wang, P.P. MT3DMS: A modular three-dimensional multispecies transport model for simulation of advection, dispersion, and chemical reactions of contaminants in groundwater systems; documentation and user’s guide. Am. J. Roentgenol. 1999, 169, 1196–1197. [Google Scholar]
- Prommer, H.; Barry, D.A.; Zheng, C. MODFLOW/MT3DMS-based reactive multicomponent transport modeling. Ground Water 2003, 41, 247–257. [Google Scholar] [CrossRef] [PubMed]
- Hecht-Méndez, J.; Molina-Giraldo, N.; Blum, P.; Bayer, P. Evaluating MT3DMS for heat transport simulation of closed geothermal systems. Groundwater 2010, 48, 741–756. [Google Scholar] [CrossRef] [PubMed]
- Morway, E.D.; Niswonger, R.G.; Langevin, C.D.; Bailey, R.T.; Healy, R.W. Modeling variably saturated subsurface solute transport with MODFLOW-UZF and MT3DMS. Ground Water 2013, 51, 237–251. [Google Scholar] [CrossRef] [PubMed]
- Rogers, L.L.; Dowla, F.U. Optimization of groundwater remediation using artificial neural networks with parallel solute transport modeling. Water Resour. Res. 1994, 30, 457–481. [Google Scholar] [CrossRef]
- Kourakos, G.; Harter, T. Parallel simulation of groundwater non-point source pollution using algebraic multigrid preconditioners. Comput. Geosci. 2014, 18, 851–867. [Google Scholar] [CrossRef]
- Zhang, K.; Wu, Y.S.; Bodvarsson, G.S. Parallel computing simulation of fluid flow in the unsaturated zone of yucca mountain, nevada. J. Contam. Hydrol. 2003, 62–63, 381. [Google Scholar] [CrossRef]
- Wu, Y.-S.; Zhang, K.; Ding, C.; Pruess, K.; Elmroth, E.; Bodvarsson, G. An efficient parallel-computing method for modeling nonisothermal multiphase flow and multicomponent transport in porous and fractured media. Adv. Water Resour. 2002, 25, 243–261. [Google Scholar] [CrossRef]
- Fotovatikhah, F.; Herrera, M.; Shamshirband, S.; Chau, K.-W.; Faizollahzadeh Ardabili, S.; Piran, M.J. Survey of computational intelligence as basis to big flood management: Challenges, research directions and future work. Eng. Appl. Comput. Fluid Mech. 2018, 12, 411–437. [Google Scholar] [CrossRef]
- Dong, Y.; Li, G. A parallel PCG solver for MODFLOW. Ground Water 2009, 47, 845–850. [Google Scholar] [CrossRef] [PubMed]
- Quinn, M.J. Parallel Computing: Theory and Practice; McGraw-Hill: New York, NY, USA, 1994; Volume 2. [Google Scholar]
- Eppstein, M.J.; Guarnaccia, J.F.; Dougherty, D.E. Parallel groundwater computations using PVM. In Proceedings of the 9th International Conference on Computational Methods in Water Resources, Denver, CO, USA, 1 June 1992; pp. 713–720. [Google Scholar]
- Schumacher, J.; Hayley, K.; Boutin, L.C.; White, E. Ppapi: A program for groundwater modeling tasks in distributed parallel computing environments. Groundwater 2018, 56, 248–250. [Google Scholar] [CrossRef] [PubMed]
- Fienen, M.N.; Hunt, R.J. High-throughput computing versus high-performance computing for groundwater applications. Groundwater 2015, 53, 180–184. [Google Scholar] [CrossRef] [PubMed]
- Elshall, A.S.; Tsai, F.T.-C. Constructive epistemic modeling of groundwater flow with geological structure and boundary condition uncertainty under the bayesian paradigm. J. Hydrol. 2014, 517, 105–119. [Google Scholar] [CrossRef]
- Elshall, A.S.; Pham, H.V.; Tsai, F.T.-C.; Yan, L.; Ye, M. Parallel inverse modeling and uncertainty quantification for computationally demanding groundwater-flow models using covariance matrix adaptation. J. Hydrol. Eng. 2014, 20, 04014087. [Google Scholar] [CrossRef]
- Ashby, S.F.; Falgout, R.D. A parallel multigrid preconditioned conjugate gradient algorithm for groundwater flow simulations. Nucl. Sci. Eng. 1996, 124, 145–159. [Google Scholar] [CrossRef]
- Zhou, J.-Q.; Hu, S.-H.; Chen, Y.-F.; Wang, M.; Zhou, C.-B. The friction factor in the forchheimer equation for rock fractures. Rock Mech. Rock Eng. 2016, 49, 3055–3068. [Google Scholar] [CrossRef]
- Zhou, J.-Q.; Hu, S.-H.; Fang, S.; Chen, Y.-F.; Zhou, C.-B. Nonlinear flow behavior at low reynolds numbers through rough-walled fractures subjected to normal compressive loading. Int. J. Rock Mech. Min. Sci. 2015, 80, 202–218. [Google Scholar] [CrossRef]
- Rabenseifner, R.; Hager, G.; Jost, G. Hybrid MPI/openMP parallel programming on clusters of multi-core SMP nodes. In Proceedings of the Euromicro International Conference on Parallel, Distributed and Network-Based Processing, Weimar, Germany, 18–20 February 2009; pp. 427–436. [Google Scholar]
- Gropp, W.; Lusk, E.; Skjellum, A. Using MPI: Portable parallel programming with the message-passing interface. Sci. Program. 2000, 5, 275–276. [Google Scholar]
- Gropp, W.; Lusk, E.; Thakur, R. Using MPI-2: Advanced Features of the Message-Passing Interface; MIT Press: Cambridge, MA, USA, 1999. [Google Scholar]
- Lichtner, P.C.; Hammond, G.E.; Lu, C.; Karra, S.; Bisht, G.; Andre, B.; Mills, R.; Kumar, J. PFLOTRAN User Manual: A Massively Parallel Reactive Flow and Transport Model for Describing Surface and Subsurface Processes; Los Alamos National Lab. (LANL): Los Alamos, NM, USA; Sandia National Lab. (SNL-NM): Albuquerque, NM, USA; Lawrence Berkeley National Lab. (LBNL): Berkeley, CA, USA; Oak Ridge National Lab. (ORNL): Oak Ridge, TN, USA; OFM Research: Redmond, WA, USA, 2015.
- Jost, G.; Jin, H.; Anmey, D.; Hatay, F.F. Comparing the openMP, MPI, and hybrid programming paradigm on an SMP cluster. In Proceedings of the European Workshop on OpenMP and Applications, Aachen, Germany, 23–26 September 2003. [Google Scholar]
- Cappello, F.; Etiemble, D. MPI versus MPI+openMP on the IBM SP for the NAS benchmarks. In Proceedings of the 2000 ACM/IEEE Conference on Supercomputing, Dallas, TX, USA, 4–10 November 2000; p. 12. [Google Scholar]
- Joshi, S.; Pathak, R.; Ahmed, S.; Choudhary, K.; Mishra, D. MPI and PVM based HPC setup for multi scale modeling. In Proceedings of the IEEE International Advance Computing Conference (IACC’09), Patiala, India, 6–7 March 2009. [Google Scholar]
- Dagum, L.; Menon, R. OpenMP: An industry-standard API for shared-memory programming. IEEE Comput. Sci. Eng. 1998, 5, 46–55. [Google Scholar] [CrossRef]
- Chapman, B.; Jost, G.; Pas, R.V.D. Using OpenMP: Portable Shared Memory Parallel Programming; MIT Press: Cambridge, MA, USA, 2008. [Google Scholar]
- Chandra, R.; Dagum, L.; Kohr, D.; Maydan, D.; Mcdonald, J.; Menon, R. Parallel Programming in OpenMP; Morgan Kaufmann Publishers: Burlington, MA, USA, 2001. [Google Scholar]
- Jin, P.G.; D’Azevedo, E.F.; Frenzel, H.; Mayes, M.; Yeh, G.T.; Jardine, P.M.; Salvage, K.M.; Hoffman, F.M. HBGC123D: A high-performance computer model of coupled hydrogeological and biogeochemical processes. Comput. Geosci. 2001, 27, 1231–1242. [Google Scholar]
- McLaughlin, J.D. Parallel Processing of Reactive Transport Models Using openMP. Masters’ Thesis, Brigham Young University, Provo, UT, USA, 2008. [Google Scholar]
- Abdelaziz, R.; Le, H.H. MT3DMSP—A parallelized version of the MT3DMS code. J. Afr. Earth. Sci. 2014, 100, 1–6. [Google Scholar] [CrossRef]
- Zhang, Y.; Hou, J.; Cao, Y.; Gu, J.; Huang, C. OpenMP parallelization of a gridded SWAT (SWATG). Comput. Geosci. 2017, 109, 228–237. [Google Scholar] [CrossRef]
- Bear, J. Dynamics of Fluids in Porous Media; Courier Corporation: North Chelmsford, MA, USA, 2013. [Google Scholar]
- Eager, D.L.; Zahorjan, J.; Lazowska, E.D. Speedup versus efficiency in parallel systems. IEEE Trans. Comput. 1989, 38, 408–423. [Google Scholar] [CrossRef]
- Quinn, M.J. Parallel Programming; McGraw-Hill: New York, NY, USA, 2003. [Google Scholar]
- Hwang, K. Advanced Computer Architecture: Parallelism, Scalability, Programmability, Fourteenth Reprint; Tata McGraw-Hill Edition: Singapore, 2007; ISBN 0-07-053070-X-2007. [Google Scholar]
Package | Fraction of Time Consumption |
---|---|
ADV | 63% |
DSP | 20% |
GCG | 13% |
Others | 4% |
© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Huang, L.; Wang, L.; Shao, J.; Liu, X.; Hao, Q.; Xing, L.; Zheng, L.; Xiao, Y. Parallel Processing Transport Model MT3DMS by Using OpenMP. Int. J. Environ. Res. Public Health 2018, 15, 1063. https://doi.org/10.3390/ijerph15061063
Huang L, Wang L, Shao J, Liu X, Hao Q, Xing L, Zheng L, Xiao Y. Parallel Processing Transport Model MT3DMS by Using OpenMP. International Journal of Environmental Research and Public Health. 2018; 15(6):1063. https://doi.org/10.3390/ijerph15061063
Chicago/Turabian StyleHuang, Linxian, Lichun Wang, Jingli Shao, Xingwei Liu, Qichen Hao, Liting Xing, Lizhi Zheng, and Yong Xiao. 2018. "Parallel Processing Transport Model MT3DMS by Using OpenMP" International Journal of Environmental Research and Public Health 15, no. 6: 1063. https://doi.org/10.3390/ijerph15061063
APA StyleHuang, L., Wang, L., Shao, J., Liu, X., Hao, Q., Xing, L., Zheng, L., & Xiao, Y. (2018). Parallel Processing Transport Model MT3DMS by Using OpenMP. International Journal of Environmental Research and Public Health, 15(6), 1063. https://doi.org/10.3390/ijerph15061063