Разработка гибридного параллельного алгоритма (MPI+OpenMP) для решения уравнения Пуассона
DOI:
https://doi.org/10.26577/JMMCS-2018-3-523Ключевые слова:
высокопроизводительные вычисления, гибридные технологии, параллельные вычисления, MPI, OpenMPАннотация
В данной статье представлена разработка гибридного параллельного алгоритма для
решения задачи Дирихле для двумерного уравнения Пуассона. В качестве технологии для
распараллеливания были выбраны MPI и OpenMP. Для численного последовательного
решения уравнения Пуассона использовалась явная схема «крест» (итерационный метод
Якоби). Параллельный алгоритм был реализован методом декомпозицией областей, а именно
одномерная декомпозиция. В статье в виде таблиц и графиков показаны ускорения и
эффективности параллельных алгоритмов при использовании технологий MPI и Open-
MP по отдельности и были сравнены с ускорением и эффективностью гибридного
алгоритма MPI + OpenMP. Так же, обоснован выбор архитектуры гибридной программы
и объяснены распределения данных между процессами. Полученные результаты говорят
об эффективности использования гибридного алгоритма для решения подобных задач
и показывают ускорение времени в 1,5-2 раза. Представленный алгоритм протестирован
на кластере вычислительного центра Новосибирского Государственного Университета для
различного количества точек расчетной области (от 64х64 до 1024х1024). Результаты
представленной работы можно применить для моделирования задач гидродинамики,
экологии, аэродинамики, распространение химических реагентов, распространение тепла и
других физических процессов.
Библиографические ссылки
[2] Martin J., Chorley W., David W. "Performance analysis of a hybrid mpi/openmp application on multi-core clusters."Journal of Computational Science, no. 1 (2010):168–174. doi.org/10.1016/j.jocs.2010.05.001.
[3] Adhianto L., Chapman B. "Performance modeling of communication and computation in hybrid mpi and openmp applications"(12th International Conference on, 2006).
[4] Jin H., Jespersen D., Mehrotra P. "High performance computing using MPI and OpenMP on multicore parallel systems."Parallel computing, no. 37 (2011): 562-575. doi.org/10.1016/j.parco.2011.02.002.
[5] Makris I. "Mixed Mode Programming on Clustered SMP systems"(The University of Edinburgh, 2005).
[6] Rane A., Stanzione D. "Experiences in tuning performance of hybrid MPI/OpenMP applications on quad-core systems."Proceedings 10th LCI International Conference on High-Performance Clustered Computing, (2009).
[7] Rabenseifner R., Hager G., Jost G. "Hybrid MPI/OpenMP parallel programming on clusters of multi-core SMP
nodes"(proc. 17 Euromicro Internat. Conf. on Parallel, Distributed and Network-based Processing, Weimar (2009): 427–436).
[8] Rabenseifner R., Wellein G. "Communication and Optimization Aspects of Parallel Programming Models on Hybrid Architectures."International Journal of High Performance Computing Applications 17 (2003): 49–62.
[9] Kryukov A.P., Stepanova M.M. Effektivnyi zapusk gibridnykh parallel’nykh zadach [Effective launch of hybrid parallel tasks]. Vestnik YuUrGU, no. 3 (2013): 32-48.
[10] Chan M.K., Yang L. "Comparative analysis of openmp and mpi on multi-core architecture."Proceedings of the 44th Annual Simulation Symposium, 11 (2011).
[11] Mitin I., Kalinkin A., Laevsky Y. "A parallel iterative solver for positive-definite systems with hybrid MPI-OpenMP parallelization for multi-core clusters."Journal of Computer Science, no. 3 (2012): 463–468. doi.org/10.1016/j.jocs.2012.08.010.
[12] Diaz J., Munoz-Caro C., Nino A. "A survey of parallel programming models and tools in the multi and many-core era."Parallel and Distributed Systems, IEEE Transactions on, 23(8):1369–1386, 2012.
[13] Drosinos N., Koziris N. "Performance comparison of pure mpi vs hybrid mpi-openmp parallelization models on smp clusters."Proceedings of the 18th International, 15 (2004).
[14] Chow E., Hysom D. "Assessing performance of hybrid mpi/openmp programs on smp clusters"(2001).
[15] Hager G., Jost G., Rabenseifner R. "Communication characteristics and hybrid mpi/openmp parallel programming on clusters of multi-core smp nodes."Proceedings of Cray User Group Conference, (2009).
[16] Cappello F., Etiemble D. "Mpi versus mpi+openmp on the ibm sp for the nas benchmarks."(In Supercomputing, ACM/IEEE 2000 Conference, 2000).
[17] Smith L., Bull M. "Development of mixed mode mpi / openmp applications."Scientific Programming, 9 (2001): 83–98.
[18] Ryndin E. A. Metody resheniya zadach matematicheskoi fiziki [Methods for solving problems of mathematical physics]. Taganrog: Izd-vo TRTU, 2003.
[19] Antonov A. S. Parallel’noe programmirovanie s ispol’zovaniem tekhnologii OpenMP [Parallel programming using OpenMP technology]. Moscow : Izd-vo MGU, 2009.
[20] Akhmed-Zaki D.Zh., Borisenko M.B. Razrabotka vysokoproizvoditel’nykh prilozhenii s ispol’zovaniem gibridnykh tekhnologii parallel’nykh vychislenii [Developing high-performance applications using hybrid parallel computing technologies]. Almaty: NII Institut KazNU (2013): 7.