66
Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo e Distribuído Instituto de Informática – UFRGS Porto Alegre, 21 de agosto de 2009.

Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Embed Size (px)

Citation preview

Page 1: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Evaluating the Performance of Lustre File System

Francieli Zanon Boito

Rodrigo Virote Kassick

Philippe O. A. Navaux

VII Workshop de Processamento Paralelo e Distribuído

Instituto de Informática – UFRGS

Porto Alegre, 21 de agosto de 2009.

Page 2: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

ROTEIROIntrodução

Lustre File System

Testes propostos

Resultados

Conclusões

Page 3: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Clusters de computadores

são uma realidade.

3 de 96Introdução

Page 4: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

As aplicações científicas

geram grandes quantidades de dados.

4 de 96

Esses dados podem

precisar ser acessados em todos os nós.

Introdução

Page 5: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Uma solução bastante

empregada é o uso de Sistemas de

Arquivos Distribuídos

(SADs)

Eles devem prover acesso a dados

remotos como se fossem locais.

Introdução

5 de 96

Page 6: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Muitas opções de projetopodem ser tomadas em relação a arquitetura, comunicação, compartilhamento, sincronização, cache, tolerância a falhas, segurança, ...

Introdução

6 de 96

Page 7: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Dependendo das opções de projeto,

o sistema terá comportamento diferente para

padrões de acesso diferentes.

Para obter um bom desempenho, a

forma com que as aplicações fazem I/O deve combinar com

as otimizações oferecidas pelo

sistema de arquivos.

Introdução

7 de 96

Page 8: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Portanto, estudar o desempenho de sistemas de arquivos sob cargas de

trabalho observadas na prática é importante, pois provê ferramentas

para:

Introdução

8 de 96

Page 9: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Que a aplicação escolha um

sistema “compatível”, ou

que se adapte ao já escolhido.

9 de 96

Que os projetistas de SADs guiem o seu

trabalho para favorecer aplicações

alvo

Introdução

Page 10: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

10 de 96

O objetivo desse trabalhoIntrodução

Page 11: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

11 de 96

Estudar o desempenho do sistema de arquivos

Lustre sob padrões de acesso observados na

prática.

Introdução

Page 12: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

ROTEIROIntrodução

Lustre File System

Testes propostos

Resultados

Conclusões

Page 13: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

O Lustre é um sistema desenvolvido desde o início com o

objetivo de prover alto desempenho e escalar bem para

clusters de milhares de nós.

13 de 96Lustre F.S.

Page 14: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Arquitetura

- Clientes;

14 de 96

Camada de sistema de arquivos virtual.

Lustre F.S.

Page 15: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

- Clientes;

15 de 96

- Servidor de metadados (MDS);

Lustre F.S.

Page 16: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

- Clientes;

16 de 96

- Servidor de metadados (MDS);

- Servidores de dados (OST);

Lustre F.S.

Page 17: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

- Clientes;

17 de 96

- Servidor de metadados (MDS);

- Servidores de dados (OST);

- Dispositivos de armazenamento (OBD);

Os OBDs não precisam ser discos.

Lustre F.S.

Page 18: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

- Clientes;

18 de 96

- Servidor de metadados (MDS);

- Servidores de dados (OST);

- Dispositivos de armazenamento (OBD);

- Réplicas.

Serviço MGS

Lustre F.S.

Page 19: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Os servidores de dados não possuem

cache, mas ela pode estar presente

no dispositivo de armazenamento

utilizado.

19 de 96

Os clientes empregam cache de metadados e de dados com read-ahead.

Lustre F.S.

Page 20: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

A comunicação é feita através da LNET, que

provê suporte a diferentes tecnologias de rede através de drivers

conectáveis (LNDs).

20 de 96Lustre F.S.

Page 21: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

ROTEIROIntrodução

Lustre File System

Testes propostos

Resultados

Conclusões

Page 22: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Foram elaboradas classes de testes

representando padrões de acesso

verificados na prática.

22 de 96

Elas focam em dois aspectos: cache e

distribuição de dados.

Testes

Page 23: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Todos os nós podem acessar um arquivo, ou cada um o seu.

23 de 96

Single File, SF Multiple Files, MF

Testes

Page 24: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Todo o conteúdo do arquivo pode ser acessado, ou só

segmentos.

24 de 96

Whole Access, WA Segmented Access, SA

Testes

Resultando em...

Page 25: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

As classes inspiradas em (Kotz et al.):

25 de 96

Single File,Whole Access

SFWA

Multiple Files,Whole Access

MFWA

Single File,Segmented

AccessSFSA

Testes

Page 26: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

26 de 96

Single File,Whole Access

SFWA

SFWA: todos os clientes lêem concorrentemente todo o conteúdo de um

grande arquivo compartilhado.

Testes

As classes inspiradas em (Kotz et al.):

Page 27: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

27 de 96

Multiple Files,Whole Access

MFWA

MFWA: cada cliente escreve e lê em seu

próprio arquivo.

Testes

As classes inspiradas em (Kotz et al.):

Page 28: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

28 de 96

Single File,Segmented

AccessSFSA

SFSA: cada cliente possui um segmento

próprio para suas operações em um

arquivo compartilhado.

Testes

As classes inspiradas em (Kotz et al.):

Page 29: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Os testes foram realizados com auxílio da ferramenta

MPI-IO Test.

29 de 96Testes

Page 30: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

O teste desejado é descrito através de parâmetros passados à ferramenta.

- Número de arquivos;- Operação realizada;- Barreiras;- Distribuição do arquivo entre os processos: strided ou non-strided.

30 de 96Testes

Page 31: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

31 de 96

- Número de segmentos (e tamanho deles) por cliente.

Testes

Page 32: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

32 de 96

MetodologiaTestes

Page 33: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

33 de 96

- Cluster Helios (Grid5000), nodos biprocessados com AMD Opteron 2.2GHz, 4GB de memória RAM e rede Gigabit Ethernet.

- Sistema de arquivos Lustre.

- 4 servidores de dados;- Até 40 clientes;- Striping em blocos de

64KB, circular começando em servidor aleatório.

Testes

Page 34: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

34 de 96- Cada cliente opera

sobre 2GB.- Servidores de dados

armazenam no sistema de arquivos local (ext3).

- Coletados resultados o número de vezes necessário para ter confiança de 90% e erro relativo de 10% (mínimo de 4 execuções);

Testes

Page 35: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

35 de 96

Testes variando:

- Granularidade das operações;

- Número de clientes.

Testes

Page 36: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

ROTEIROIntrodução

Lustre File System

Testes propostos

Resultados

Conclusões

Page 37: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

37 de 96

- Comando dd do Unix;

- 40 clientes;

- Tamanho do bloco utilizado varia de 1KB a 4MB;

- Erro máximo de 5%.

Single File,Whole Access

SFWA

Variando tamanho de bloco

Resultados

Page 38: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

38 de 96

Variando tamanho de bloco

Não é sensível ao tamanho do bloco.

Resultados

Page 39: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Multiple Files,Whole Access

MFWA

39 de 96

- Ferramenta MPI-IO Test;

- 40 clientes;

- De 2 a 2K objetos, adaptando o seu tamanho para manter a quantidade de dados acessados;

Variando número de objetos

Resultados

Page 40: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

40 de 96

Variando número de objetos

Resultados

Page 41: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

41 de 96

Quando uma grande área contígua é acessada, não

faz diferença fazer o acesso em uma ou várias

requisições.

Resultados

Page 42: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Multiple Files,Whole Access

MFWA

42 de 96

- Ferramenta MPI-IO Test;

- De 1 a 40 clientes;

- 32 objetos de 64MB.

Variando número de clientes

Resultados

Page 43: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

43 de 96

Estabiliza e não sofre degradação.

Variando número de clientes

Resultados

Page 44: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Single File,Segmented

AccessSFSA

44 de 96

- Ferramenta MPI-IO Test;

- 40 clientes;

- De 2 a 2K objetos, adaptando o seu tamanho para manter a quantidade de dados acessados.

Variando número de objetos

Resultados

Page 45: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Variando número de objetos

45 de 96

Com a opção non-strided, desempenho

constante.

Com a opção strided, quanto mais granular, pior o desempenho;

Resultados

Page 46: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

46 de 96

Usando um arquivo compartilhado, é

melhor delegar um grande segmento

por processo.

Resultados

Acessos mais granulares

possuem menor desempenho.

Page 47: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Variando número de objetos

Comparado com o resultado do MFWA

47 de 96

Leitura non-strided tem desempenho

melhor que MFWA.

Resultados

~20%

Page 48: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

48 de 96

Utilizar um arquivo compartilhado

(delegando segmentos) é melhor do que

múltiplos.

Resultados

Page 49: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Single File,Segmented

AccessSFSA

49 de 96

- Ferramenta MPI-IO Test;

- De 1 a 40 clientes;

- 32 objetos de 64MB.

Variando número de clientes

Resultados

Page 50: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Variando número de clientes

50 de 96

Mesma diferença já observada no teste

anterior;

Ambos estabilizam rapidamente;

Non-strided possui melhor desempenho, mas degrada com o aumento de clientes.

Resultados

Page 51: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

51 de 96

Lustre possui boa escalabilidade.

Resultados

Exceção: segmento único em arquivo compartilhado.

Page 52: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

52 de 96

Leitura possui melhor

desempenho que a escrita.~20%

Resultados

Page 53: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

ROTEIROIntrodução

Lustre File System

Testes propostos

Resultados

Conclusões

Page 54: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Esse trabalho apresentou um estudo sobre o comportamento do

desempenho do sistema de arquivos Lustre sob diferentes padrões de

acesso.

54 de 96Conclusões

Page 55: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Para simular os padrões de acesso, foram sugeridas e aplicadas classes de

testes inspiradas em aplicações científicas: SFWA, MFWA e SFSA.

55 de 96

Single File,Whole Access

SFWA

Multiple Files,Whole Access

MFWA

Single File,Segmented

AccessSFSA

Conclusões

Page 56: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Para ter bom desempenho com o Lustre File System,

é desejável que a aplicação possua as

seguintes características:

56 de 96Conclusões

Page 57: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Os nós realizam leituras de grandes áreas contíguas.

57 de 96Conclusões

Page 58: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Se os nós acessam uma área contígua de dados,

não faz diferença em quantas requisições.

58 de 96Conclusões

Page 59: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Se os nós possuem dados exclusivos, eles são

armazenados em segmentos de um arquivo

compartilhado.

59 de 96Conclusões

Page 60: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Os resultados permitem a adequação de aplicações

para que tirem melhor proveito do Lustre, obtendo um melhor

desempenho.

60 de 96Conclusões

Page 61: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Os resultados também podem ser utilizados para uma melhor comparação

do Lustre com outros sistemas de arquivos.

61 de 96Conclusões

Page 62: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Obrigada pela atenção!

Perguntas?

Page 63: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

Evaluating the Performance of Lustre File System

Francieli Zanon Boito

Rodrigo Virote Kassick

Philippe O. A. Navaux

VII Workshop de Processamento Paralelo e Distribuído

Instituto de Informática – UFRGS

Porto Alegre, 21 de agosto de 2009.

Page 64: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

64 de 96

Single File,Whole Access

SFWA

Aplicações que precisam ler todos os dados de um arquivo (de checkpoint ou resultados anteriores) por

todos os nós antes de iniciar a computação.

Exemplo: MESSKIT, método Hartree-Fock

para calcular densidade de elétrons.

Testes

As quatro classes inspiradas em (Kotz et al.):

Page 65: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

65 de 96

Multiple Files,Whole Access

MFWA

Aplicações em que cada nó guarda seus dados em arquivos próprios,

que serão usados num pós-processamento.

ESCAT, aplicação para simular colisões de baixa energia entre

moléculas e elétrons.

Testes

As quatro classes inspiradas em (Kotz et al.):

Page 66: Evaluating the Performance of Lustre File System Francieli Zanon Boito Rodrigo Virote Kassick Philippe O. A. Navaux VII Workshop de Processamento Paralelo

66 de 96

Single File,Segmented

AccessSFSA

Mesma situação da classe MFWA, porém

em escala de segmentos, não de

arquivos.

Flash, aplicação da Astrofísica.

Testes

As classes inspiradas em (Kotz et al.):