Comportamento da Comunicação em Ambientes Heterogêneos

Texto

(1)

Comportamento da Comunicac¸ ˜ao em Ambientes Heterogˆeneos

Diego Lu´ıs Kreutz1 , M´arcia Cristina Cera1 , Rodrigo da Rosa Righi2

1Laborat´orio de Sistemas de Computac¸˜ao – Universidade Federal de Santa Maria Inform´atica/CT - UFSM Campus - 97105-900 Santa Maria, RS

2Instituto de Inform´atica – Programa de P´os-Graduac¸˜ao em Computac¸˜ao Universidade Federal do Rio Grande do Sul

Caixa Postal 15064 – 90501-970 Porto Alegre, RS

{kreutz, cera}@inf.ufsm.br, rrrighi@inf.ufrgs.br

Abstract. The purpose of this paper is to present performance measures that can become useful for application schedule and execution decisions on hete- rogeneous clusters of computers and also help in decisions of growing up and updating the cluster components. Those decisions can be choices as increase the machines processing power or invest in better network adapters and swit- ches. This, without forget to think about the kind of application that will make use of the cluster’s computational resources.

Resumo. A proposta deste artigo ´e apresentar medidas de desempenho que pos- sam vir a serem ´uteis para decis˜oes de escalonamento e execuc¸ ˜ao de aplicac¸˜oes em aglomerados de computadores heterogˆeneos e, ainda, auxiliar em decis ˜oes de ampliac¸˜ao ou atualizac¸˜ao de componentes do aglomerado. Tais decis ˜oes po- dem ser opc¸˜oes como aumentar a capacidade de processamento das m ´aquinas ou investir em adaptadores e comutadores de rede melhores. N ˜ao esquecendo de levar em conta o tipo de aplicac¸˜ao que faz mais uso dos recursos computa- cionais do aglomerado.

1. Introduc¸˜ao

Atualmente os aglomerados de computadores heterogˆeneos est˜ao recebendo cada vez mais atenc¸˜ao e importˆancia [Aumage, 2002, Mai and Rose, 2000, Hamdi et al., 1999, Orsoletta et al., 2003]. Isso se deve principalmente a fatores econˆomicos e organizaci- onais. Aglomerados heterogˆeneos podem ser adquiridos em parcelas e, al´em disso, po- dem ser compostos por equipamentos diversificados existentes na organizac¸˜ao e talvez sub-utilizados.

O desempenho de uma aplicac¸˜ao que venha a ser executada num ambiente hete- rogˆeneo est´a diretamente associado a quais recursos computacionais ser˜ao disponibiliza- dos para a sua execuc¸˜ao. A comunicac¸˜ao e o processamento s˜ao os pontos chaves para que ambientes paralelos possam apresentar alto desempenho. Uma aplicac¸˜ao pode ter seu desempenho comprometido por um processador ou placa de rede que sejam pouco eficientes. Mas tamb´em, se tivermos dispon´ıvel um processador muito veloz que utilize uma placa de rede lenta, este conjunto, potencialmente, tornar´a impratic´avel a execuc¸˜ao de uma aplicac¸˜ao paralela com alto desempenho.

Fomento: CNPq e Capes.

(2)

Considerando os aspectos de diversidade dos aglomerados heterogˆeneos, este ar- tigo objetiva apresentar dados de desempenho obtidos na execuc¸˜ao de uma determinada aplicac¸˜ao. Nesse texto ´e dada ˆenfase ao comportamento do desempenho da aplicac¸˜ao levando em conta diferentes adaptadores de rede e equipamentos de interconex˜ao.

A proposta do artigo ´e apresentar medidas de desempenho que possam vir a se- rem ´uteis para decis˜oes de escalonamento e execuc¸˜ao de aplicac¸ ˜oes e, ainda, auxiliar em decis˜oes de ampliac¸˜ao ou atualizac¸˜ao do aglomerado. Tais decis˜oes podem ser opc¸˜oes como aumentar a capacidade de processamento das m´aquinas ou investir em adaptadores e comutadores de rede melhores. N˜ao esquecendo de levar em conta o tipo de aplicac¸˜ao que faz mais uso dos recursos computacionais do aglomerado.

O restante do texto est´a estruturado da seguinte forma. A pr´oxima sec¸˜ao mostra o ambiente heterogˆeneo utilizado para execuc¸˜ao da aplicac¸˜ao. Em seguida, tem-se uma sec¸˜ao que descreve a aplicac¸˜ao utilizada para a obtenc¸˜ao dos dados de desempenho. Uma an´alise do comportamento do desempenho da aplicac¸˜ao no aglomerado heterogˆeneo ´e mostrada na sec¸˜ao seguinte. Por fim, tem-se a conclus˜ao e as referˆencias empregadas na elaborac¸˜ao desse artigo.

2. O Ambiente Heterogˆeneo

Para executar a aplicac¸˜ao desenvolvida foram utilizados dois n´os de um aglomerado de computadores heterogˆeneos do Laborat´orio de Sistemas de Computac¸˜ao (LSC). Ambos os n´os desse aglomerado possuem diversos adaptadores de rede e podem ser ligado por diferentes equipamentos de interconex˜ao, como comutadores e hub.

A configurac¸˜ao das m´aquinas utilizadas nos testes s˜ao computadores Athlon MP 2400 com dois processadores de 2GHz, 1GB de RAM, 256KB de cache e ChipSet ADM- 760 IGD4-2P. Os dispositivos de rede do ambiente podem ser vistos na tabela 1. Nela est˜ao inclu´ıdos os equipamentos de interconex˜ao e os adaptadores de rede Gigabit e Fast Ethernet. O c´odigo de cada equipamento, apresentado na primeira coluna da tabela 1, ser´a utilizado no decorrer do texto para referenci´a-lo.

Tabela 1: Equipamentos de interconex ˜ao do aglomerado

C´odigo Especificac¸˜ao

3C17700 Chaveador Gigabit Ethernet 3COM 4900 3C17700

GS224S Chaveador Fast Ethernet, com duas portas uplink Gigabit Ethernet, Hawking Tecnology GS224S

3C16464 Chaveador Fast Ethernet 3COM 3C16464A BEFW11S4 Chaveador Fast Ethernet Linksys

AEF-1008T Hub Fast Ethernet Addtron AEF-1008T

Netgear Placa de rede Gigabit Ethernet Netgear GA302T DLink Placa de rede Gigabit Ehernet DLink DGE-550T 3Com Placa de rede Gigabit Ehernet 3COM 3C996T

Hawking Placa de rede Gigabit Ehernet Hawking GA132T 1000T

Quanto ao software, os n´os de processamento rodam distribuic¸˜ao GNU/Linux Gentoo compilada do zero. O sistema roda o n´ucleo 2.4.24 e o compilador gcc 3.3.2. Para o desenvolvimento da aplicac¸˜ao foi utilizada a biblioteca de comunicac¸˜ao LAM/MPI em sua vers˜ao lam-7.0.3.

(3)

3. Aplicac¸˜ao

A fim de avaliar alguns aspectos de desempenho de processadores e dispositivos de rede, foi desenvolvida uma aplicac¸˜ao simples de troca de mensagens. Esta consiste em um pro- grama MPI (Message Passing Interface) [Gropp et al., 1994] que cria um ou mais fluxos de execuc¸˜ao por n´o de processamento.

A figura 1 ilustra a arquitetura e funcionamento da aplicac¸˜ao. Nessa aplicac¸˜ao podem ser realizados de 1 a n ping-pongs simultˆaneos. O N´o0, referenciado na figura 1, atua como mestre e nele s˜ao criados os processos mestres (PM). Em um n´o escravo, por exemplo N´o1, s˜ao criados os processos escravos (PE). O in´ıcio da troca de mensagem acontece atrav´es de um PM que envia uma mensagem a um PE. Esse, por sua vez, recebe os pacotes e os envia novamente ao mestre. Ao receber o retorno das mensagens o mestre finaliza a iterac¸˜ao, ou seja, esta completo um ping-pong.

Os tempos s˜ao coletados pelos processos PM. Nele ´e feita uma chamada de rel´ogio antes do envio e outra ap´os o recebimento de cada pacote de dados. A diferenc¸a entre os tempos ´e tomada como o tempo de comunicac¸˜ao individual para um determinado PM. A aplicac¸˜ao soma esses tempos individuais e os divide pelo n´umero de ping-pongs realiza- dos simultaneamente.

No0

PM2 PM1

PMn

PE2 PE1

PEn

PM(Processo Mestre)

2 − Recebe 1 − Envia tempo inicial

tempo final

No1

1 − Recebe 2 − Envia PE(Processo Escravo)

... ... ...

Figura 1: Arquitetura e funcionamento da aplicac¸ ˜ao

4. An´ alise do Comportamento

Os n´os de um aglomerado necessitam se comunicar para realizar sincronizac¸˜oes e trocar dados. A eficiˆencia dessa passagem de mensagem pode ser influenciada pelos equipa- mentos que constituem o aglomerado, pela quantidade de operac¸ ˜oes desse gˆenero que s˜ao realizadas e pelo tamanho da mensagem a ser transferida. Nesse contexto, foi mon- tada uma estrutura de teste para analisar o comportamento da troca de mensagens em um aglomerado sobre diferentes componentes de rede (apresentados na sec¸˜ao 2).

Os objetivos da an´alise realizada est˜ao representados na tabela 2. O objetivo 1 pro- cura avaliar qual a melhor adaptador de rede em ambientes homogˆeneos e heterogˆeneos.

Nesse ´ultimo, ´e verificado o comportamento de um aglomerado composto de diferen- tes adaptadores. O objetivo 2 procura observar quais as situac¸˜oes onde um hub ou um chaveador atinge melhor desempenho. Esse objetivo trata do impacto da quantidade de mensagens nas filas de um equipamento de interconex˜ao. Atrav´es desse ponto de vista, pode-se avaliar qual o equipamento de interconex˜ao que melhor conseguiria atuar sobre um tr´afego de grande volume de dados. Al´em disso, com essa an´alise poder-se-´a tamb´em inferir sobre o equipamento mais adequado para um aglomerado ou rede local, depen- dendo do fluxo e do tamanho das mensagens.

Em todos os testes realizados, os tempos finais de comunicac¸˜ao s˜ao uma m´edia de 10.000 execuc¸˜oes da aplicac¸˜ao desenvolvida para cada tamanho de mensagem. A curva

(4)

visualizada nos gr´aficos representa o desempenho de um determinado cen´ario. Quanto menor for a inclinac¸˜ao (acelerac¸˜ao) dessa curva, melhor ser´a o seu desempenho.

Tabela 2: Objetivos da Comparac¸ ˜ao de Desempenho

Objetivo An´alise Significado

1 Adaptador de rede Verificar qual placa de rede obteve o melhor desempenho e qual a melhor relac¸˜ao

custo/benef´ıcio

2 Equipamento de Analisar a diferenc¸a de realizar a troca interconex˜ao de mensagens sobre um hub ou sobre

um switch

A an´alise realizada com os adaptadores de rede utiliza dois cen´arios: (i) ho- mogˆeneo; (ii) heterogˆeneo. No cen´ario i realiza-se a comunicac¸˜ao entre dois n´os de um aglomerado configurados com a mesma placa de rede. O cen´ario ii apresenta a troca de mensagem entre diferentes adaptadores de rede. Ele mostra 6 cen´arios poss´ıveis, gerados atrav´es da combinac¸˜ao dos 4 diferentes adaptadores de rede dispon´ıveis para teste.

As figuras 2 e 3 apresentam gr´aficos de uma comparac¸˜ao de desempenho utili- zando, respectivamente, a execuc¸˜ao de 1 e 4 ping-pongs simultˆaneos entre dois n´os do aglomerado. Em ambas as figuras, ´e analisado o comportamento da troca de mensagem, em um intervalo de 0 a 1000 bytes, entre placas de mesmo modelo.

A placa da empresa 3Com obteve os melhores resultados na maior parte do inter- valo analisado, seguido pelas placas da empresa Hawking. Esta ´ultima supera as demais na execuc¸˜ao de 1 ping-pong e quando ´e empregado um tamanho de troca de mensagem igual a zero. Mensagens desse gˆenero s˜ao ´uteis para realizar operac¸ ˜oes de sincronizac¸˜ao.

Ainda com 1 ping-pong, pode-se observar que com o acr´escimo do tamanho da mensa- gem, a placa 3Com apresenta uma menor acelerac¸˜ao no tempo de comunicac¸˜ao. A maior disparidade entre os adaptadores pode ser vista no instante da passagem de mensagens de tamanho igual a 1000 bytes, onde uma comunicac¸˜ao com placas 3Com atinge aproxi- madamente 175 microsegundos, contra 255 atingidos pelos equipamentos Hawking. Com um maior fluxo de comunicac¸˜ao, caso da execuc¸˜ao com 4 ping-pongs simultˆaneos, a placa 3Com apresenta melhor desempenho durante todo o intervalo de tamanho de mensagem analisado. Neste caso, ´e interessante ressaltar que as placas Hawking possuem o seu de- sempenho mais aproximado, se comparado com a execuc¸˜ao com 1 ping-pong, com o das placas Netgear e Dlink.

A an´alise das placas de rede em um cen´ario heterogˆeneo pode ser observado nos gr´aficos das figuras 4 e 5. A figura 4 representa a execuc¸˜ao de 1 ping-pong e, a figura 5, por sua vez, de 4 ping-pongs simultˆaneos. Em ambos os gr´aficos pode-se observar que o desempenho do conjunto que possui a placa 3Com como um dos elementos atinge melhor desempenho. O conjunto formado pelo dueto 3Com e Hawking (as duas placas de rede de melhor desempenho) atingiu um menor tempo de comunicac¸˜ao durante a an´alise com 1 ping-pong, como pode ser visto na figura 4. A execuc¸˜ao com 4 ping-pongs simultˆaneos salienta o desempenho obtido ao se utilizar uma placa 3Com. Isso pode ser analisado na figura 5, onde praticamente existem dois grupos de execuc¸˜ao, aquele que possui um elemento 3Com e aquele que n˜ao o possui.

Os testes de interconex˜ao abrangem 5 equipamentos. Dentre eles, 3 s˜ao chavea- dores com a tecnologia Fast Ethernet. Os dois restantes s˜ao um chaveador com tecnologia Gigabit Ethernet e um hub com tecnologia Fast Ethernet. Todos esses testes foram realiza- dos utilizando a placa de rede 3Com Gigabit e com o tamanho de mensagem variando de

(5)

0 50 100 150 200 250

0 200 400 600 800 1000

tempo de comunicacao (em microseconds)

tamanho dos pacotes (em bytes) tempo de comunicacao versus tamanho do pacote

legend 3Com-3Com

DLink-DLink Hawking-Hawking

Netgear-Netgear

Figura 2: Execuc¸ ˜ao de 1 ping-pong entre placas Gigabit homog ˆeneas

0 50 100 150 200 250 300 350

0 200 400 600 800 1000

tempo de comunicacao (em microseconds)

tamanho do pacote (em bytes) tempo de comunicacao versus tamanho do pacote

legenda 3Com-3Com

DLink-DLink Hawking-Hawking

Netgear-Netgear

Figura 3: Execuc¸ ˜ao de 4 ping-pong entre placas Gigabit homog ˆeneas

100 a 3000 bytes. Informac¸˜oes t´ecnicas e os nomes destes equipamentos de interconex˜ao e placas de rede est˜ao descritos na sec¸˜ao 2.

Os gr´aficos das figuras 6, 7 e 8 apresentam a an´alise realizada no teste de inter- conex˜ao. Esses gr´aficos representam a m´edia de tempo de execuc¸˜ao de 2, 3 e 4 ping- pongs respectivamente. Nesses 3 gr´aficos de an´alise de interconex˜ao, pode-se observar que o chaveador Gigabit apresentou o melhor desempenho. Ainda na presenc¸a de um maior fluxo de comunicac¸˜ao, representado na figura 8 quando ´e executado 4 ping-pongs simultˆaneos, este chaveador apresenta um tempo inferior a 400 microsegundos quando transmite mensagens de 3000 bytes.

Os gr´aficos da an´alise do comportamento da interconex˜ao permitem verificar o impacto do acr´escimo do fluxo de dados sobre o hub AEF-1008T (sec¸˜ao 2). No gr´afico 6, pode-se inferir que na grande parcela de tamanho de mensagens, a execuc¸˜ao da aplicac¸˜ao de 2 ping-pongs simultˆaneos ao utilizar o hub, anteriormente especificado, termina em um tempo menor do que os demais chaveadores Fast Ethernet. Esta situac¸˜ao vai sendo alterada na medida que o fluxo de dados sobre os equipamentos de interconex˜ao vai au- mentando. Na execuc¸˜ao de 3 ping-pongs simultˆaneos, figura 7, o hub tem o seu desempe- nho penalizado. At´e o momento da troca de mensagens de tamanho igual a 750, ele tem o seu desempenho equiparado com os demais chaveadores Fast Ethernet. A partir desse

(6)

0 50 100 150 200 250

0 200 400 600 800 1000

tempo de comunicacao (em microseconds)

tamanho dos pacotes (em bytes) tempo de comunicacao versus tamanho do pacote

legend 3Com-DLink

3Com-Hawking 3Com-Netgear

DLink-Hawking DLink-Netgear

Netgear-Hawking

Figura 4: Execuc¸ ˜ao de 1 ping-pong entre placas Gigabit heterog ˆeneas

0 50 100 150 200 250 300 350

0 200 400 600 800 1000

tempo de comunicacao (em microseconds)

tamanho do pacote (em bytes) tempo de comunicacao versus tamanho do pacote

legenda 3Com-DLink

3Com-Hawking 3Com-Netgear

DLink-Hawking DLink-Netgear

Netgear-Hawking

Figura 5: Execuc¸ ˜ao de 4 ping-pong entre placas Gigabit heterog ˆeneas

ponto, ele apresenta o pior desempenho entre os elementos de interconex˜ao analisados, atingindo a taxa de aproximadamente 1100 microsegundos para a transmiss˜ao de 3000 bytes.

O gr´afico da figura 8 deixa ainda mais evidente o decr´escimo de desempenho do hub em relac¸˜ao aos demais equipamentos. Esse gr´afico representa a execuc¸˜ao de 4 ping-pongs simultˆaneos e a aplicac¸˜ao com o hub acaba apresentando o pior desempenho durante todo o intervalo de tamanho de mensagem. O desempenho das aplicac¸˜oes que utilizam um hub tendem a apresentar um pior desempenho do que aquelas que fazem uso de chaveadores. Isso devido ao funcionamento de um hub, onde um pacote gerado por um elemento da rede ´e enviado a todos os equipamentos ligados a ele e, somente aquele que for o destinat´ario ir´a captur´a-lo. Em um chaveador, um pacote gerado por um determinado elemento da rede ´e enviado diretamente para o elemento de destino.

O desempenho das aplicac¸˜oes que executam v´arias operac¸˜oes sobre a rede tende a ser penalizado devido ao fato de usarem o protocolo padr˜ao TCP/IP. Esse protocolo ´e implementado dentro do n´ucleo do sistema operacional e toda e qual- quer troca de mensagem, ao utiliz´a-lo, deve necessariamente passar por esse n´ucleo [von Eicken and Vogels, 1998]. Desta maneira, o n´ucleo do sistema operacional atua como um gargalo, pois tem que realizar as operac¸ ˜oes de multiplexac¸˜ao e demultiplexac¸˜ao

(7)

0 100 200 300 400 500 600 700 800 900 1000

0 500 1000 1500 2000 2500 3000

Tempo de comunicacao/transferencias em microsegundos

Tamanho do pacote

Tamanho do pacote X tempo de comunicacao/transferencia

Legenda

3c16464a 3c17700 aef-1008T befw11s4 gs224s

Figura 6: Comportamento de equipamentos de interconex ˜ao com 2 ping-pongs

0 200 400 600 800 1000 1200

0 500 1000 1500 2000 2500 3000

Tempo de comunicacao/transferencias em microsegundos

Tamanho do pacote

Tamanho do pacote X tempo de comunicacao/transferencia

Legenda

3c16464a 3c17700 aef-1008T befw11s4 gs224s

Figura 7: Comportamento de equipamentos de interconex ˜ao com 3 ping-pongs

0 200 400 600 800 1000 1200 1400

0 500 1000 1500 2000 2500 3000

Tempo de comunicacao/transferencias em microsegundos

Tamanho do pacote

Tamanho do pacote X tempo de comunicacao/transferencia

Legenda

3c16464a 3c17700 aef-1008T befw11s4 gs224s

Figura 8: Comportamento de equipamentos de interconex ˜ao com 4 ping-pongs

de dados, limitando o desempenho das aplicac¸˜oes. Uma das alternativas para contornar esse problema ´e a utilizac¸˜ao de tecnologias de rede que realizam a comunicac¸˜ao em n´ıvel de usu´ario como, VIA (Virtual Interface Architecture) [von Eicken and Vogels, 1998] e

(8)

Infiniband [IBTA InfiniBand Trade Association, 2002]. Ambas realizam a comunicac¸˜ao diretamente da aplicac¸˜ao do usu´ario para o adaptador de rede.

5. Conclus˜ao

Aglomerados de computadores heterogˆeneos s˜ao uma realidade cada vez mais pre- sente entre pesquisadores e organizac¸˜oes que trabalham com sistemas de alto desem- penho. Analisar as caracter´ısticas e comportamentos de componentes que fazem parte das m´aquinas que comp˜oe esses aglomerados ´e algo importante e que poder´a auxiliar na decis˜ao por aquisic¸˜ao de novos componentes, no balanceamento de cargas de aplicac¸ ˜oes, na estruturac¸˜ao da rede de interconex˜ao e na construc¸˜ao de ambientes de execuc¸˜ao e de- senvolvimento de programas paralelos.

Com os dados apresentados na sec¸˜ao 4 pode ser conclu´ıdo que ´e interessante, e muitas vezes necess´ario, conhecer-se o ambiente de execuc¸˜ao para se obter o m´aximo de desempenho com os recursos, muitas vezes limitados, dispon´ıveis. Nos testes realizados, foi poss´ıvel observar a rapidez da troca de mensagem com os adaptadores 3Com e o de- sempenho obtido pelos chaveadores, principalmente aquele constru´ıdo com a tecnologia Gigabit Ethernet. No ambiente utilizado para os testes, ainda s˜ao necess´ario maiores testes com aplicac¸ ˜oes que resolvam problemas reais. Al´em disso, tamb´em ´e interessante anali- sar aplicac¸ ˜oes que necessitem de um grande poder computacional e/ou uma comunicac¸˜ao eficiente para atingir o melhor desempenho poss´ıvel dentro dos limites de recursos com- putacionais oferecidos pelo aglomerado.

Trabalhos futuros. Nossa intenc¸˜ao ´e continuar testando aspectos de desempe- nho em aglomerados heterogˆeneos utilizando tamb´em aplicac¸˜oes reais. Est˜ao sendo im- plementados algoritmos paralelos de otimizac¸˜ao e processamento de imagens que ser˜ao executados em aglomerados heterogˆeneos. Tamb´em tem-se a id´eia de dar suporte e de desenvolver algoritmos de balanceamento de carga e escalonamento que tratem melhor dos aspectos e caracter´ısticas de desempenho apresentadas nesse artigo.

Referˆencias

Aumage, O. (2002). Heterogeneous multi-cluster networking with the Madeleine III com- munication library. In 16th International Parallel and Distributed Processing Sympo- sium, page 85, Washington - Brussels - Tokyo. IEEE.

Gropp, W., Lusk, E., and Skjellum, A. (1994). Using MPI: Portable Parallel Program- ming with the Message-Passing Interface. MIT Press, Cambridge, MA.

Hamdi, M., Pan, Y., Hamidzadeh, B., and Lim, F. M. (1999). Parallel Computing on an Ethernet Cluster of Workstations: Opportunities and Constraints. In The Journal of Supercomputing, volume 13, pages 111–132.

IBTA InfiniBand Trade Association (2002). Inifiniband architecture specification, vol. 1, release 1.1. Dispon´ıvel em http://www.infinibandta.org/specs.

Mai, G. C. and Rose, A. F. D. (2000). Low cost cluster architectures for parallel and distributed processing. In CLEI Electronic Journal, volume 3.

Orsoletta, R. A. D., Arezi, F., Rebonatto, M. T., and Brusso, M. J. (2003). M´aquinas now heterogˆeneas. In Anais da 3 Escola Regional de Alto Desempenho, pages 241–244, Santa Maria, Brasil.

von Eicken, T. and Vogels, W. (1998). Evolution of the Virtual Interface Architecture.

Computer, 31(11):61–68.

Imagem

Referências

temas relacionados :