Sexta, 12/04 Sábado, 13/04 Domingo, 14/04
08:00
-
08:30
Credenciamento Credenciamento Sessão Técnica I

Apresentação de Artigos
08:30
-
09:00
Mini Curso I

OpenMP

Carlos Rebollo (CENAPAD)
Mini Curso II

Perfilamento com Intel Advisor e Vtune

Silvio Stanzani​ (NCC/UNESP)
Mini Curso III

Alto Desempenho na Nuvem

Edson Borin (Unicamp)
Mini Curso IV

Co-Projeto de HW/SW para Deep Learning

Maurício Acconcia Dias (Uniararas)
09:00
-
09:30
Sessão de Posters / Coffee-break
09:30
-
10:00
10:00
-
10:30
Coffee-break Coffee-break
10:30
-
11:00
Mini Curso I

OpenMP

Carlos Rebollo (CENAPAD)
Mini Curso II

Perfilamento com Intel Advisor e Vtune

Silvio Stanzani​ (NCC/UNESP)
Mini Curso III

Alto Desempenho na Nuvem

Edson Borin (Unicamp)
Mini Curso IV

Co-Projeto de HW/SW para Deep Learning

Maurício Acconcia Dias (Uniararas)
Sessão Técnica II

Apresentação de Artigos
11:00
-
11:30
11:30
-
12:00
12:00
-
12:30
Almoço Almoço Almoço
12:30
-
13:00
13:00
-
13:30
13:30

14:00
Cerimônia de Abertura Palestra I

Computação em SP e no Brasil - desde o início - "causos" e história

Prof. Siang Wun Song, IME-USP
Palestra II

Bioinformática: uma visão geral e suas aplicações em biotecnologia

Prof. Dr. Marcelo Carazzolle
14:00

14:30
Palestra IBM: OpenPOWER and AI

Leonardo Garcia e Klaus Heinrich Kiwi, IBM
14:30

15:00
Palestra LNLS: Desafios em HPC para o processamento de dados do Sirius

Eduardo Miqueles, LNLS
15:00
-
15:30
Tutorial I

Programação Paralela em Haskell

Fabrício Olivetti de França (UFABC)
Palestra LexisNexis

Introdução à Plataforma HPCC Systems

Francisco Escher & Artur Baruchi
Tutorial II

Projeto Experimental para Prática com Alto Desempenho

Lucas M. Schnorr & Vinícius G. Pinto (UFRGS)
Desafio de Programação Paralela Painel sobre Programação Paralela
15:30
-
16:00
16:00
-
16:30
16:30
-
17:00
Coffee-break Coffee-break Cerimônia de Encerramento e Premiação
17:00
-
17:30
Tutorial I

Programação Paralela em Haskell

Fabrício Olivetti de França (UFABC)
Warmup do Desafio de Programação Paralela Tutorial II

Projeto Experimental para Prática com Alto Desempenho

Lucas M. Schnorr & Vinícius G. Pinto (UFRGS)
Desafio de Programação Paralela
17:30
-
18:00
18:00
-
18:30
18:30
-
19:00
Reunião CRAD
19:00
-
19:30
19:30
-
20:30
20:30 Jantar do evento - Local

Programação Detalhada

Palestra IBM: OpenPOWER and AI

Local: Auditório

Leonardo Garcia & Klaus Heinrich Kiwi, IBM

Leonardo Garcia, mestre em Ciência da Computação pela UNICAMP desde 2013, é atualmente Engenheiro de Software Sênior na IBM. Há alguns anos, Leonardo lidera um time multinacional que trabalha em virtualização sobre código-aberto. Além de seu trabalho técnico, Leonardo foi recrutador e embaixador universitário na IBM.

Klaus Heinrich Kiwi, bacharel em Engenharia da Computação pela UNICAMP desde 2004, é atualmente Engenheiro de Software Senior na IBM. Como gerente do Centro IBM de Tecnologia Linux, Klaus é responsável pelo desenvolvimento dos driver de E/S para as distribuições Ubuntu, Debian e missões de ecossistemas de desenvolvimento em diversas linhas de produtos IBM Linux para Power.

Leonardo Garcia e Klaus Kiwi irão abordar diversas atividades relacionadas ao grupo OpenPOWER Academia & Pesquisa que faz parte da Fundação OpenPOWER. Eles também vão discutir o supercomputador Summit.

Palestra LNLS: Desafios em HPC para o processamento de dados do Sirius

Local: Auditório

Eduardo Miqueles, Laboratório Nacional de Luz Síncrotron (LNLS)

Eduardo Miqueles possui formação em matemática aplicada com doutorado pela Unicamp. Atua na área de problemas inversos e computação cientifica, atualmente liderando o grupo de computação cientifica do LNLS para o processamento de dados das linhas de luz do Sirius.

Resumo: Nesta apresentacao, colocarei brevemente alguns dos maiores desafios em processamento paralelo para o novo sincrotron brasileiro de 4a geração, Sirius, com seus respectivos impactos. Exibirei a atuação do grupo de computação cientifica do LNLS e seu envolvimento com o pipeline de coleta de dados (com um detector especifico), até os desenvolvimentos em algoritmos e processamento em GPUs.

Palestra LexisNexis: Introdução à Plataforma HPCC Systems

Local: Auditório

Francisco Escher & Artur Baruchi, LexisNexis

Francisco Escher é Engenheiro de Controle e Automação formado pela Universidade Federal de Santa Catarina. Atua como Engenheiro de Software na LexisNexis Risk Solutions, onde tem trabalhado com implementação de processos de ETL, modelagem de data warehouse e entrega de dados com a plataforma do HPCC Systems desde 2016.

Artur Baruchi é formado em Ciência da Computação e possui mestrado e doutorado pela Escola Politécnica da Universidade de São Paulo. Atualmente é Engenheiro de Software Senior na LexisNexis Risk Solution onde atua, principalmente, com a implementação de queries no ambiente HPCC.

Palestra I: Computação em SP e no Brasil - desde o início - "causos" e história

Local: Auditório

Prof. Siang Wun Song, IME-USP

Siang Wun Song é professor titular aposentado do Departamento de Ciência da Computação da Universidade de São Paulo, onde ele foi diretor do Instituto de Matemática e Estatística e docente desde 1971. Ele obteve o título de doutor em Ciência da Computação pela Universidade Carnegie Mellon em 1981. Foi membro do corpo editorial de vários periódicos, como Parallel Computing, Parallel Processing Letters, e Journal of the Brazilian Computer Society. Em 2007 foi admitido na Ordem Nacional do Mérito Científico, classe Comendador e recebeu em 2011 o Prêmio Mérito Científico da Sociedade Brasileira de Computação. Ele é bolsista de produtividade em pesquisa do CNPq nível Sênior. Sua área de pesquisa é o projeto de algoritmos paralelos.

Em menos de 60 anos, o Brasil passou de possuir um ou dois computadores a ocupar a décima posição do mundo com o maior número de supercomputadores instalados, conforme a lista TOP500 de 2015. Há hoje 83 cursos de mestrado, 40 de doutorado e 2.355 cursos de graduação em Computação.Quando e como tudo isso começou? Os primeiros cursos de Computação foram criados em final dos anos 60 e início dos anos 70, quando formaram os primeiros graduandos. A pergunta natural é de onde vieram os docentes desses primeiros cursos, já que ainda não havia formados. No caso de SP, a resposta gira em torno do primeiro computador (IBM-1620) da USP e a criação de um centro (Centro de Cálculo Numérico ou CCN que mais tarde transformou-se no CCE). Veremos a contribuição dos egressos do CCN/CCE na contribuição dos primeiros cursos de Computação de SP e, em geral, na Ciência e Tecnologia do País Vocês verão que dos egressos do CCN sairia um presidente do CNPq e do Serpro, um presidente da PRODAM e da Elebra, entre outros. Falaremos sobre o início da pós-graduação em Computação, sobre a Escola de Computação, sobre CAPES, CNPq e FAPESP, sobre SBC e alguns eventos ligados à Computação de Alto Desempenho, a Política Nacional de Informática e o estágio atual em Computação de Alto Desempenho no País. O avanço nesses 60 anos é fantástico. Essa palestra pretende homenagear todos aqueles que estavam lá e contribuíram para este avanço.

Palestra II: Bioinformática, uma visão geral e suas aplicações em biotecnologia

Local: Auditório

Prof. Dr. Marcelo Falsarella Carazzolle, Laboratório de Genômica e Expressão (LGE-UNICAMP)

Os avanços tecnológicos nas tecnologias de sequenciamento de DNA ocorridos nos últimos anos promoveram um progresso notável na compreensão das bases genéticas dos organismos. Dessa forma, a genômica (ciência que estuda os genomas) mudou o paradigma das questões biológicas em toda a escala do genoma, revelando uma explosão de dados e abrindo muitas possibilidades. Por outro lado, a vasta quantidade de informação que foi gerada aponta os desafios que devem ser superados para o armazenamento (lei de Moore) e o processamento dessas informações biológicas. Neste contexto, a bioinformática tem buscado superar tais desafios, sendo um campo interdisciplinar que utiliza métodos de computação, como modelagem matemática, estatística, programação, simulação ou métodos analíticos para analisar grandes conjuntos de dados biológicos. O objetivo final da bioinformática é dar significado biológico aos dados gerados, desvendando os processos biológicos envolvidos e fazendo novas predições de fenótipos nas diversas áreas de atuação como medicina, biotecnologia, agricultura, dentre outros.

Mini Curso I: OpenMP

Local: Auditório (8:30-10:00) - Sala 305 (10:30-12:00)

Carlos Rebollo (CENAPAD/Unicamp)

Material de Apoio

Resumo: A proposta do minicurso é apresentar os novos recursos das versões atuais do OpenMP para trabalhar paralelismo em problemas onde as interações não são regulares ou que as interações contém dependências de dados. Ao fim do minicurso espera-se que os alunos possam desenvolver soluções de paralelismo em OpenMP para resolver problemas de interações não regulares ou contendo dependência de dados bem como conhecer novos recursos do OpenMP.

Mini Curso II: Introdução à Perfilamento de Código com Intel Advisor e Intel Vtune

Local: Sala 304

Silvio Stanzani​, Raphael Cóbe​, Rogério Iope​, Jefferson Fialho​, Júlio Amaral​, Artur Baruchi​, e Marco Gomes​ (NCC/UNESP)

Material de Apoio

Resumo: O perfilamento de código é essencial para orientar a otimização de desempenho de uma aplicação em arquiteturas computacionais, pois permitem encontrar as oportunidades de desempenho e estimar possíveis ganhos ao aplicar otimizações. O objetivo deste minicurso é capacitar os participantes quanto ao processo de perfilamento de código, a partir da análise da aplicação e também da avaliação da eficiência de uso dos recursos disponibilizados pela arquitetura computacional, de modo prático com ênfase especial em arquiteturas Intel mais recentes (Skylake e Knights Landing).

Mini Curso III: Introdução à Computação de Alto Desempenho na Nuvem Computacional

Local: Sala 300

Edson Borin, Charles Boulhosa Rodamilans, e Jeferson Rech Brunetta (UNICAMP)

Material de Apoio

Resumo: Sistemas de HPC são custosos e o acesso aos mesmos é geralmente limitado a uma pequena parcela da comunidade, entretanto, avanços recentes em tecnologias de computação na nuvem estão permitindo que qualquer um possa acessar recursos de HPC pagando apenas pelo uso do sistema. O principal objetivo deste minicurso é prover uma introdução à computação de alto desempenho em recursos na nuvem computacional e demonstrar aos participantes como a nuvem pode ser usada para executar programas de alto desempenho que fazem uso de tecnologias como GPU e MPI.

Mini Curso IV: Co-Projeto de HW/SW para Deep Learning

Local: Sala 303 (8:30-10:00) - Sala 304 (10:30-12:00)

Maurício Acconcia Dias e Daniel Augusto Pagi Ferreira (FHO - Uniararas)

Material de Apoio

Resumo: Estruturas utilizadas em Deep Learning necessitam de uma capacidade de processamento elevada para serem executadase, apesar da evolução atual dos computadores de propósito geral, a aceleração em hardware pode trazer benefícios consideráveis para a utilização do Deep Learning em sistemas que possuem requisitos críticos de tempo de execução. Considerando a relevância das estruturas de Deep Learning, e a necessidade de desenvolvimento de aceleração em hardware para sua execução, este mini-curso tem como objetivo principal apresentar os principais gargalos relacionados ao tempo de execução das estruturas de Deep Learning e aplicar as técnicas de co-projeto de hardware/software para desenvolver aceleradores utilizando FPGAs.

Tutorial I

Local: Sala 353

Prof. Fabrício Olivetti de França (UFABC)

Prof. Fabrício Olivetti de França cursou a graduação em Engenharia Elétrica na Universidade Católica de Santos e fez mestrado e doutorado na Universidade Estadual de Campinas no curso de Engenharia Elétrica com ênfase em Computação. Atualmente é professor da Universidade Federal do ABC. Sua linha de pesquisa compreende Regressão Simbólica e Co-agrupamento de Dados. Recentemente se tornou um entusiasta do paradigma funcional e da linguagem de programação Haskell.

Resumo: Um dos componentes necessários da programação paralela é a possibilidade em decompor um programa de tal forma a identificar os blocos de processamento que podem ser executados paralelo. As linguagens puramente funcionais definem tais decomposições de forma natural por incentivarem, ou obrigarem, a criação de funções puras. Esse mini-curso fará uma breve introdução da linguagem funcional Haskell e, em seguida, mostrará duas alternativas de como criar programas paralelos. Como efeito-colateral, os participantes aprenderão o que é um Monad.

Tutorial II

Local: Sala 303

Lucas M. Schnorr & Vinícius G. Pinto (UFRGS)

Lucas Mello Schnorr é professor adjunto na Universidade Federal do Rio Grande do Sul (UFRGS) desde janeiro de 2013, após ter realizado pós-doutorado no CNRS e doutorado em co-tutela entre a UFRGS e o Instituto Polytechnique de Grenoble. Seus tópicos de investigação são em análise de desempenho (projeto experimental, escalabilidade da análise, balanceamento de carga, visualização de rastros), aplicações HPC (aplicações em DAG, plataformas heterogêneas), simulação de sistemas computacionais (SimGrid) e reprodutibilidade em ciência de dados. Consulte o site para mais informações: http://www.inf.ufrgs.br/~schnorr.

Vinícius Garcia Pinto possui graduação em Ciência da Computação pela Universidade Federal de Santa Maria (2010), mestrado em Computação pelo Universidade Federal do Rio Grande do Sul (2013) e doutorado em Computação pela Universidade Federal do Rio Grande do Sul em cotutela com a Université Grenoble Alpes / França (2018). Foi professor da Faculdade São Francisco de Assis e da Universidade de Caxias do Sul. Atualmente é professor substituto de Universidade Federal do Rio Grande do Sul. Tem experiência em Programação Paralela e Computação de Alto Desempenho.

Resumo

Na área de computação de alto desempenho, frequentemente existe a necessidade de rever resultados que foram obtidos há um certo tempo. Isso ocorre em cenários onde figuras de um artigo precisam ser revistas ou comparações com outras técnicas se fazem necessárias. De maneira por vezes dramática, não se consegue mais obter os mesmos resultados ou refazer uma figura. Se posicionando na temática de análise de desempenho de aplicações paralelas em clusters de computadores de alto desempenho, este minicurso se propõe a sensibilizar os participantes aos fatores que impactam a coleta de medidas representativas para que os experimentos sejam mais confiáveis. Após esta sensibilização, com exemplos interessantes de problemas de análise oriundos em medidas mal feitas, o minicurso tem três partes: (a) motivar cuidados essenciais na realização de experimentos computacionais para controlar a variabilidade experimental através de um rigoroso projeto experimental; (b) apresentação das principais formas de controlar parâmetros em sistemas Linux, tais como controle de frequência do processador e atividades do sistema operacional; e (c) como analizar os dados coletados com linguagens de programação e ferramentas modernas de manipulação de dados que habilitam a reprodutibilidade desta análise.

Sessão Técnica I (60 min)

Local: Auditório

Dedicada às apresentações dos 3 artigos de PG, com tempo de apresentação máximo de 20 min (~15 min de exposição + 5 min de Q&A).

Sessão de Posters / Coffee-Break

Local: Hall

Sessão Técnica II (90 min)

Local: Auditório

Dedicada às apresentações dos 5 artigos de IC, com tempo de apresentação máximo de 18 min (~12 min de exposição + 6 min de Q&A).