Anda di halaman 1dari 6

Escalonamento de Tarefas Divisveis em Redes Estrela

Elbio Renato Torres Abib1, Celso Carneiro Ribeiro2


1

Departamento de Inform tica Uni o Pioneira de Integracao Social a a SEPS 712/912, Conj. A - Asa Sul 70390-125 Braslia, DF

Departamento de Inform tica Pontifcia Universidade Cat lica do Rio de Janeiro a o Rua Marqu s de S o Vicente, 225 RDC 22453-900 Rio de Janeiro, RJ e a
elbio02781@upis.br, celso@inf.puc-rio.br

Abstract. The divisible job scheduling problem consists of determining how to divide the data to be processed among processors and in which order each fraction should be sent to them. It is considered the divisible load scheduling problem in star networks with heterogeneous computers and links. Original mixed integer linear programming formulations of this problem are proposed, as well as new heuristics and a new algorithm with complexity O(n) to nd the optimal solution for a special case. Resumo. O problema de escalonamento de tarefas divisveis consiste em de terminar como uma carga a ser processada deve ser dividida entre processadores e em que ordem cada fracao de carga ser enviada a cada processador. a Considera-se o escalonamento em redes estrela com computadores e enlaces heterog neos. Para este problema s o propostas formulacoes originais como e a modelos de programacao linear inteira mista, novas heursticas e um novo al goritmo de complexidade O(n) para a solucao otima de um caso especial.

1. Introducao
O grande aumento de performance das redes de computadores, combinado com a ` proliferacao de computadores de baixo custo e alto desempenho, trouxe a tona ambi entes de meta-computacao, ou grids [Foster e Kesselman 2004]. Estes ambientes po dem combinar milhares de computadores de centenas de domnios diferentes, conectados atrav s de redes locais ou pela rede mundial. A grande heterogeneidade deste tipo de e ambiente, somada a muitas restricoes de seguranca (tanto em termos de acesso, como de comunicacao entre processadores), v m impulsionando o estudo de um tipo especial de e tarefa, as chamadas tarefas divisveis. O conceito de tarefas divisveis foi introduzido originalmente por Robertazzi et al. [Cheng e Robertazzi 1988] e tem sido bastante estudado nos ultimos anos. Uma tarefa divisvel e caracterizada por poder ser dividida arbitrariamente em um n mero qualquer u de fracoes de carga, podendo cada parte ser processada em paralelo, sem restricoes de preced ncia. Este modelo permite inclusive uma divis o fracion ria da carga, o que sime a a plica o seu estudo sem reduzir muito sua generalidade, uma vez que pressup e-se uma o alta granularidade de dados.

Apoiado pela Pontifcia Universidade Cat lica do Rio de Janeiro e o CNPq. o


36

XVIII CTD

Muitas aplicacoes modernas podem ser modeladas como tarefas divisveis. Como exemplos, pode-se citar a busca por um padr o de imagem num grande a o de grafos, juncoes em banco de dados, entre ou banco de imagens, coloraca tros [Drozdowski e Wolniewicz 2000]. Este modelo de carga divisvel fornece uma maneira simples, por m realista, para o mapeamento de tarefas independentes em e ` plataformas heterog neas, cuja boa ader ncia as situacoes reais e apresentada em e e [Drozdowski e Wolniewicz 2000]. Assim como nos demais trabalhos relacionados ao escalonamento de tarefas divisveis, considera-se apenas grids dedicados, ou seja, sistemas heterog neos inteiramente e ` dedicados a execucao da tarefa divisvel. Ao contr rio de grids n o-dedicados, onde pode a a existir grande utuacao no poder computacional disponvel em cada processador. No trabalho e apresentado o modelo de sistema considerado, os m todos encontrae dos na literatura para o escalonamento de tarefas divisveis, bem como os novos resultados obtidos em [Abib e Ribeiro 2004]. Por m s o apresentados resultados computacionais a que comparam as principais t cnicas apresentadas. e 1.1. Modelo de sistema Assim como em [Beaumont et al. 2003], segue-se o paradigma mestre/escravo (ou mestre/trabalhador), onde n processadores escravos s o referenciados como P1 , P2 , . . . , a Pn e o processador mestre como P0 . Neste modelo, o processador mestre n o participa a da computacao, sem perda de generalidade. A topologia de interconex o dos processadores e do tipo estrela, formada por n a enlaces que ligam o processador mestre P0 aos demais. Assume-se que o mestre utiliza a rede de forma seq encial, ou seja, ele envia dados a no m ximo um processador por u a vez, sem possibilidade de concorr ncia. Esta caracterstica, comumente assumida nos e trabalhos relacionados, pode ser justicada pela implementacao no processador mestre ou por propriedades dos enlaces de rede. Uma vez denido que o processador P0 enviar uma quantidade de dados (mea dida em unidades de informacao, e.g. tr s imagens) para o processador Pi , o enlace de e comunicacao ser utilizado por um perodo de tempo gi + Gi i , onde gi e a lat ncia de a e comunicacao e Gi e o inverso da taxa de transmiss o do enlace entre P0 e Pi . a Ap s Pi receber todos os i dados, ele ir processa-los por um perodo de tempo o a a igual a wi i , onde wi e o tempo necess rio para o processamento de uma unidade de informacao. E importante salientar que o modelo assume comunicacao e computacao concorrentes, o que e aproveitado por certas t cnicas de escalonamento. e 1.2. Escalonamento de tarefas divisveis Com o objetivo de facilitar o estudo do comportamento de diferentes escalonadores, foi desenvolvido um m dulo que permite a visualizacao do comportamento do sistema com o um gr co de Gantt, dada uma s rie de decis es de escalonamento (como na Figura 1). a e o No problema de escalonamento de tarefas divisveis, tem-se como principal par metro de performance, o chamado makespan, que consiste no tempo de t rmino do a e ultimo processador que participa da computacao da carga W . Sua minimizacao e o obje tivo das t cnicas apresentadas. e
XVIII CTD 37

E dito que um escalonamento e feito em um unico perodo se a tarefa divisvel e particionada e, dada uma ordem de envio, cada processador Pi que participar do procesa nica parcela i numa unica vez, i = 1, . . . , n. No gr co da samento recebe uma u a Figura 1, por exemplo, e apresentado um escalonamento otimo onde P6 foi o primeiro processador a receber carga, seguido por P1 , P8 e assim por diante. As barras pretas indicam as lat ncias de comunicacao(gi ), as cinzas-escuras indicam o tempo vari vel de e a comunicacao(Gi i ) e as cinzas-claras indicam o tempo de processamento(wi i ). Nota-se que todos os processadores receberam carga uma unica vez e terminaram de process -las a no mesmo instante de tempo.

Figura 1. Escalonamento otimo em apenas um perodo

Com o objetivo de aproveitar mais o paralelismo, s o utilizadas t cnicas com a e m ltiplos perodos. Na maioria das t cnicas descritas na literatura tem-se uma ordem u e xa de envio de dados para os processadores. O processador mestre comeca ent o a en a viar i,1 dados para cada processador Pi segundo a ordem j denida, i = 1, . . . , n. Ap s a o o t rmino do envio de dados para todos os processadores na primeira rodada, P0 envia e i,2 dados para cada processador Pi na mesma ordem, e assim por diante. O gr co da a Figura 2 ilustra um exemplo onde s o utilizados tr s perodos de envio (delimitados por a e barras verticais).

Figura 2. Escalonamento em multiplos perodos

2. Escalonamento usando apenas um perodo


Ainda n o foi encontrado um algoritmo polinomial que resulte no makespan otimo para a o escalonamento de tarefas divisveis considerando lat ncias de comunicacao. Existem e por m resultados para alguns casos especiais onde a otimalidade pode ser conseguida com e
XVIII CTD 38

facilidade. Em [Blazewicz e Drozdowski 1997] foi apresentado um estudo da inu ncia e da inclus o de lat ncias de comunicacao em sistemas com diferentes topologias, sendo a e que casos especiais foram identicados para sistemas com rede estrela. Estes resultados, juntamente com aqueles encontrados em [Beaumont et al. 2003], permitem solucionar o problema de maneira otima para sistemas com taxas de transmiss o id nticas (algoritmo a e O(n log n)), para enlaces id nticos (algoritmo O(n log n)) e com ordem de envio pr e e determinada (algoritmo O(n log n)). Para este ultimo caso especial foi desenvolvido neste trabalho um novo algoritmo r pido AlgRap que encontra o escalonamento otimo com complexidade O(n). Com este a resultado importante, foi possvel o desenvolvimento de uma nova heurstica construtiva com retro-alimentacao HeuRet. Esta heurstica escolhe uma ordem de envio e utiliza se de AlgRap para encontrar bons escalonamentos de forma r pida. Com o objetivo de a encontrar resultados ainda melhores, foram desenvolvidas duas t cnicas de busca local e para este problema que, em conjunto com HeuRet, obt m resultados muito bons. e Al m dos algoritmos descritos anteriormente, buscando-se resultados otimos para e o problema geral, neste trabalho desenvolveu-se um modelo original de programacao lin ear inteira mista com algumas desigualdades v lidas (contrastando com os modelos n oa a lineares inteiros mistos da literatura). Este modelo permite encontrar o resultado otimo para inst ncias de menor porte e um limite inferior para inst ncias maiores. a a

3. Escalonamento usando multiplos perodos


Para o escalonamento usando m ltiplos perodos considerando-se lat ncias, pode-se enu e contrar em [Beaumont et al. 2003] as heursticas HF ix e HAdapt. Enquanto HF ix xa o tamanho de todos os perodos a priori, HAdapt ajusta a duracao dos perodos durante o escalonamento. E proposta neste trabalho uma nova heurstica HeuM ul para escalonamento em m ltiplos perodos. Este m todo utiliza HeuRet para determinar a ordem de envio e u e escolhe o n mero de perodos a serem utilizados para esta dada ordem. u Partindo-se para o estudo de uma solucao exata para o problema, n o se encontrou a na literatura formulacoes como modelos de programacao linear ou n o-linear inteiras. a Neste trabalho foram ent o desenvolvidos dois modelos de programacao linear inteira a mista para o problema, sendo esta mais uma das importantes contribuicoes deste trabalho. Resultado este importante para comparacao das heursticas e determinacao de limites in feriores. O primeiro modelo considera um n mero xo de processadores e perodos, u enquanto que o segundo determina o n mero otimo de perodos a serem utilizados. u

4. Resultados computacionais
Para a an lise das t cnicas apresentadas, foi desenvolvido uma biblioteca de classes em a e C++ para representar sistemas heterog neos com as caractersticas descritas, simular a e execucao das t cnicas e gerar logs a serem analisados pelo m dulo criador de gr cos de e o a Gantt. Para a resolucao dos modelos criados, foi utilizado o pacote ILOG CPLEX v8.0. Para a comparacao das t cnicas, foram gerados 720 casos de teste organizados e conforme poder computacional dos processadores, velocidade dos enlaces, n mero de u processadores e quantidade de dados a serem processados.
XVIII CTD 39

Com os novos modelos lineares inteiros mistos propostos no trabalho foi possvel encontrar solucoes otimas para 160 casos de teste usando perodo unico e 14 usando m ltiplos perodos. Para os demais casos de teste foram utilizadas as relaxacoes destes u modelos para a obtencao de bons limites inferiores. A utilizacao destes modelos per mitem que neste trabalho e em trabalhos futuros, os resultados de heursticas possam ser comparados de forma mais objetiva. Com os testes computacionais, vericou-se que HeuRet resultou em escalona mentos otimos para 95% dos casos onde s o conhecidos tais resultados, necessitando para a isso em m dia cinco milisegundos de processamento (viabilizando sua utilizacao on-line). e Apesar da maioria dos resultados otimos n o serem conhecidos, gracas as relaxacoes dos a ` modelos criados, sabe-se que os makespans obtidos pela heurstica HeuRet, na m dia de e todos os casos de teste, n o se distanciam mais do que 30% dos resultados otimos. a ` Para escalonamentos com m ltiplos perodos, devido a sua complexidade, foi u possvel encontrar apenas 14 solucoes otimas, sendo que HeuM ul conseguiu encontrar 12 destas, exigindo em m dia de 12 segundos de processamento. Os testes tamb m apone e taram que HeuRet obteve makespans que s o respectivamente 1/28 e 1/30 dos obtidos a pelas t cnicas HAdapt e HF ix, encontradas na literatura. Esta grande diferenca e decore rente da forma de previs o de makespan utilizado por ambas as t cnicas. a e

5. Conclus o a
Neste trabalho foram desenvolvidas t cnicas inovadoras para o escalonamento de tarefas e divisveis, incluindo um algoritmo de complexidade O(n) para um caso especial muito importante (at ent o na literatura s existia um algoritmo de complexidade O(n log n)) e a o e heursticas que obtiveram resultados empricos excelentes. Resultados esses que, na ` maioria das simulacoes realizadas, se mostraram muito superiores aqueles das heursticas da literatura. Foram tamb m desenvolvidos novos modelos lineares inteiros mistos que pere mitem que sejam encontradas solucoes otimas para muitas inst ncias, al m de limites a e inferiores para uma s rie de inst ncias maiores, o que possibilita uma an lise mais obe a a jetiva dos resultados encontrados por heursticas. Salienta-se que os modelos originais propostos podem ser adaptados com bastante facilidade para variacoes do problema de escalonamento em redes estrela, servindo como importante ferramenta para um vasto espectro da pesquisa em escalonamento de tarefas divisveis.

Refer ncias Bibliogr cas e a


Abib, E. R. T. e Ribeiro, C. C. (2004). Escalonamento de tarefas divisveis em redes estrela. Dissertacao de Mestrado, PUC-Rio. Beaumont, O., Legrand, A., e Robert, Y. (2003). Optimal algorithms for scheduling divisible workloads on heterogeneous systems. Em 12th Heterogeneous Computing Workshop. IEEE Computer Society Press. Blazewicz, J. e Drozdowski, M. (1997). Distributed processing of divisible jobs with communication startup costs. Discrete Applied Mathematics, 76:2141. Cheng, Y. C. e Robertazzi, T. G. (1988). Distributed computation with communication delay. IEEE Transactions on Aerospace and Electronic Systems, 24:700712.
XVIII CTD 40

Drozdowski, M. e Wolniewicz, P. (2000). Experiments with scheduling divisible tasks in clusters of workstations. Em Bode, A., II, T. L., Karl, W., e Wism ller, R., editores, u 6th International Euro-Par Conference, volume 1900 de Lecture Notes in Computer Science, p ginas 311319, Munique. Springer-Verlag. a Foster, I. e Kesselman, C. (2004). The Grid: Blueprint for a New Computing Infrastructure. Morgan Kaufmann.

XVIII CTD

41

Anda mungkin juga menyukai