Организация вычислительного процесса в суперкомпьютерах с динамически управляемыми разделами
Authors: НАЗАРОВ С.В. , БАРСУКОВ А.Г. 
Published: January 2025

Во всем мире непрерывно возрастает интерес к высокопроизводительным вычислениям. Он обусловлен потребностями различных отраслей науки, образования, медицины, инженерной и другой практической деятельностью человечества. Данная статья посвящена вопросам организации вычислительного процесса при выполнении информационно-связанных задач в компьютерах с динамически управляемыми разделами. Даже при высокой производительности суперкомпьютеров, предназначенные для них задачи, могут занимать значительное время и выполняться, как правило, неоднократно. Программы, реализующие эти задачи, имеют сложную многомодульную структуру с информационными и управляющими связями между ними. Поэтому они реализуются в пакетном режиме и часто в ночное время. В пакеты могут входить различные задачи, требующие высокой вычислительной мощности и большой основной и внешней памяти. В связи с этим даже в рамках мощнейших суперкомпьютеров требуется оптимизация вычислительного процесса с целью рационального расходования вычислительных ресурсов при одновременном требовании выполнения определенного набора задач (пакета) в заданные временные ограничения. Организация вычислительного процесса должна учитывать особенности архитектуры компьютера и его операционной системы. В статье предлагается решение задачи оптимизации вычислительного процесса для серверов и мэйнфреймов IBM на процессорах Power9 и z14 применительно к операционным системам, которые используются на этих компьютерах. Решение предлагается последовательностью связанных этапов. Для решения используются методы сетевого планирования и управления, теория параллельных вычислительных процессов и расписаний. В начале представляется структура приложения и дается постановка задачи. Решение начинается с определения величины критического пути и резервов времени по отдельным вычислительным работам. Далее рассматриваются возможности минимизация длины критического пути. После чего ставится и решается задача распределения количества долей физических процессоров, выделяемых динамическим разделам компьютера, при условии выполнения приложения без увеличения длины критического пути. В заключение разрабатывается временная диаграмма вычислительного процесса с фиксацией итогового результата занятости физических процессоров компьютера и числа необходимых логических разделов.

Worldwide interest in high-performance computing is constantly growing. It is prompted by the needs of various branches of science, education, medicine, engineering and other practical activities of mankind. This article is devoted to the organization of the computational process in the performance of information-related tasks in computers with dynamically controlled cases. Even with the high performance of supercomputers, the tasks assigned to them can take considerable time and can be performed, as a rule, repeatedly. The programs implementing these tasks have a complex multi-module structure with information and control links between them. Therefore, they are implemented in batch mode and often at night. The packages can include various tasks that require high computing power and large main and external memory. In this regard, even within the framework of the most powerful supercomputers, optimization of the computing process is required for the purpose of rational consumption of computing resources while requiring the performance of a certain set of tasks (package) in a given time limit. The organization of the computing process should take into account the features of the computer architecture and its operating system. The article offers a solution to the problem of optimizing the computing process for IBM servers and mainframes on power9 and z14 processors in relation to the operating systems that are used on these computers. The solution is proposed by a sequence of related steps. Methods of network planning and management, theory of parallel computing processes and schedules are used for the solution. In the beginning, the structure of the application is presented and the problem statement is given. The solution begins with determining the critical path and time reserves for individual computational work. The possibilities of minimizing the length of the critical path are further considered. After that, the task of distributing the number of shares of physical processors allocated to dynamic partitions of the computer is set and solved, provided that the application is run without increasing the length of the critical path. In conclusion, we develop a time diagram of the computational process with fixing the final result of the employment of physical processors of the computer and the number of necessary logical partitions.