Baltic Sea water dynamics model acceleration

Бесплатный доступ

Industrial Baltic sea water dynamics modelling program optimization and parallelization is described. Program is based on solving the system of partial differential equations of shallow water with numerical methods. Mechanical approach to program modernization is demonstrated involving building module dependency graph and rewriting every module in specific order. To achieve desired speed-up the program is translated into another language and several key optimization methods are used, including parallelization of most time-consuming loop nests. The theory of optimizing and parallelizing program transformations is used to achieve best performance boost with given amount of work. The list of applied program transformations is presented along with achieved speed-up for most time-consuming subroutines. Entire program speed-up results on shared memory computer system are presented.

Еще

Program transformation, program optimization, program parallelization

Короткий адрес: https://sciup.org/147159405

IDR: 147159405   |   DOI: 10.14529/mmp170107

Список литературы Baltic Sea water dynamics model acceleration

  • Меткалф, М. Оптимизация в Фортране/М. Меткалф. -M.: Мир, 1985. -264 с.
  • Бухановский, А. Высокопроизводительные технологии экстренных вычислений для предотвращения угрозы наводнений/А. Бухановский, А. Житников, С. Петросян, П. Слоот//Известия вузов. Приборостроение. -2011. -№ 10. -С. 14-20.
  • Клеванный, К. Использование программного комплекса CARDINAL/К. Клеванный, Е. Смирнова//Вестник Государственного университета морского и речного транспорта имени адмирала С.О. Макарова. -2009. -№ 3. -С. 153-162.
  • Ковальчук, С.В. Особенности проектирования высокопроизводительных программных комплексов для моделирования сложных систем/С.В. Ковальчук//Информационно-управляющие системы. -2008. -№ 3. -С. 10-18.
  • Гервич, Л.P. Автоматизация распараллеливания программ с блочным размещением данных/Л.P. Гервич, Е.H. Кравченко, Б.Я. Штейнберг, М.В. Юрушкин//Сибирский журнал вычислительной математики. -2015. -Т. 18, № 1. -С. 41-53.
  • Компиляторы GCC . -2016. -URL: http://gcc.gnu.org/
  • Muchnik, S. Advanced Compiler Design and Implementation/S. Muchnik. -Morgan-Kaufmann, 1997.
  • Kowarschik, M. An Overview of Cache Optimization Techniques and Cache-Aware Numerical Algorithms/M. Kowarschik, C. Weiß//Algorithms for Memory Hierarchies: Advanced Lectures. -Berlin; Heidelberg: Springer, 2003. -P. 213-232.
  • Касперский, К. Техника оптимизации программ. Эффективное использование памяти/К. Касперский. -СПб.: БХВ-Петербург, 2003. -300 с.
  • Гервич, Л. Программирование экзафлопсных систем/Л. Гервич, Б. Штейнберг, М. Юрушкин//Открытые системы. СУБД. -2013. -№ 8. -С. 26-29.
  • Абу-Халил, Ж.М. Параллельный алгоритм глобального выравнивания с оптимальным использованием памяти/Ж.М. Абу-Халил, Р.И. Морылев, Б.Я. Штейнберг//Современные проблемы науки и образования. -2013. -№ 1. -6 с. -URL: http://www.science-education.ru/ru/article/view?id=8139
  • Корж, А.A. Результаты масштабирования бенчмарка NPB UA на тысячи ядер суперкомпьютера Blue Gene/P с помощью расширения OpenMP/А.A. Корж//Вычислительные методы и программирование. -2010. -Т. 11. -С. 31-41.
  • Лиходед, Н.A. Обобщенный тайлинг/Н.A. Лиходед//Доклады НАН Беларуси. -2011. -Т. 55, № 1. -С. 16-21.
  • Denning, P.J. The Locality Principle/P.J. Denning//Communications of the ACM. -2005. -V. 48, № 7. -P. 19-24.
  • Gustavson, F.G. Cache Blocking for Linear Algebra Algorithms/F.G Gustavson, R. Wyrzykowski//Parallel Processing and Applied Mathematics 2011, Part I, Lectures Notes in Computer Science 7203. -2012. -P. 122-132.
  • Lam, M.S. The Cache Performance and Optimizations of Blocked Algorithms/M.S. Lam, E.E. Rothberg, M.E. Wolf//Proceedings of the Fourth International Conference on Architectural Support for Programming Languages and Operating Systems. -1991. -P. 63-74.
  • Goto, K. Anatomy of High-Performance Matrix Multiplication/K. Goto, R. van de Geijn//ACM Transactions on Mathematical Software. -2008. -V. 34, № 3. -P. 1-25.
  • Mycroft, A. Programming Language Design and Analysis Motivated by Hardwere Evolution (Invited Presentation)/A. Mycroft//The 14th International Static Analysis Symposium. -2013. -V. 3634. -P. 18-33. -URL: http://www.cl.cam.ac.uk/am21/papers/sas07final.pdf
  • Галушкин, А.И. Стратегия развития современных суперкомпьютеров на пути к экзафлопсным вычислениям/А.И. Галушкин//Приложение к журналу Информационные технологии. -2012. -№ 2. -32 c.
  • Арыков, С.Б. Система асинхронного параллельного программирования Аспект/С.Б. Арыков, В.Э. Малышкин//Вычислительные методы и программирование. -2008. -Т. 9, № 1. -C. 48-52.
  • Оптимизирующая распараллеливающая система. -2016. -URL: www.ops.rsu.ru.
  • Ryder, B.G. Constructing the Call Graph of a Program/B.G. Ryder//Software Engineering, IEEE Transactions on Software Engineering. -1979. -V. SE-5, № 3. -P. 216-226.
Еще
Статья научная