Том 16, № 1Страницы 59 - 68

Об автоматизации применения размещения данных с перекрытиями в распределенной памяти

Л.Р. Гервич, Б.Я. Штейнберг
В статье рассматриваются блочно-аффинные размещения данных с перекрытиями для оптимизации параллельных вычислений в вычислительной системе с распределенной памятью. Примерами целевых вычислительных систем являются высокопроизводительные кластеры и перспективные системы на кристалле с большим количеством вычислительных ядер. Предлагается описывать размещение массива с перекрытиями как новый массив немного большей длины, у которого дополнительные элементы имеют значения некоторых элементов исходного массива. Рассматривается возможность разработки автоматического преобразования (компилятором) обычного размещения массива в распределенной памяти в новый массив, содержащий перекрытия. Предлагаемый метод иллюстрируется на известном численном алгоритме решения задачи теплопроводности.
Полный текст
Ключевые слова
автоматизация распараллеливания; распределенная память; преобразования программ; размещение данных; пересылки данных.
Литература
1. Bondhugula, U. Automatic Distributed-Memory Parallelization and CodeGeneration using the Polyhedral Framework / U. Bondhugula // Technical Report, 2011. - URL: http://mcl.csa.iisc.ac.in/downloads/publications/uday11distmem-tr.pdf (дата обращения: 01.09.2022)
2. Bikonov, D. Three-Level Parallel Programming System for the Hybrid 21-Core Scalar-Vector Microprocessor NM6408MP / D. Bikonov, A. Puzikov, A. Sivtsov // Cybersecurity Issues. - 2019. - P. 22-34.
3. SoC Esperanto. - URL: https://www.esperanto.ai/technology (дата обращения: 01.09.2022)
4. Корнеев, В.В. Параллельное программирование / В.В. Корнеев // Программная инженерия. - 2022. - Т. 13, № 1. - C. 3-16.
5. Штейнберг, Б.Я. Оптимизация размещения данных в параллельной памяти / Б.Я. Штейнберг. - Ростов-на-Дону: Изд-во Южного федерального университета, 2010.
6. Штейнберг, Б.Я. Блочно-аффинные размещения данных в параллельной памяти / Б.Я. Штейнберг // Информационные технологии. - 2010. - № 6. - P. 36-41.
7. Bahtin, V.A. Solving Applied Problems Using DVM-system / V.A. Bahtin, D.A. Zaharov, A.S. Kolganov et al // Bulletin of the South Ural State University. Series: Computational Mathematics and Computer Science. - 2019. - V. 8, № 1. - P. 89-106.
8. Bahtin, V.A. Experience in Solving Applied Problems Using Irregular Grids Using DVM-System / V.A. Bahtin, D.A. Zaharov, A.A. Ermichev et al // Parallel Computing Echnologies. - 2018. - P. 241-252.
9. Krivosheev, N.M. Algorithm for Searching Minimum Inter-Node Data Transfers / N.M. Krivosheev, B. Steinberg // Computer Science. - 2021. - V. 193. - P. 306-313.
10. Ammaev, S. Combining Parallelization with Overlaps and Optimization of Cache Memory Usage / S. Ammaev, L. Gervich, B. Steinberg // Parallel Computing Technologies. - 2017. - P. 257-264.
11. Гервич, Л.Р. Автоматизация распараллеливания программ с блочным размещением данных / Л.Р. Гервич, Е.Н. Кравченко, Б.Я. Штейнберг и др. // Сибирский журнал вычислительной математики. - 2015. - Т. 18, № 1. - C. 41-53.
12. Zhangxiaowen Gong. An Empirical Study of the Effect of Source-Level Loop Transformations on Compiler Stability / Zhangxiaowen Gong, Zhi Chen, Justin Szaday et al // Proceedings of the ACM on Programming Languages. - 2018. -V. 2,№ OOPSLA. - P. 1-29.
13. Wolfe, M. More Iteration Space Tiling / M. Wolfe // Supercomputing. - Reno, 1989. - P. 655-664.
14. Самарский, А.А. Уравнения математической физики / А.А. Самарский, А.Н. Тихонов. - М.: Изд-во МГУ, 1999.