Bloomberg L.P., (2012), FWCV Forward Analysis Matching Output. Bloomberg L.P..pdf
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to...
Transcript of © 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to...
© 2004 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice
Walfredo Cirne Universidade Federal de Campina Grande
http://walfredo.dsc.ufcg.edu.brmailto:[email protected]
Computação em Grid usando OurGrid
O que é um Grid?
Computational Grid (source of computational resources and services)
Computational Grid (source of computational resources and services)
Para que serve um Grid?
Para que serve um Grid?
Para que serve um Grid?
Para que serve um Grid?
O Impacto de Grids
VR Simul
Grid Auditing
MegaCiclos
Databank Inc.
Mastercard
Embratel
Estado Atual de Grids
• A idéia de Grid surgiu na comunidade de Computação de Alta Performance há pouco menos de 10 anos− Agora os primeiros Grids de Alta Performance
começam a entrar em produção
• Há 3 anos, o mainstream da computação percebeu a possibilidade de usar tecnologia Grid para transformar computação em serviço− A tecnologia Grid está se fundindo com Web
Services
O que dá pra fazer hoje?
• Cada site mantém controle e escalonamento local
• É possível configurar o mapeamento de usuários globais para usuários locais
• Aplicações usam o Grid como um todo através de brokers (ou escalonadores de aplicação)
• Montar um Grid envolve uma negociação off-line
Rodando uma Aplicação Globus
O Projeto OurGrid
• Projeto desenvolvido em parceria pela UFCG e HP
A Tecnologia OurGrid
• OurGrid é uma solução grid para execução de Aplicações Bag-of-Tasks
• Aplicações Bag-of-Tasks são aquelas aplicações cujas tarefas são independentes
• Não é viável fazer computação em grid de aplicações fortemente acopladas na Internet de hoje
Aplicações Bag-of-Tasks
• Data mining• Pesquisa massiva (como quebra de chave e
sequenciamento de gens)• Varredura de parâmetros • Simulações• Fractais (como Mandelbrot)• Manipulação de imagem (como tomografia)
• E muitas outras…
Diferenciais do OurGrid
• Montagem automática de grids− Evitando assim todo procedimento de
negociação off-line
• Escalonamento de aplicação (brokerage) que não depende de informações sobre a aplicação e sobre o grid
Componentes do OurGrid
• MyGrid Broker: Permite um usuário utilizar todas as máquinas a que tem acesso
• OurGrid Community: Fornece acesso a máquinas dentro do COPAD
• SWAN: Segurança
Arquitetura OurGrid
1, ... ,
n
User Interface
User Interface
Site ManagerSite Manager
SWAN
SandboxingSandboxingMyGri
d
SWAN
OurGrid: Uma Rede de Favores
• Usuários locais sempre têm prioridade nos recursos locais
• Recursos ociosos são doados para comunidade
• A grande questão é como fazer esta doação de forma justa
Evitando o “Gerson”
• É fundamental ter um mecanismo que encoraje of participantes a doarem seus computadores ociosos− Em sistemas como KaZaA, a maioria é “Gerson”
• OurGrid usa um sistema de reputação peer-to-peer− Todos os peer mantém um balanço local de todos
os peers conhecidos− Peers com maior balanço têm prioridade− O comportamento emergente do sistema como um
todo é “quanto mais você doa, mais você recebe”− Isso funciona sem requerer infra-estrutura
adicional
A
B
C
D
E
Exemplo do OurGrid [1]
ConsumerQuery(broadcast)
ProviderWorkRequest
ConsumerFavorProviderFavorReport
*
*
* = no idle resources now
MyGrid
B 60
D 45
Exemplo do OurGrid [2]
A
B
C
D
E
B 60
D 45
E 0
ConsumerQuery
ProviderWorkRequest
*
* = no idle resources now
*
MyGrid MyGrid
E o “Gerson”?
• Epsilon is a fração dos recursos consumida por “Gersons”
Equidade entre colaboradores
MyGrid: o broker do OurGrid
• Para fechar meu doutorado (em 2000), tive que rodar 600.000 simulações independentes
• Dado que as simulações eram independentes, eu tinha a aplicação perfeita para o grid
• Eu estava em um laboratório grid de ponta, mas não consegui usar o grid− Você precisa da negociação off-line para ter um
grid
Objetivos do MyGrid
• MyGrid possibilita a um usuário de aplicações Bag-of-Tasks usar qualquer computador a que ele tem acesso para rodar suas aplicações
• O grid de Zé são todas as máquinas a que Zé tem acesso− Não é necessário ter nenhuma infra-estrutura
grid especial− Mas infra-estrutura grid pode ser usada (se
estiver disponível)
Arquitetura MyGrid
HomeMachine
Scheduler
Grid Machine Interface
GlobusProxy
UAProxy
GridScript
...
Grid Machine
GlobusGRAM
Grid Machine
UserAgent
Grid Machine
...
Fatorando com MyGrid
• initput Fat.class $PLAYPEN
•grid1java Fat 3 18655 34789789799 output-$TASK
•collectget $PLAYPEN/output-$TASK .
•grid2java Fat 18655 37307 34789789799 output-$TASK
Como escalonar no MyGrid?
• Escalonamento tipicamente se baseia em informação sobre a plataforma (no caso, o grid) e sobre a aplicação (ex: tempo de execução da tarefa)
• Todavia, depender de informação vai contra a idéia de usar qualquer recurso ao qual o usuário tenha acesso− A Grid Machine Interface teria que ser bem mais
sofisticada, e portanto mais difícil de implementar
• Além disso, pedir informação sobre a aplicação ao usuário tornaria o sistema mais difícil de usar
Escalonando sem Informação
• Work-queue with Replication− Tarefas são enviadas a processadores
disponíveis− Quando não há mais tarefas a iniciar, tarefas
são replicadas nos processadores disponíveis− A primeira replica a terminar é a “execução
oficial”− As demais replicas são canceladas− É possível estabelecer um limite para replicação
• Replicação evita ficar esperando por máquinas lentas/sobrecarregadas
Work-queue with Replication
• 8000 experimentos• Experimentos variaram em:
− heterogeneidade do grid− heterogeneidade da aplicação− granularidade da aplicação
• Sumário dos resultados: Sufferage DFPLTF Workqueue WQR 2x WQR 3x WQR 4x
Average 13530.26 12901.78 23066.99 12835.70 12123.66 11652.80 Std. Dev. 9556.55 9714.08 32655.85 10739.50 9434.70 8603.06
Granularidade da Aplicação
Overhead do WQR
• Obviamente, a desvantagem do WQR são os recursos desperdiçados pelas replicas canceladas
• Recursos desperdiçados:
WQR 2x WQR 3x WQR 4x Average 23.55% 36.32% 48.87%
Std. Dev. 22.29% 34.79% 48.93%
Prova de Conceito
• Durante um período de 40 dias, rodei 600,000 simulações usando 178 processadores espalhados por 6 sites nos EUA
• As simulações executaram por 16,7 dias• Meu computador desktop teria levado 5,3
anos processando as simulações• Speed-up = 115.8 (com 178 processadores)
MyGrid na Luta contra AIDS
B,c,F
HIV-2HIV-1
M
O ABCD FGHJK
N?prevalent in Europe and Americasprevalent in Africa
majority in the world
18% in Brazil
HIV protease + Ritonavir
Subtype B
RMSD
Subtype F
O MyGrid da luta contra AIDS
• 55 máquinas em 6 sites no Brasil e EUA• Tarefa = 3.3 MB entrada, 1 MB saída, 4 a
33 minutos de execução dedicada• Rodou 60 tarefas em 38 minutos• Speed-up = 29.2 (com 55 máquinas)
Segurança no OurGrid
• Na comunidade OurGrid, um site roda código desconhecido que veio do grid
• Claramente, isto é um (grande) risco de segurança− Pode afetar dados e recursos locais das
máquinas− A máquina pode ser usada para atacar outras
• Aproveitamos o fato de aplicações Bag-of-Tasks só precisarem se comunicar para receber a entrada e devolver a saída para rodar a aplicação do grid em um sandbox sem acesso a rede
Uma segunda linha de defesa
• Nós também rebootamos a máquina para adicionar uma segunda linha de defesa
• Isto também tem a vantagem extra de possibilitar o uso de um SO diferente− Ou seja, mesmo que a máquina seja Windows,
nós ainda podemos ter Linux
• Retornar ao SO nativo é muito rápido graças a hibernação
Arquitetura SWAN
reboot
Guest OS
Grid OS
Grid Middleware
Grid Application
Host OS
NativeApplication
reboot
Guest OS
Grid OS
Grid Middleware
Grid Application
Guest OS
Grid OS
Grid Middleware
Grid Application
Host OS
NativeApplication
Host OS
NativeApplication
OurGrid Status
• A solução OurGrid é software de código aberto (licença GPL), disponível em www.ourgrid.org− Contando com colaborações externas do Inst.
Eldorado, Inst. Atlântico, e UFRGS
• OurGrid está na versão 3.0.2− É a 9ª versão disponível− É a 3ª versão a disponibilizar a rede de favores− Aproximadamente 200 downloads− Grid aberto em produção desde de dezembro
• SWAN está em testes finais− Com lançamento dia 30 de abril de 2005, na versão
3.1
status.ourgrid.org
Projetos que usam OurGrid
• Segurança Hídrica, liderado pela UFCG• Segurança Pública, liderado pela UniFor• BioPAUÁ, liderado pelo UniSinos• Mineração de dados, liderado pela UniSantos• Raciocínio Bayesiano, liderado pela USP• Uso do solo amazônico, liderado pela UNIR• Ruas de POA, liderado pela PUC-RS• HIV Brasileiro, liderado pela LNCC/UFRJ• Saúde em Recife, liderado pelo UFPE/CESAR
© 2004 Hewlett-Packard Development Company, L.P.The information contained herein is subject to change without notice
Muito Obrigado!
Mais em www.ourgrid.org