УДК 004
О МАТЕМАТИЧЕСКОМ АППАРАТЕ ОПРЕДЕЛЕНИЯ ВЫЧИСЛИТЕЛЬНОЙ СЛОЖНОСТИ ЗАДАЧ В КОНВЕРГЕНТНЫХ
СЕТЯХ
А.К. Клепиков
Приведены математические выкладки описывающие подход к определению вычислительной сложности задачи в конвергентной сети предприятия. Представлен и обоснован подход определения производительности системы на основании показателя ЮР8.
Ключевые слова: вычислительная задача, конвергентная вычислительная сеть, минимизация расходов, балансировка нагрузки.
В вычислительной сети предприятия в современных условиях одновременно функционируют серверные станции различного уровня иерархии, серверные станции принадлежащие и обслуживаемые специалистами предприятия, виртуальные вычислительные серверы подключаемой облачной инфраструктуре. Различия в подходах к эксплуатации вычислительных станций и облачных серверных структур приводит к возможности постановки вопроса оптимизации размещения вычислительных задач между серверами вычислительной сети и облачными серверами с целями по критериям:
- минимизации времени выполнения вычислительной задачи;
- минимизации экономических расходов на выполнение вычислительной задачи [1].
Используя метод алгоритмических информационных процессов, оптимизация размещения вычислительных задач могут быть сформулированы в терминах математического программирования следующим образом: найти такой набор значений переменных X * = {х*|, который позволяет минимизировать целевую функцию: Ж (х1, х2..., хм) при ограничениях:
а у(х1,Х2,...,хN)< Ау,У = 1...•/,
Ьк(х1,*2,...,^)< Вк,к = 1...^,
где Ж (х1, Х2..., хм) - функция определения затрат на реализацию вычислительной задачи. В экономическом эквиваленте представляемое в виде денежных расходов организации на передачу и обработки данных; ау (х1, Х2,..., хм) - выражения производственных требований к системе;
Ьк (х1, Х2,..., хм) - выражения, учитывающие условия функционирования вычислительной задачи.
Переменные х1,х2,...,хм являются дискретными и позволяют определить распределение информации по собственным и облачным узлам сети.
73
Для оптимизации распределения вычислительных задач предлагается решать оптимизационную задачу с помощью оценки сложности поступающих входных задач. Для решения оптимизационной задачи необходимо описать совокупность вычислительных задач, как ^{^Ь,...,^,..,^}, а также совокупности узлов вычислительной сети J={J1,J2,...,Jm,...,JS}.
Отдельно взятая вычислительная задача может быть представлена в виде кортежа следующим образом:
1У = (1 кЪ ^'кЬ Чк, Чк, ).
В общем случае вычислительная задача может использована в двух режимах: в режиме чтения и режиме корректировки. Первый режим характеризуется интенсивностью Лк[ поступающих в 1-й узел запросов на использование к-й задачи; второй-интенсивностью Л'к[ донесений на корректировку к-й задачи. При обработке запроса к к-й задачи осуществляется обмен информацией объемом чк, если вычислительная задача не хранится в узле, из которого инициируется обращение. Аналогичный обмен при корректировке к-й задачи характеризуется объемом информации ч 'к.
Компоненты кортежа несут определенную смысловую нагрузку. Так Лк[ характеризует интенсивность безусловных взаимодействий, т.е. запросов на использование к-й задачи непосредственно выполняемой на узле I.
Совокупность вычислительных задач в сети информационной системы не есть просто набор отдельных элементов, каждый из которых представляется в виде кортежа, а представляет собой систему, для которой характерно наличие определенных взаимосвязей между элементами. Данные взаимосвязи могут быть представлены в виде бинарной матрицы: А = (акт), к, т = 1, К, элементы которой определяются следующим образом: " 1, если г- й ИО используется при реализации ИП,
акг= ч задаваемом к-м ИО;
0 - в противном случае.
Узел сети Jm также может быть представлен в виде кортежа:
1 т,, = (^1, ъЖ),..., ъ^); ),..., ¿к1(^)).
Величина характеризует объем памяти узла 1, отводимый для хранения вычислительной задачи, а Ьк1(1;) и Ь'к1(1;) - функции распределения времени обработки или корректировки вычислительной задачи в 1-м узле.
В общем случае при разработки модели производительность вычислительного узла может быть определена исходя из:
- количества операций, которые процессор может обработать в одну секунду;
- количества свободной оперативной памяти;
- скорости доступа к данным хранящимся в дисковой подсистеме.
74
Математически доступную совокупную вычислительную мощность сервера на момент времени t можно выразить в виде множества элементов:
P(t ) = {Pt, mt, К nt}, где с - количество свободных тактов процессора, доступных на момент времени t; mt - объем оперативной памяти, доступной в момент времени t; lt - скорость передачи данных по сети в момент времени t от АРМ, подающего запрос на выполнение вычислительной задачи, до сервера P; решающего вычислительную задачу; ht - размер свободного дискового пространства на постоянном запоминающем устройстве на момент времени t; st -скорость доступа к ПЗУ.
Для определения производительности процессора в общем случае используется формула:
c v c
p=_*_=_
v t t
где v - количество тактов; t - время выполнения задачи; c - количество инструкций.
Для определения производительности подсистемы памяти используются следующие показатели:
- частота памяти, от данной величины напрямую зависит быстродействие оперативной памяти - F;
- величина времени отклика - времени доступа к данным;
- пропускной способности интерфейса - способности производить чтение или запись данных с указанной скоростью;
- разрядность памяти - значение характеризующее максимально допустимый объем данных с которым возможна работа в единицу времени
[3].
Определение производительности памяти необходимо когда в вычислительной сети используются серверы с оперативной памятью обладающей различными техническими характеристиками. В случае использования оперативной памяти с одинаковыми техническими характеристиками существенное значение в модели расчета производительности вычислительного узла имеет только объем доступной памяти в момент времени t.
Производительность подсистемы долговременного хранения данных определяется с помощью расчета параметра IOPS определяющего количество операций ввода-вывода. IOPS определяет величину, которую можно сравнивать от системы к системе не зависимо от аппаратного и программного обеспечения вычислительного узла [2].
Параметр IOPS может быть измерен для:
- суммарного числа проведенных операций за цикл тестирования;
- среднего значения произвольного доступа при чтении или записи;
- среднего числа линейного чтения;
- среднего числа линейной записи.
На основе вышеизложенных математических выкладок предоставляется возможным разработка модели определения вычислительной сложности вычислительных задач до передачи задачи в ядро распределителя с целью дальнейшей балансировки нагрузки в вычислительной сети.
Список литературы
1. Клепиков А.К. Программный распределитель вычислительных задач с функцией мониторинга / А.К. Клепиков, А.Н. Привалов // Известия Тульского государственного университета. Технические науки. Тула, 2013. Вып. 1. С. 274-280.
2. Привалов А.Н. Алгоритм распределения нагрузки между серверами в локальной вычислительной сети // Научно - технический сборник № 13 Тульского высшего арт. инж. уч-а. Тула: ТВАИУ, 1996. С. 63-69.
3. Риз Д. Облачные вычисления. СПб: BHV, 2011. 288 с.
Клепиков Алексей Константинович, канд. техн. наук, ст. преподаватель, [email protected], Россия, Тула, Тульский государственный педагогический университет им. Л.Н. Толстого
ABOUT THE MATHEMATICS DETAIL FOR DEFINITION DIFFICULTY LEVEL FOR TASKS IN THE CONVERGED NETWORKS
A.K. Klepikov
The mathematical calculations describing the approach to defining the computational complexity of the problem in the converged enterprise network. It presented and justified approach the definition of system performance based on the indicator IOPS.
Key words: computational problem, converged computing network, minimizing costs, load balancing.
Klepikov Alexey Konstantinovich, candidate of technical science, senior lecturer, don-klepikov@yandex. ru, Russia, Tula, Tula state pedagogical university of L. N. Tolstoy