ГОСТ Р 57700.27-2020. Национальный стандарт Российской Федерации. Высокопроизводительные вычислительные системы. Термины и определения
Программное обеспечение | |
57 системное программное обеспечение; СПО: Совокупность программ, процедур, правил, документации и данных, относящихся к функционированию ВС. | system software |
58 процесс: Программа, определяемая в операционной системе контекстом и находящаяся в одном из определенных состояний, выполняемая в текущий момент. | process |
59 контекст процесса: Структура данных операционной системы, содержащая значения регистров процессора, диапазоны адресов памяти, счетчика и указателя на очередную инструкцию программы, указатель на стек, указатели на открытые файлы, атрибуты пользователя, привилегии и т.п., позволяющая сохранить состояние процесса, отложить его исполнение и в дальнейшем корректно возобновить. | process's context |
60 поток: Процедура выполняемой в текущий момент программы, которая осуществляется параллельно в адресном пространстве процесса. | thread (Light Weight Process) |
61 параллельные вычисления: Способ организации вычислений, при котором программа разрабатывается и выполняется как набор взаимодействующих вычислительных процессов и потоков, работающих параллельно. | parallel computing |
62 последовательные вычисления: Способ организации вычислений, при котором программа выполняется как один вычислительный процесс и поток. | serial computing |
63 пакетное задание: Сценарий интерпретатора командной строки, который может включать команды для создания рабочей среды, запуска программы на выполнение и атрибуты для описания требуемых ресурсов, необходимых для управления заданием. | batch job |
64 планировщик ресурсов: Программное обеспечение, реализующее алгоритмы распределения ресурсов ВС и управления выполнением пакетных заданий. | resource manager |
65 модель распараллеливания с передачей сообщений: Способ распараллеливания программы, при котором параллельная обработка данных выполняется с помощью процессов, при этом данные разделяются на подобласти, каждый процесс имеет доступ к данным, расположенным в области оперативной памяти, соответствующей его контексту, и учет взаимовлияния подобластей осуществляется с помощью обмена сообщениями между процессами. | message passing parallelization model |
66 модель распараллеливания на общей памяти: Способ распараллеливания программы, при котором параллельная обработка данных выполняется с помощью потоков, имеющих доступ ко всем данным в общей оперативной памяти. | shared memory parallelization model |
67 комбинированная модель распараллеливания: Способ распараллеливания, сочетающий использование модели распараллеливания с передачей сообщений и модели распараллеливания на общей памяти. | hybrid parallelization model |
Примечание - Как правило, распараллеливание по модели с передачей сообщений используется между процессами, в рамках процессов распараллеливание проводится по модели общей памяти. |
|
68 программный интерфейс передачи сообщений: Спецификация совокупности функций для создания параллельных программ, основанной на обмене сообщениями между процессами, взаимодействующими в ВС, которая используется при модели распараллеливания с передачей сообщений. | message passing interface (MPI) |
69 программный интерфейс для многопотоковых приложений: Спецификация совокупности директив компилятора, библиотечных процедур и переменных окружения, предназначенных для разработки многопоточных программ на ВС или устройствах с общей памятью, которая используется при модели распараллеливания на общей памяти. | OpenMP |
70 декомпозиция: Разделение структур данных на подструктуры, которые могут быть распределены статически либо динамически. | decomposition |
71 функциональная декомпозиция: Разделение вычислений на функционально различные процедуры и выполнение их независимо. | functional decomposition |
72 геометрическая декомпозиция: Разделение вычислений на части, которые соответствуют разделению моделируемого объекта по принципу геометрии. | geometric decomposition |
73 условие гонки: Ситуация, в которой результат вычислений нескольких параллельных процессов (потоков) зависит от порядка, в котором они выполняются. | race condition |
74 параллелизм данных: Метод вычислений, при котором одна вычислительная операция применяется к множеству элементов структур данных. | data parallelism |
Примечание - Определение понятия "операция" согласно ГОСТ 15971. |
|
75 параллелизм задач: Метод вычислений, при котором вычислительную задачу разделяют на несколько самостоятельных подзадач. | functional parallelism |
76 зависимость по данным: Взаимосвязь двух процессов (потоков), при которой результат одного влияет на результат другого. | data dependence |
77 прямая зависимость по данным: Взаимосвязь двух процессов (потоков), при которой второй процесс (поток) использует значение переменной, вычисленное первым процессом (потоком). | true dependence |
78 обратная зависимость: Взаимосвязь двух процессов (потоков), при которой первый процесс (поток) использует значение переменной, впоследствии перезаписанное вторым процессом (потоком). | anti dependence |
79 выходная зависимость: Взаимосвязь двух процессов (потоков), при которой оба процесса (потока) присваивают значение одной и той же переменной. | output dependence |
80 синхронизация процессов [потоков]: Механизм, позволяющий обеспечить доступ к ресурсу (файл, данные в памяти), сохраняя его целостность при использовании несколькими процессами (потоками). | synchronization |
81 барьерная синхронизация: Событие, в котором процесс (поток), принадлежащий явно или неявно одной группе, блокируется, ожидая блокирования остальных процессов (потоков) группы. | barrier synchronization |
82 критическая секция: Участок исполняемого кода программы, обеспечивающий доступ к общему ресурсу (данным или устройству), который не должен быть одновременно использован более чем одним потоком исполнения. | critical section |
83 векторизация программы: Эквивалентные преобразования программы, обеспечивающие исключение зависимостей по данным для достижения параллельного выполнения итераций цикла. | vectorizing |
Примечание - Определение понятия "цикл" согласно ГОСТ 33707. |
|
84 балансировка вычислительной нагрузки: Процедура распределения вычислительной нагрузки между процессорами (ядрами, узлами), необходимая для достижения баланса нагрузки. | load balancing |
85 мэппинг: Способ оптимального размещения процессов и соответствующих им данных по процессорам ВВС с целью сокращения количества и дистанции межпроцессорных обменов, учитывающий топологию коммуникационной подсистемы. | mapping |
86 тестовая программа: Программа или набор программ, предназначенные для количественной оценки функциональных характеристик и отдельных параметров ВВС, таких как: реальная производительность, пропускная способность оперативной памяти, пропускная способность коммуникационной подсистемы, эффективность распараллеливания, правильность функционирования. | benchmark |
