БИБЛИОТЕКА НОРМАТИВНЫХ ДОКУМЕНТОВ

ГОСТ Р 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