DOI: https://doi.org/10.26089/NumMet.v20r321

Распределение вычислений в гибридных вычислительных системах при трансляции программ на языке НОРМА

Авторы

  • А.Н. Андрианов
  • Т.П. Баранова
  • А.Б. Бугеря
  • К.Н. Ефимкин

Ключевые слова:

параллельное программирование
автоматизация программирования
непроцедурные спецификации
гибридные архитектуры
балансировка вычислительной нагрузки
язык НОРМА

Аннотация

Рассмотрены методы распределения вычислительной нагрузки при трансляции программ с непроцедурного (декларативного) языка НОРМА в исполняемые программы для различных параллельных архитектур. Приведены краткие характеристики языка НОРМА и основные возможности компилятора программ на языке НОРМА. Описаны способы автоматического распределения вычислительной нагрузки при генерации исполняемых программ следующих типов: OpenMP, NVIDIA CUDA, MPI+OpenMP и MPI+OpenMP+NVIDIA CUDA. Рассмотрена задача динамической балансировки вычислительной нагрузки, возникающая в случае неоднородной вычислительной среды MPI+OpenMP+NVIDIA CUDA, и предложен метод ее решения. Приведены результаты практического применения компилятора программ на языке НОРМА для решения двух различных задач и оценена скорость выполнения получаемых при этом исполняемых программ для различных параллельных архитектур.


Загрузки

Опубликован

20.06.2019

Выпуск

Раздел

Раздел 1. Вычислительные методы и приложения

Об авторах

А.Н. Андрианов

Институт прикладной математики имени М.В. Келдыша РАН (ИПМ РАН)
Миусская пл., 4, 125047, Москва
• ведущий научный сотрудник

Т.П. Баранова

Институт прикладной математики имени М.В. Келдыша РАН (ИПМ РАН)
Миусская пл., 4, 125047, Москва
• научный сотрудник

А.Б. Бугеря

Институт прикладной математики имени М.В. Келдыша РАН (ИПМ РАН)
Миусская пл., 4, 125047, Москва
• старший научный сотрудник

К.Н. Ефимкин

Институт прикладной математики имени М.В. Келдыша РАН (ИПМ РАН)
Миусская пл., 4, 125047, Москва
• старший научный сотрудник


Библиографические ссылки

  1. V. V. Voevodin, Mathematical Models and Methods in Parallel Processes (Nauka, Moscow, 1986) [in Russian].
  2. V. V. Voevodin and Vl. V. Voevodin, The Parallel Computing (BHV-Petersburg, St. Petersburg, 2002) [in Russian].
  3. OpenACC.
    http://openacc.org . Cited June 10, 2019.
  4. DVM-system. URL:
    http://dvm-system.org . Cited June 10, 2019.
  5. A. N. Andrianov, A. B. Bugerya, K. N. Efimkin, and I. B. Zadykhailo, Norma. Language Description. Draft , Preprint No. 120 (Keldysh Institute of Applied Mathematics, Moscow, 1995).
  6. J. R. McGraw, S. K. Skedzielewski, S. J. Allan, et al., Sisal: Streams and Iterations in a Single Assignment Language , Language Reference Manual, Version 1.2. (Lawrence Livermore Nat. Lab., Livermore, 1985).
  7. V. N. Kasyanov and A. P. Stasenko, “Sisal 3.2 Programming Language,” in Tools and Techniques of Program Construction (Ershov Institute of Informatics Systems, Novosibirsk, 2007), pp. 56-134.
  8. B. L. Chamberlain, S.-E. Choi, E. C. Lewis, et al., “ZPL: A Machine Independent Programming Language for Parallel Computers,” IEEE Trans. Softw. Eng. 26 (3), 197-211 (2000).
  9. I. B. Zadykhailo, “The Organization of a Cyclical Computing Process Using a Parametric Representation of Special Form,” Zh. Vychisl. Mat. Mat. Fiz. 3 (2), 337-357 (1963) [USSR Comput. Math. Math. Phys. 3 (2), 442-468 (1963)].
  10. A. N. Andrianov, K. N. Efimkin, and I. B. Zadykhailo, “Nonprocedural Language for Mathematical Physics,” Programmirovanie, No. 2, 80-95 (1991) [Program. Comput. Software 17 (2), 10-22 (1992)].
  11. I. B. Zadykhailo and K. N. Efimkin, “Substantive Notation and New Generation Languages,” Inform. Tekhnol. Vychisl. Sistemy, No. 2, 46-58 (1996).
  12. A. N. Andrianov, A. B. Bugerya, E. N. Gladkova, et al., “Simple Things,” Superkomp’utery, No. 2, 58-61 (2014).
  13. The NORMA System.
    http://www.keldysh.ru/pages/norma . Cited June 10, 2019.
  14. A. N. Andrianov, A. B. Bugerya, K. N. Efimkin, and P. I. Koludarov, Modular Architecture of NORMA+ compiler , Preprint No. 64 (Keldysh Institute of Applied Mathematics, Moscow, 2011).
  15. A. B. Bugerya, “Interactive Debugging of Parallel Programs: Distributed Scheme of Interacting Components,” Programmirovanie, No. 3, 42-49 (2008) [Program. Comput. Software 34 (3), 154-159 (2008)].
  16. A. N. Andrianov, The Norma System. Development, Implementation and Usage for Solving Problems of Mathematical Physics on Parallel Computers , Doctoral Dissertation in Mathematics and Physics (Keldysh Institute of Applied Mathematics, Moscow, 2001).
  17. A. N. Andrianov and E. A. Andrianova, “Organization of Cyclic Process over Nonprocedural Structure,” Programmirovanie, No. 4, 62-72 (1996) [Program. Comput. Software 22 (4), 203-212 (1996)].
  18. A. N. Andrianov, The Synthesis of Parallel and Vector Programs by the Nonprocedural Norma Specification , Candidate’s Dissertation in Mathematics and Physics (Keldysh Institute of Applied Mathematics, Moscow, 1990).
  19. M. M. Vasiliev, K. N. Efimkin, and V. N. Ivanova, “On the Application of the Hydrodynamic Potentials Method to the Viscous Fluid Flow Problem,” Mat. Model. 6 (10), 57-65 (1994).
  20. A. N. Andrianov, G. N. Guseva, and I. B. Zadykhailo, “Norma Language Application in Calculation of Viscous Gas Subsonic Flow Model,” Mat. Model. 11 (9), 45-53 (1999).
  21. A. N. Andrianov, A. V. Zhokhova, and B. N. Chetverushkin, “Application of Parallel Algorithms for Gas-dynamic Flows on Irregular Grids,” in Applied Mathematics and Informatics (Mosk. Gos. Univ., Moscow, 1973), pp. 68-76.
  22. A. N. Andrianov and K. N. Efimkin, “The Use of the Norma System for Solving Computational Problems with Multiprocessor Computers with Distributed Memory,” Vychisl. Metody Programm. 1, 45-54 (2000).
  23. A. N. Andrianov, K. N. Efimkin, V. Yu. Levashov, and I. N. Shishkova, “The NORMA Language Application to Solution of Strong Nonequilibrium Transfer Processes Problem with Condensation of Mixtures on the Multiprocessor System,” in Lecture Notes in Computer Science (Springer, Heidelberg, 2001), Vol. 2073, pp. 502-510.
  24. A. N. Andrianov, “Application of the Norma Language for Solving Problems with Nested Grids,” Vychisl. Metody Programm. 3 (2), 1-10 (2002).
  25. A. N. Andrianov, A. V. Berezin, A. S. Vorontsov, et al., “The Radiational Electromagnetic Fields Modeling at the Multiprocessor Computing Systems,” Mat. Model. 20 (3), 98-114 (2008).
  26. NAS Parallel Benchmarks.
    http://www.nas.nasa.gov/publications/npb.html . Cited June 10, 2019.
  27. K-100 Hybrid Computing Cluster.
    https://ckp.kiam.ru/?hard . Cited June 10, 2019.
  28. CUDA Toolkit Documentation v10.1.168.
    https://docs.nvidia.com/cuda . Cited June 10, 2019.