A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Atividades do Grupo de Processamento de Alto Desempenho do CPTEC (formalmente, Grupo de Modernização de Software) Jairo Panetta INPE/CPTEC/DMD.

Apresentações semelhantes


Apresentação em tema: "Atividades do Grupo de Processamento de Alto Desempenho do CPTEC (formalmente, Grupo de Modernização de Software) Jairo Panetta INPE/CPTEC/DMD."— Transcrição da apresentação:

1 Atividades do Grupo de Processamento de Alto Desempenho do CPTEC (formalmente, Grupo de Modernização de Software) Jairo Panetta INPE/CPTEC/DMD

2 Agenda O Grupo: –Finalidade, composição, projetos, dificuldades Os Projetos: –O que foi feito, o que falta fazer, quem trabalha Futuro: –Direções de trabalho

3 Agenda O Grupo:O Grupo: –Finalidade, composição, projetos, dificuldades Os Projetos: –O que foi feito, o que falta fazer, quem trabalha Futuro: –Direções de trabalho

4 Finalidade (1) operacionaisAlterar os modelos operacionais visando: –Incorporar desenvolvimentos que melhorem a qualidade dos resultados e atendam as necessidades da produção; pontes pesquisa – produção e produção - produção –Otimizar o desempenho computacional; vetorização, paralelismo –Explorar novas arquiteturas de computadores; modelos prontos para a próxima aquisição –Melhorar a qualidade de software. transformar protótipos em produtos

5 Finalidade (2) Finalidade Estratégica –Autonomia dos outros centros –Paridade com os melhores modelos mundiais Metas: –atual: aumentar a resolução dos modelos –médio prazo: paralelismo massivo –longo prazo: modelos acoplados (multi-modelos)

6 Equipe Capacitação: –3 Doutores, 2 Mestres (um doutorando), 2 Graduados (um mestrando) Contratação: –2 Funcionários, 2 Funcate, 3 Projeto Componentes: Alvaro Luiz FazendaDoutorProjeto Eugenio Sper de AlmeidaMestreFuncionário Jairo PanettaDoutorProjeto Luiz Flavio RodriguesGraduadoFuncionário Paulo KubotaMestreFuncate Saulo FreitasDoutorProjeto Simone Shizue TomitaGraduadaFuncate

7 Projeto 1 – Modelo Eta 2D O que é: –Modelo operacional do CPTEC Trabalho Realizado: –Instalação, modernização, otimização, paralelismo memória central Próximos Passos: –Paralelismo memória distribuída Participantes: –Equipe interna do CPTEC

8 Projeto 2 – Modelo BRAMS O que é: –Modelo básico dos Centros Regionais Trabalho Realizado: –Versão 1.0 desenvolvida Próximos Passos: –Versão 2.0 em desenvolvimento –Versão 3.0 Participantes: –Projeto Finep: CPTEC + IME/USP + IAG/USP + ATMET

9 Projeto 3 – Modelo Global O que é: –Modelo operacional do CPTEC Trabalho Realizado: –Modernização e otimização Próximos Passos: –Substituição Participantes: –Equipe interna do CPTEC + IAG/USP + IME/USP

10 Projeto 4 – Novo Modelo Global O que é: –Futuro Modelo operacional do CPTEC Trabalho Realizado: –Formulação Euleriana ou Semi-Lagrangeano –Shallow Cumulus + Grell –Otimização seqüencial Próximos Passos: –Paralelismo de memória central Participantes: –Equipe interna do CPTEC + IAG/USP + IME/USP + IMPA

11 Pesquisa Portar os modelos para outras arquiteturas –Memória distribuída (clusters de dezenas de processadores) –Massivamente paralelo (clusters de centenas – milhares de processadores) –Micro-processadores de 32 bits (Pentium X) –Micro-processadores de 64 bits (Itanium 2, IBM Power X) Utilizar máquinas ociosas na rede interna (Grid Computing restrito à rede interna)

12 Dificuldades (1) Bugs nos modelos: –Interferindo ou não no resultado, impedem o desenvolvimento.

13 Dificuldades (2) Manter prazos face a bugs –É impossível determinar, a priori, o número de bugs em um programa e o tempo para removê-los –Não há trechos pouco importantes em um programa, quando impedem o desenvolvimento

14 Dificuldades (3) Cultura: Desenvolvimentos alteram resultados! –Reproduzir os campos de saída após uma alteração: não garante a correção da alteração; propaga erros entre versões; –Como você sabe que esta é a resposta certa? Faltam testes de componentes (resposta a impulso)

15 Dificuldades (4) Perseguir alvos móveis: –Modelos –Compiladores –Computadores

16 Dificuldades (5) Coordenação Pesquisa - Produção

17 Agenda O Grupo: –Finalidade, composição, projetos, dificuldades Os Projetos:Os Projetos: –O que foi feito, o que falta fazer, quem trabalha Futuro: –Direções de trabalho

18 Eta 2D Finalidade: –Substituir Eta 1D na produção Instalação Inicial (Fonte original, após 6 homens- mês) : –Só funciona com opção debug de compilação; –Muito mais lento que Eta 1D –23467 linhas, 57 arquivos

19 Eta 2D Elimina a necessidade de debug –Invasões de área; 2 homens-mês; 215 Mflops Fortran 90 otimizado –Reestruturação parcial; 3 homens-mês; 394 Mflops Versão operacional no CPTEC

20 Eta 2D Modulos, eliminando common –Passo necessário para paralelização; –Reestruturação total; 30 homens-mês, linhas, 24 arquivos; 440 Mflops PortátilParalelismo Portátil Open MP (40 km, SX-4) –20 homens-mês, 1670 Mflops com 6 procs –30 minutos paralelo; 2 horas seqüencial –Requer metade da memória da versão seqüencial –Reproducibilidade binária no SX-4 SX-6: Versão 20 km a partir do T126L28 e T254L64

21 ETA 2D – Reestruturação do Código Cond. Iniciais/ Contorno Arquivos de saída InitPdte VtadvHzadv Hzadv2Pdnew RdtempGscond PrecpdHdiff BocohPfdht DdampBocov Procedimentos Radt Turb Conv Chko Módulos Variáveis Globais Módulos de Variáveis Programa Principal Conhecimento do fluxo de invocações Conhecimento do fluxo de invocações Conhecimento do fluxo de dados Conhecimento do fluxo de dados Eliminação de common e equivalence Eliminação de common e equivalence Acesso a variáveis globais: Acesso a variáveis globais: Use Only : Use Only : Transformar em procedimentos puros Transformar em procedimentos puros Versão Original Fortran 77 Versão Fortran 90 Versão Paralela Implicit None Implicit None Eliminação de GO TO Eliminação de GO TO Eliminação de invasões Eliminação de invasões de memória de memória

22 ETA 2D –Estratégias de Paralelização Estudo da Dependência de Dados Estudo da Dependência de Dados Transformação de Laços, preparando-os para o Paralelismo Transformação de Laços, preparando-os para o Paralelismo Eliminação de desvios dentro de laços Eliminação de desvios dentro de laços Inversão de laços Inversão de laços Quebra de laços Quebra de laços Paralelismo OpenMP Paralelismo OpenMP Paralelismo Homogêneo Paralelismo Homogêneo Paralelismo em laços que não invocam procedimentos Paralelismo em laços que não invocam procedimentos Paralelismo em laços que invocam procedimentos Paralelismo em laços que invocam procedimentos Eliminação de construções seqüenciais Eliminação de construções seqüenciais Otimizar laços onde o paralelismo elimina a vetorização Otimizar laços onde o paralelismo elimina a vetorização Ex: Distribuição cíclica ou por bloco, etc. Ex: Distribuição cíclica ou por bloco, etc. Teste de eficiência do compilador f90/OpenMP do NEC-SX4 Teste de eficiência do compilador f90/OpenMP do NEC-SX4 Minimizar o número de regiões paralelas Minimizar o número de regiões paralelas Paralelismo homogêneo de granulação grossa (OpenMP) Paralelismo homogêneo de granulação grossa (OpenMP)

23 ETA 2D – Resultados NEC SX4 Mudança de Compilador Mudança de Compilador Mudança de Versão do Modelo Mudança de Versão do Modelo

24 ETA 2D – 20km NEC/SX6 Dificuldades no Pré-processamento:Dificuldades no Pré-processamento: –Eliminação de valores fixos (hardwire) Ex: CI/CC : permitia a entrada de no máximo 28 níveis verticais eEx: CI/CC : permitia a entrada de no máximo 28 níveis verticais e 100km de resolução horizontal do modelo global 100km de resolução horizontal do modelo global –Mudança de resolução em tempo de compilação Dificuldades no Pós-processamentoDificuldades no Pós-processamento –Gerar arquivos de entrada inexistentes Testes:Testes: –Condições iniciais e de contorno: T126L28 e T254L64 Tempo de execução, 72h de previsão, 8 processadores:Tempo de execução, 72h de previsão, 8 processadores: –2h 15min

25 ETA 2D – 20km Campos Resultantes T126L28 T254L64

26 ETA 2D – Trabalhos Futuros Trabalhos Futuros -Portabilidade -Metodologia para paralelizar programas -(Tese Mestrado; Prazo: Novembro 2003)

27 Eta 2D Alocação Dinâmica de Memória –Resolução do modelo definida durante a execução Pré e Pós Processamento em modernização –Remoção de bugs –Recodificação Fortran 90 –Otimização (por remoção) de I/O

28 ETA 2D – Histórico – Alocação Dinâmica O que se esperava: Definição da resolução em tempo de execução;Definição da resolução em tempo de execução; Redução do uso de memória com o uso de alocação dinâmica;Redução do uso de memória com o uso de alocação dinâmica; Diminuição do volume de shell scripts;Diminuição do volume de shell scripts; Todas as variáveis que afetassem resolução ou domínio deviam ser lidas de um arquivo de configuração;Todas as variáveis que afetassem resolução ou domínio deviam ser lidas de um arquivo de configuração; Garantir a portabilidade. Garantir a portabilidade. Como estava: Para alterar a resolução ou domínio era necessário alterar arquivos de parâmetros e recompilar todo o Eta. Pré, Previsão e pós;Para alterar a resolução ou domínio era necessário alterar arquivos de parâmetros e recompilar todo o Eta. Pré, Previsão e pós; Havia um grande número de shell scripts para definir arquivos e path´s;Havia um grande número de shell scripts para definir arquivos e path´s; Utilizava-se passar dados via NAMELIST para uso no modelo;Utilizava-se passar dados via NAMELIST para uso no modelo; Utilizava-se rotinas intrínsecas da NEC.Utilizava-se rotinas intrínsecas da NEC.

29 ETA 2D – Histórico – Alocação Dinâmica Trabalho realizado: Criação de um arquivo de configuração com: Definição dos limites do modelo; Definição da resolução do modelo; Definição dos parâmetros da rodada N os de timesteps, saídas, etc; Definição dos paths; Definição dos arquivos de entrada; Uso de um único módulo com as variáveis globais (alocáveis via rotina de inicialização do modelo). Introdução das variáveis passadas por NAMELIST no arquivo de configuração. CONFIG INIT PARMGER I,J,L... Procedimentos Eta

30 ETA 2D – Histórico – Alocação Dinâmica Testes no SX-4:

31 ETA 2D – Histórico – Alocação Dinâmica Análise de Resultados: Modo escalar (SSAFE) não introduz diferenças. Modo vetorial (VSAFE) introduz pequenas diferenças. Número de processadores não altera resultado. (reproducibilidade binária somente depende do tipo de vetorização)

32 ETA 2D – Histórico – Alocação Dinâmica PRÉ PROCESSAMENTO: Convertido para F90; Estrutura em módulos USE, ONLY: ; Apenas um arquivo de parametrização para todo o pré; Preparação para a alocação dinâmica. Retirada das subrotinas dependentes da NEC. Ex: FFT; Retirada de Hardwires; GESPREP em alocação dinâmica; Retirados Bug na interpolação na borda; União dos módulos PTETABC e BCTEND em um único módulo.

33 Eta 2D - Resultados ConfiguraçãoResolução Horizontal (km) Contas Normalizadas (Mflop) Tempo de Execução Normalizado ETA40kmL38401,00 ETA20kmL38208,734,89 Quanto maior a resolução, mais veloz a execução

34 BRAMS PAD FINEP –Visa Indústria Nacional de Hardware e Software para PAD –Hadware: InfoCluster Itautec –Software: BRAMS, a cargo do CPTEC, IME/USP, IAG/USP, ATMET –Usuários: Centros Regionais de Meteorologia

35 BRAMS Prover Centros com um Modelo: –Homogêneo; –Com Qualidade de Software; –Rápido em Máquinas Baratas; –Previsões Adequadas aos Trópicos; –Tecnologicamente Dominado; –Suportado Nacionalmente; –Em Constante Evolução Internacional

36 BRAMS Metodologia: –Grupos geram contribuições que são consolidadas em três Versões de Pesquisa que tornam-se Versões de Produção após três meses de produção diária CPTEC gera Versões de Pesquisa (contribuições IAG/USP, IME/USP, ATMET); IAG promove Versões de Pesquisa para Versões de Produção Duração: –janeiro 2002 à outubro 2003 Esforço: –200 homens-mês

37 BRAMS 1.0 Baseado no RAMS (Shaved Eta) Dados de Vegetação Acurados Nova Convecção (Shallow + Grell) Umidade do solo inicializada por modelo próprio sobre dados de satélite Melhor Codificação (Metade do Trabalho) Reproducibilidade binária em uma grade Ciclo Operacional (com Assimilação) incluso Versão de Produção aprovada pelo IAG em testes do SIMEPAR

38 BRAMS - Implementações Introdução de novas funcionalidades: –Parametrização de Cumulos Rasos –Nova parametrização de Convecção profunda com vários fechamentos para cálculo do fluxo de massa –Assimilação de umidade de solo Maior portabilidade do código –Utilização de diferentes compiladores e CPUs Redução de bugs Desenvolvimento de shell scripts operacionais

39 BRAMS – Documentação e controle Documentação: –Novas funcionalidades introduzidas: Parametrizações de Cumulus Rasos e de Convecção Profunda baseado em G.Grell (2002), com várias opções de fechamento Assimilação de Umidade de Solo Heterogênea através de arquivo Suítes operacionais para Previsão e Ciclo de Assimilação com controle de qualidade Guias para inserção de novos módulos –http://tucupi.cptec.inpe.br/hpc/guide.PDF Treinamento nos centros regionais Controle de Versões centralizado no CPTEC –Muitos grupos de desenvolvimento: CPTEC, IME/USP, IAG/USP, ATMET

40 BRAMS - Características do Software BRAMS 2.0: –FORTRAN 90 + de linhas –Alocação dinâmica de dados (Fortran 90) –Substituição de todos os INCLUDE + COMMON por MODULE (Fortran 90) –Declaração de todas as variáveis –Correção de Bugs –Portabilidade: Compiladores: PGI (x86), Intel F95 (x86, Itanium), NEC F90 (sx-6) –Avaliação de desempenho PAPI (x86, Itanium) Proginfo (NEC sx-6)

41 Aval.desempenho – Serial - BRAMS

42 Aval.desempenho Paralelo

43 Próximos passos - BRAMS Versão 2.0 (atrasada!) –SIB 3 (atrasado!) –Iteração dinâmica atmosfera-vegetação –Reproducibilidade binária multi-grids –Estimada para junho/2003

44 Novas Funcionalidades e/ou Aperfeiçoamentos no modelo RAMS/BRAMS -Calibração da parametrização de superfície -Parametrização de cumulus profundos -Parametrização de cumulus rasos -Estimativa da umidade do solo para inicialização de modelos de PNT -Monitoramento do transporte de emissões de queimadas na América do Sul

45 Parametrização de superfície/radiação Estudo detalhado da parametrização com a adequação de parâmetros e processos para os biomas: floresta, pastagem e cerrado floresta, pastagem e cerrado. Principais parâmetros/processos modificados: LAI albedo condutância estomática máxima rugosidade (z 0 ) plano de deslocamento (d) capacidade térmica do solo e da biomassa porosidade e ponto de murcha do solo profundidade de raízes participantes do processo de transpiração fração de cobertura de nuvens c/ sensível melhoria no ciclo diurno da CLP

46 Floresta EXP1 – controle Fluxos LE, H EXP2 – calibrado Fluxos LE, H Freitas, 1999.

47 Floresta Razão de Bowen (H/LE) Altura da camada de mistura (Zi)

48 Parametrização de cumulus profundos Grell (1993) e Grell e Devenyi (2002) fluxo de massa com vários tipos diferentes de fechamentos (Arakawa e Schubert, Grell, Kain e Fritsch, Low Level Omega, Kuo.) técnicas estatísticas para determinação do fluxo de massa baseado num ensemble de fechamentos inclui o efeito de correntes descendentes adequado para resoluções espaciais entre 20 e 50 km (apropriado para modelos regionais) Campos de precipitação e modificação na dinâmica muito mais realistas.

49 Perfis de aquecimento e umidecimento

50 Comparação entre Precipitação Grell cumulus+resolvida X GOES-8 IR imagem

51 GOES-8 Prec X Grell Cumulus Conv Prec Sep 2002 GOES Precipitation 4 km resolution Grell cumulus prec. 40 km resolution

52 Estimativa da umidade do solo para inicialização de modelos de PNT GOES-8 estimativa de precipitação Umidade do solo do dia anterior Modelo de transporte de água em meios porosos ajustado com parâmetros observados Prognóstico para a umidade do solo

53 Mapas de Bioma e Solo

54 Estimativa de umidade do solo para a América do Sul Projeto de IC do aluno Rodrigo Gevaerd (apoio FAPESP). Resolução espacial: 4km Resolução temporal: 24h Resolução vertical: 3 camadas com 10, 30 e 200 cm de espessura. Início da base de dados: 01/01/2000. Operacional Estimativa de umidade do solo 04/09/2002 (camada de 10cm) (mm 3 /mm 3 )

55 Real Time Transport Monitoring of CO and PM2.5

56 GOES ABBA Source Emission for CO GOES ABBA Source Emission for CO kg/(m 2 s)- 19SEP2002 Freitas, 1999, 2003.

57 Model Transport The in-line model transport follows the Eulerian approach: where: adv grid-scale advection, PBL turb sub-grid transport in the PBL, deep conv sub-grid transport associated to deep convection, W convective wet removal for PM2.5, R sink term associated with generic process of removal e/ou transformation of tracers, Q source emission associated to the biomass burning process.

58 Parameterized Convective Transport Coupled to the mass flux cumulus scheme (Grell, 1993; Grell and Devenyi 2002). Transport term: updraft detrainment downdraft detrainment environment subsidence Wet removal for PM2.5 based on Berge (1993) accounts for washout and rainout.

59 Plume of PM2.5 00Z 27 Aug 2002 (column integrated - mg/m 2 ) 40 km grid resolution 200 km grid resolution South America and Africa

60 Metas do BRAMS 3.0 BRAMS 2.0 Otimizado para clusters de PCs Distribui apenas o binário Versão de Pesquisa em abril/2003 (vai atrasar)

61 Modelo Global Jan 1999: –Fortran 77 seqüencial em produção –T062L28: 545 MFlops no SX-4 Jan 2001: –Fortran 90 paralelo em pesquisa –Múltiplas otimizações localizadas –T062L28: 850 MFlops (seqüencial) no SX-4 (65% do tempo de execução do 77) não portátil –Produção: Fortran 77 paralelo não portátil

62 Modelo Global Ago 2001: –Fortran 90 seqüencial no SX-4 (2000 MFlops pico) ModeloVelocidade (MFlops) T062L28860 T126L28931 T170L28994 T170L Abril 2003: – Produção: Fortran 77 paralelo no SX-4

63 Transformada de Legendre

64 Modelo Global SX-6: ModeloResolução (km) Contas Relativas Tempo Relativo T062L ,00 T126L ,695,22 T170L ,2015,74 T254L ,3282,65 Quanto maior a resolução, mais veloz a execução

65 Novo Modelo Global Meta e Meios: –De T62L28 para T213L42 (60 vezes) –Otimização Sequencial e Paralela; Fortran 90/95 –Formulação Semi-Lagrangeana; –Grade Reduzida e Grade Linear –Shallow Cummulus + Grell Equipe: –CPTEC, IME/USP, IAG/USP, IMPA Esforço: –140 homens-mês

66 Novo Modelo Global Situação atual: –Dinâmica Euleriana aprovada (requer 51% das contas da versão atual) –Grade Reduzida aprovada (requer 42% das contas da versão atual) –Dinâmica Semi-Lagrangeana em testes (segunda versão, corrigindo problemas da primeira) –Paralelismo em desenvolvimento –Física do global atual em adaptação Prazo: julho 2003

67

68 Física do Novo Modelo Global Estágio atual: –8 homens-mês de trabalho –49 commons removidos (transformados em argumentos) –Todos os nomes declarados e parcialmente documentados (100 subrotinas) –Duas físicas stand-alone Próximos passos: –Alimentar com conjunto qualquer de verticais (Atualmente requer fatia de latitude constante) –Unificar as duas físicas –Acoplar ao novo global –Prazo: Julho/2003

69 Pesquisa – Grid Computing Finalidade imediata: –Utilizar computadores ociosos –É aplicável à centros de meteorologia? Finalidade futura: –Potencialmente, novo paradigma de computação

70 Ultimas 24 Horas: Usuários 1470 anos de CPU 57 TFlops

71 WWW x GRID Criação sob demanda de sistemas virtuais de computação WWW: Acesso a documentos Grid: Acesso a recursos computacionais Redes de sensores arquivos de dados Computadores Catálogos de Software Colegas

72 Grades Internacionais NASAs Information Power Grid The Alliance National Technology Grid GUSTO Testbed

73 Onde utilizar Supercomputação distribuída Computação com high-throughput Computação sob demanda Computação intensiva de dados Computação colaborativa

74 Computação intensiva de dados Repositórios, Bibliotecas digitais e Base de dados Uso intensivo de computação e comunicação Uso em meteorologia: –CPTEC/INPE enorme conjunto de dados meteorológicos Objetivo: Sintetizar novas informações a partir de dados geograficamente distribuídos Pesquisadores do INPE Outras instituições Estudos de caso Melhoria de modelos Computação intensiva de dados uso remoto dos dados meteorológicos Economia de custo e tempo evita deslocamento ao CPTEC/INPE

75 Grade Computacional do CPTEC Grade restrita ao âmbito do CPTEC: –7 Ws HP-Compaq - True64 –2 PC - Linux –1 cluster (8 processadores duais) Componentes da grade: –Globus Toolkit 2.0 –Biblioteca de passagem de mensagem MPI para grade (MPICH-G2).

76 Paralelização do pós-processamento Fase 1 - Grade homogênea (finalizada) Fase 2 - Grade heterogênea Fase 3 - Grade heterogênea + Cluster

77 Ganho de Desempenho Tendência de aumento do Speedup com a incorporação de mais computadores (ideal = 19)

78 BRAMS Fase 1 - Execução paralela em 1 PC com Linux Fase 2 - Grade homogênea + Cluster Fase 3 - Grade heterogênea –Otimizar balanceamento de carga –Tese de Doutorado no LAC (3 anos)

79 Agenda O Grupo: –Finalidade, composição, projetos, dificuldades Os Projetos: –O que foi feito, o que falta fazer, quem trabalha Futuro:Futuro: –Direções de trabalho


Carregar ppt "Atividades do Grupo de Processamento de Alto Desempenho do CPTEC (formalmente, Grupo de Modernização de Software) Jairo Panetta INPE/CPTEC/DMD."

Apresentações semelhantes


Anúncios Google