technology
from seed
Grid@inesc-id
João Leal
Tiago Luís
Orientador: David Matos
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
1
technology
from seed
Indice
–
O que é uma Grid
• Exemplo de computação em Grid
–
Condor
• Constituição do Condor
• Como usar o Condor
• Resultados obtidos
–
Globus
• Interacção Globus / Condor
–
Trabalho Realizado
–
No Futuro
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
2
technology
O que é uma Grid?
from seed
– A computação em Grid é uma forma de computação distribuída que
permite a partilha e coordenação de recursos para a resolução de
problemas complexos, seja porque são de grande escala ou porque
envolvem o processamento intensivo de dados
– A tecnologia associada a uma Grid permite, assim, que
organizações geograficamente dispersas partilhem recursos
computacionais, de armazenamento, ou mesmo aplicações
– Apesar de ter dado grandes passos no passado recente, a partilha
de recursos em larga escala ainda não é uma realidade em muitas
áreas
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
3
technology
Exemplo de computação em Grid
from seed
– O projecto SETI@home é um exemplo
de um projecto de computação em Grid
que utiliza a infra-estrutura BOINC
(Berkeley
Open
Infrastructure
for
Network Computing)
– Milhares de computadores pessoais em
todo o mundo, analisam continuamente
dados do radiotelescópio de Arecibo em
busca de transmissões que evidenciem
inteligência extraterrestre
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
4
technology
Condor
from seed
– Permite o desenvolvimento, implementação e
avaliação de mecanismos e políticas que
suportam High Throughput Computing em
ambientes distribuídos.
– High Throughput Computing consiste em
gerir e explorar de forma eficiente todos os
recursos computacionais disponíveis, sendo
o seu maior desafio maximizar o número de
recursos computacionais acessíveis
– Aproveita os recursos computacionais que
não estão a ser utilizados e dá-lhes uso, de
uma forma transparente para o utilizador
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
5
technology
from seed
Constituição do Condor
Central Manager
Execute and Submit
Submit Only
Execute Only
Execute Only
Execute Only
Execute Only
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
6
technology
Como usar o Condor?
from seed
– Preparar o programa de modo a que as entradas e saídas sejam
interactivas
– Escolher o universo
– Standard
– Vanilla
– Grid
– Criar o ficheiro de submissão
– Submeter o trabalho
• /opt/condor/bin/condor_submit fib.condor
Submitting job(s).
Logging submit event(s).
1 job(s) submitted to cluster 170.
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
7
technology
Ficheiro de submissão
from seed
– Código: https://www.l2f.inesc-id.pt/~tmcl/apresentacao/fib.c
– Ficheiro de Submissão: fib.condor
Executable = fib
Universe = vanilla
Transfer_files = ALWAYS
Output = fib.out.$(CLUSTER)-$(PROCESS)
Error = fib.err.$(CLUSTER)-$(PROCESS)
Log = fib.log
Requirements = (Arch == "INTEL" || Arch == "x86_64")
Queue
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
8
technology
from seed
Gestão do trabalho
– Verificação do estado do trabalho
• /opt/condor/bin/condor_q
ID
OWNER
SUBMITTED
170.0
tmcl
5/19 17:20
1 jobs; 0 idle, 1 running, 0 held
RUN_TIME ST PRI SIZE CMD
0+00:00:00 R 0
0.0 fib
– Verificação do estado da Pool
• /opt/condor/bin/condor_status
Name
[email protected].
[email protected].
[email protected].
. . .
[email protected].
OpSys
Arch
State
Activity
LoadAv
Mem
ActvtyTime
LINUX
LINUX
LINUX
INTEL
INTEL
INTEL
Unclaimed
Unclaimed
Unclaimed
Idle
Idle
Idle
0.000
0.000
0.000
1009
1009
1009
0+00:45:09
1+20:05:25
0+00:50:09
LINUX
X86_64 Unclaimed
Idle
0.000
1632
1+20:04:54
Total Owner Claimed Unclaimed Matched Preempting Backfill
INTEL/LINUX
X86_64/LINUX
21
7
0
0
0
0
21
7
0
0
0
0
0
0
Total
28
0
0
28
0
0
0
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
9
technology
Grid@l2f
from seed
– Página: https://grid.l2f.inesc-id.pt/
– Constituída por:
16 máquinas:
•
•
•
•
wc’s
Anubis
Ronin
Alex
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
10
technology
Grid@inesc-id
from seed
– Página: http://grid.inesc-id.pt/
– Constituída por:
22 máquinas:
• 3.2 MHz P4
• mem = 1GB
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
11
technology
Resultados obtidos na Grid@l2f
from seed
– Processamento do jornal Público
• cada trabalho submetido na Grid consistia na análise de uma parcela de dados do
jornal
– Ficheiro de Submissão
Executable = /afs/l2f.inesc-id.pt/home/david/public/tmp/cetempublico1.pl
Universe = vanilla
Output = cetempublico1-palavroso-marv.out.$(CLUSTER)-$(PROCESS)
Error = cetempublico1-palavroso-marv.err.$(CLUSTER)-$(PROCESS)
Transfer_files = ALWAYS
Log = cetempublico1.log
Requirements = (Arch == "INTEL" || Arch == "x86_64")
Queue
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
12
technology
Resultados obtidos na Grid@inesc-id
–
from seed
Edição de Vídeo
•
•
•
cada trabalho submetido na Grid era responsável por uma parcela do vídeo
o algoritmo fazia poucos acessos ao disco, consistindo principalmente em cálculo
o trabalho que era feito em 34 dias demorou 2 dias na Grid
– Ficheiro de Submissão
Executable = /home/u00150/work/vitra/sim_vitra_launch.sh
Universe = vanilla
Input = fib.in.$(PROCESS)
Output = fib.out.$(CLUSTER).$(PROCESS)
Error = fib.err.$(CLUSTER).$(PROCESS)
Log
= fib.$(CLUSTER).log
Notification = Error
Queue
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
13
technology
Globus
from seed
– Fornece a tecnologia para construir uma Grid, que permite a
partilha de poder computacional e informação, de forma segura,
com múltiplas instituições sem comprometer a autonomia local
– Inclui software para:
• segurança (administração de certificados, autenticação e
autorização)
• monitorização, gestão e descoberta de informação (GridFTP e RFT)
• gestão dos recursos (GRAM)
• detecção de faltas
• suporta interacção via web services e o seu deploy (implementação
em C, Java e Python)
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
14
technology
from seed
Interacção Globus / Condor
Submit
Node
Internet
Firewall
Queue
Job 1
Job 2
…
Head
Node
(Globus)
Execute
Node
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
15
technology
Trabalho Realizado
from seed
- Perceber a arquitectura do Globus Toolkit e a construção de Web
Services
https://grid.l2f.inesc-id.pt/wiki/index.php/Globus_Toolkit_4
- Instalação e configuração do Globus Toolkit 4.0.1
https://grid.l2f.inescid.pt/wiki/index.php/Introduction_to_the_Globus_Toolkit_4
- Instalação e configuração do Condor no L2F
https://grid.l2f.inesc-id.pt/wiki/index.php/Grid%40L%C2%B2F
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
16
technology
No Futuro
from seed
- Extender a arquitectura do Galinha para incluir uma interface
para Grid Services, de modo a que os componentes e dados
possam ser geograficamente distribuídos
- Para tal é necessário um conjunto de protocolos middleware,
como os fornecidos pelo Globus
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
17
technology
from seed
Fim
Don’t
ask “what can
the Grid do for
me?" ask “what can
I do with a Grid?”
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
18
technology
from seed
technology
from seed
L2 F - Spoken Language Systems Laboratory
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa
L2 F - Spoken Language Systems Laboratory
19
Download

Grid@inesc-id João Leal Tiago Luís Orientador: David Matos