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

  • Upload
    luz

  • View
    30

  • Download
    3

Embed Size (px)

DESCRIPTION

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. Roteiro. Introdução Lustre File System - PowerPoint PPT Presentation

Citation preview

Page 1: Evaluating the Performance  of Lustre File System

Evaluating the Performance of Lustre File System

Francieli Zanon BoitoRodrigo Virote KassickPhilippe 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

ROTEIROIntroduçãoLustre File SystemTestes propostosResultadosConclusões

Page 3: Evaluating the Performance  of Lustre File System

Clusters de computadores

são uma realidade.

3 de 96Introdução

Page 4: Evaluating the Performance  of Lustre File System

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

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

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ção6 de 96

Page 7: Evaluating the Performance  of Lustre File System

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ção7 de 96

Page 8: Evaluating the Performance  of Lustre File System

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

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

para:

Introdução8 de 96

Page 9: Evaluating the Performance  of Lustre File System

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

10 de 96

O objetivo desse trabalhoIntrodução

Page 11: Evaluating the Performance  of Lustre File System

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

ROTEIROIntroduçãoLustre File SystemTestes propostosResultadosConclusões

Page 13: Evaluating the Performance  of Lustre File System

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

Arquitetura

- Clientes;

14 de 96

Camada de sistema de arquivos virtual.

Lustre F.S.

Page 15: Evaluating the Performance  of Lustre File System

- Clientes;

15 de 96

- Servidor de metadados (MDS);

Lustre F.S.

Page 16: Evaluating the Performance  of Lustre File System

- Clientes;

16 de 96

- Servidor de metadados (MDS);

- Servidores de dados (OST);

Lustre F.S.

Page 17: Evaluating the Performance  of Lustre File System

- 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

- 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

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

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

ROTEIROIntroduçãoLustre File SystemTestes propostosResultadosConclusões

Page 22: Evaluating the Performance  of Lustre File System

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

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

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

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

26 de 96

Single File,Whole Access

SFWA

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

grande arquivo compartilhado.

TestesAs classes inspiradas em (Kotz et al.):

Page 27: Evaluating the Performance  of Lustre File System

27 de 96

Multiple Files,Whole Access

MFWA

MFWA: cada cliente escreve e lê em seu

próprio arquivo.

TestesAs classes inspiradas em (Kotz et al.):

Page 28: Evaluating the Performance  of Lustre File System

28 de 96

Single File,Segmented

AccessSFSA

SFSA: cada cliente possui um segmento

próprio para suas operações em um

arquivo compartilhado.

TestesAs classes inspiradas em (Kotz et al.):

Page 29: Evaluating the Performance  of Lustre File System

Os testes foram realizados com auxílio da ferramenta

MPI-IO Test.

29 de 96Testes

Page 30: Evaluating the Performance  of Lustre File System

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

31 de 96

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

Testes

Page 32: Evaluating the Performance  of Lustre File System

32 de 96

MetodologiaTestes

Page 33: Evaluating the Performance  of Lustre File System

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

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

35 de 96

Testes variando:

- Granularidade das operações;

- Número de clientes.

Testes

Page 36: Evaluating the Performance  of Lustre File System

ROTEIROIntroduçãoLustre File SystemTestes propostosResultadosConclusões

Page 37: Evaluating the Performance  of Lustre File System

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

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

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

40 de 96

Variando número de objetos

Resultados

Page 41: Evaluating the Performance  of Lustre File System

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

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

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

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

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

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

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

48 de 96

Utilizar um arquivo compartilhado

(delegando segmentos) é melhor do que

múltiplos.

Resultados

Page 49: Evaluating the Performance  of Lustre File System

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

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

51 de 96

Lustre possui boa escalabilidade.

Resultados

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

Page 52: Evaluating the Performance  of Lustre File System

52 de 96

Leitura possui melhor

desempenho que a escrita.~20%

Resultados

Page 53: Evaluating the Performance  of Lustre File System

ROTEIROIntroduçãoLustre File SystemTestes propostosResultadosConclusões

Page 54: Evaluating the Performance  of Lustre File System

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

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

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

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

57 de 96Conclusões

Page 58: Evaluating the Performance  of Lustre File System

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

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

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

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

Obrigada pela atenção!

Perguntas?

Page 63: Evaluating the Performance  of Lustre File System

Evaluating the Performance of Lustre File System

Francieli Zanon BoitoRodrigo Virote KassickPhilippe 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

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.

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

Page 65: Evaluating the Performance  of Lustre File System

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.

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

Page 66: Evaluating the Performance  of Lustre File System

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.

TestesAs classes inspiradas em (Kotz et al.):