Міжнародна конференція "Високопродуктивні обчислення" HPC-UA’2012 (Україна, Київ, 8-10 жовтня 2012 року) ________________________________________________________________________________________________________________________ Формирование матрицы выбора для распределения задач в GRID системе Щербина Александр Валерьевич Национальный технический университет Украины «КПИ», проспект Победы, 37, Киев, Украина sansherbina@yandex.ru Аннотация. В статье приведено улучшение DWMM алгоритма для возможности задания оптимизирующих параметров в виде допустимых диапазонов. Вводится коэффициент δ[0,1] для каждого оптимизирующего параметра задачи и коэффициент ε для всей задачи. Алгоритм позволяет более гибко распределять задачи по ресурсам, за счёт того, что задача может пожертвовать в допустимых пределах оптимизирующими параметрами. Эффективность алгоритма увеличивается с увеличением числа заявок в системе. Ключевые слова GRID, матрица выбора, алгоритм планирования, планировщик, распределение задач. Введение GRID - распределённая система, которая обеспечивает динамически общий доступ, подбор и агрегацию территориально распределённых ресурсов в зависимости от их доступности, производительности и необходимости. Распределённые вычисления позволяют совместно использовать распределённые ресурсы и обеспечивают перспективные платформы для эффективного выполнения задач. GRID является средой коллективного компьютинга, в которой каждый ресурс имеет владельца или поставщика ресурсов, а доступ к ресурсам открыт некоторому множеству пользователей или потребителей ресурсов в разделяемом по времени и по пространству режиме. Владельцы и пользователи, действующие на основании определённых правил предоставления/потребления ресурсов – политики использования ресурсов, образуют виртуальную организацию GRID. Отметим, что члены виртуальной организации могут совмещать роли владельца и потребителя. Виртуальная организация может образовываться динамически и иметь ограниченное время существования. [1] Для эффективного распределения задач по ресурсам используется служба диспетчеризации. Её задача заключается в автоматической обработке входного потока заданий и распределение заданий по доступным ресурсам. Описание алгоритма формирования матрицы выбора Ввиду того, что распределённая система неоднородна, ресурсы и задачи имеют множество параметров такие как объём памяти(M), стоимость(C), характеристики процессора(P) и т.д. Эти параметры можно объединить и сформировать вектор требований заявки к ресурсу Q={M,C,P…} Параметры задачи можно разделить на 2 типа: обязательные – параметры, удовлетворение которых в полной мере обязательно и изменение их диапазона невозможно, например, объём памяти и оптимизирующие – параметры, которые влияют на решение задачи менее существенно и которые можно менять, например, цена. Задача планирования - максимально эффективно распределить все задачи по ресурсам, чтобы максимально удовлетворить требования пользователей.[3] -347- Міжнародна конференція "Високопродуктивні обчислення" HPC-UA’2012 (Україна, Київ, 8-10 жовтня 2012 року) ________________________________________________________________________________________________________________________ Могут возникнуть ситуации, когда пользователь готов пожертвовать одним параметром в установленных пределах, для получения выигрыша по другим параметрам. Примем следующие обозначения: n-количество задач, m- количество ресурсов, T={t 1 ,t2 ,…,tn } – множество задач, R={r1 ,r2 ,…,rn } множество ресурсов. Каждая задача и ресурс имеют множество параметров Y={y 1 ,y 2 ,…,y n } – обязательные параметры и Q={q 1 ,q 2 ,..,q k } - оптимизирующие, поскольку каждый параметр имеет свою размерность, нужно провести нормировку. S i ,k = qi ,k − q k qk max min − qk min (1) q i,k -k-ый оптимизирующий параметр i-ой задачи. q k min -минимальное значение k-го параметра q k max-максимальное значение k-го параметра [2] δ i,k – граница в пределах которой можно изменять k-ый оптимизирующий параметр i-ой задачи. Если δ i,k >0 – изменение в сторону увеличения, если δ i,k <0 – изменение в сторону уменьшения. εi - минимальная граница ради которой пользователь, готов жертвовать параметрами, для i-ой задачи. Для определения степени претендования задачи на ресурс используем понятие расстояния между задачей и ресурсом. Если все обязательные параметры задачи и ресурса не совпадают, то расстояние равно бесконечности – ресурс для задачи не подходит. Если же все обязательные параметры подходят, то расстояние между задачей и ресурсом рассчитывается по формуле: q d t ,r = ∑ wk ( S t ,k − S r ,k ) 2 (2) k =1 q-количество необязательных параметров задачи St,k -нормированное значение t-ой задачи, k-го оптимизирующего параметра. Sr,k -нормированное значение r-ого ресурса, k-го оптимизирующего параметра. wk -вес оптимизирующего параметра. Веса параметров рассчитываются по формуле: m wk = m ∑∑ S i =1 j =1 q m i ,k − S j ,k (3) m ∑∑∑ S k =1 i =1 j =1 i ,k − S j ,k Чтобы учесть изменения, которые допускает пользователь, используется следующая методика. 1. Если изменение оптимизирующего параметра приводят характеристиками, значит, это изменение необходимо сделать. к ( S t ,k − S r ,k ) 2 > ( S t ,k (1 + ∂ k ) − S r ,k ) 2 S t ,k − 2S t ,k S r ,k + S r ,k > S t ,k (1 + ∂ k ) 2 − 2S t ,k S r ,k (1 + ∂ k ) + S r ,k 2 2 2 2 S t ,k − 2S t ,k S r ,k > S t ,k + 2∂ k S t ,k + ∂ 2 k S t ,k − 2S t ,k S r ,k − 2S t ,k S r ,k ∂ k 2 2 2 2 2∂ k S t ,k + ∂ 2 k S t ,k − 2 S t ,k S r ,k ∂ k < 0 2 2 2∂S t ,k + ∂ 2 k S t ,k < 2 S r ,k ∂ k ∂ ∂S t ,k (1 + ) < S r ,k ∂ k 2 При δ>0 получаем: S t ,k (1 + ∂k ) < S r , k ( 4) 2 -348- уменьшению расстояния между Міжнародна конференція "Високопродуктивні обчислення" HPC-UA’2012 (Україна, Київ, 8-10 жовтня 2012 року) ________________________________________________________________________________________________________________________ При δ<0 получаем: S t ,k (1 + ∂k ) > S r ,k (5) 2 Если выполняются условия указанные выше, то: S t',k = S t ,k (1 + ∂ k ) (6) 2. Если сумма изменений по всем параметрам приводит к уменьшению расстояния между ресурсом и задачей больше указанной границы, значит необходимо применить все изменения и в дальнейшем использовать расстояние с учётом поправки. q d 't ,r = Π nm =1 ( Pt ,m − Pr ,m ) 2 ∑ wk ( S 't ,k − S r ,k ) 2 (7) - расстояние с учётом поправок k =1 Если разность расстояний меньше заданной пользователем d t ,r − d t',r d t ,r < ε t (8) , то изменить расстояние d t ,r = d t',r (9) Из расстояний между ресурсами и задачами формируется матрица выбора. Если значение элемента матрицы бесконечность, это значит, что ресурс для задачи не подходит. Матрица выбора показывает степень претендования задачи на ресурс, чем меньше значение элемента матрицы, тем больше подходит ресурс задаче. После чего решается задача о назначении задач на ресурс с учётом минимизации расстояний между задачами и ресурсами. Алгоритм формирования матрицы выбора Входные данные: T={t1 ,t2 ,..tn } – набор задач, R={r1 ,r2 ,…,rn } – множество ресурсов, Q(m+n)*k – матрица параметров задач и ресурсов. 1. Нормировка матрицы Q(m+n)*k по формуле (1) 2. Расчёт wk по формуле (3) 3. Пока i<n: j:=1 Пока j<m Расчёт d i,j по формуле (2) p:=1 Пока p<k Если δ p >0 и выполняется (4), то Рассчитать Si,p по формуле (6) Если δ p <0 и выполняется (5), то Рассчитать Si,p по формуле (6) p:=p+1; Расчёт d i,j ’ по формуле (7) Если выполняться (8), то выполнить (9) 4. Распределить задачи по ресурсам, выбирая минимальное расстояние d. Выводы Задача планирования в GRID системах имеет множество решений. Выше предложен гибкий алгоритм, который учитывает множество параметров задачи и позволяет пользователю задавать допустимые границы для каждого параметра. Алгоритм сводит множество параметров к одному с учётом весов параметров и позволяет минимизировать расстояние между задачей и ресурсом за счёт выбора оптимального значения параметра из диапазона заданного пользователем. Это увеличивает шансы задачи на получение более подходящего ресурса. -349- Міжнародна конференція "Високопродуктивні обчислення" HPC-UA’2012 (Україна, Київ, 8-10 жовтня 2012 року) ________________________________________________________________________________________________________________________ Литература [1] Parisa Rahmani, Mehdi Dadbakhsh and Soulmaz Gheisari: Improved MACO approach for grid scheduling. International Conference on Industrial and Intelligent In formation: 135-142,2012. [2] Kunfang SONG, Shufen RUAN, Minghua JIANG: A Flexible Grid Task Scheduling Algorithm Based on QoS Similarity. Journal of Convergence Information Technology: 161-166, September 2010. [3] Симоненко А.В.: Элементы теории повышения эффективности решения задачи динамического планирования в GRID системах. Вісник Національного технічного університету України “КПІ”: 48-53, Выпуск 53, 2010. -350-