free website hit counter

Minicursos

Os minicursos introdutórios e avançados do ERAD-SP tem como objetivo apresentar temas atuais e relevantes na área de Computação de Alto Desempenho a profissionais, alunos de Pós-Graduação e de Iniciação Científica.

Teremos três mini-cursos básicos e três avançados, cada um com duração de 3 horas (2 sessões de 1h30). Em cada dia do evento, serão apresentados simultaneamente um mini-curso básico e um avançado.


Mini-cursos - Nível Básico
Título: Ambientes e Ferramentas de Programação para GPU
Ministrante: Denise Stringhini (Mackenzie), Rogério Gonçalves (UFTPR/IME-USP) e Alfredo Goldman (IME-USP)
Este tutorial introduz conceitos básicos de computação heterogênea a partir de uma das opções mais populares entre os aceleradores, que são as GPUs. Num primeiro momento apresentada uma contextualização, onde ser descrita sua arquitetura, relacionando-a com os modelos SIMD, SPMD e SIMT, largamente explorados em computação para GPU. Em seguida, o tutorial apresenta as alternativas de ambientes e ferramentas de programão para GPU, juntamente com exemplos de programão. Neste contexto, são apresentados ambientes de programao tais como CUDA, OpenCL, OpenACC e Thrust. Alm disso, ambientes como o NSight e o Visual Profiler que permitem depuração e profiling de programas em CUDA tambm serão abordados no tutorial.
Título: Programando para multicore: Pthreads e OpenMP
Ministrante: Helio Crestana Guardia (UFSCar)
Paralelização tem sido uma solução para aumento de desempenho em sistemas computacionais. Múltiplos processadores, núcleos e unidades funcionais são empregados para conseguir executar mais rapidamente programas existentes, para melhorar a precisão desses programas e para tratar novos problemas atento invisíveis. Computadores multiprocessados possibilitam a execução simultânea de diversas aplicações, que podem ter módulos que cooperam e se comunicam através da memória fisicamente compartilhada. O modelo de programação usando threads adequado para esses ambientes. Este minicurso trata da programao usando threads para ambientes multiprocessados com memória compartilhada. Duas formas de programao são consideradas: gerenciamento explícito de threads com a biblioteca Pthreads e paralelização usando OpenMP.
Título: Introduo MPI
Ministrante: Stefano Mr (UFRGS)
um primeiro curso (introdutório, auto-contido) sobre a Message Passing Interface (MPI). A MPI uma especificação de biblioteca de subrotinas (em FORTRAN ou C) para a escrita de programas paralelos no paradigma de troca de mensagens; cada fabricante de computadores responsável por desenvolver e otimizar uma biblioteca MPI para o seu ambiente de processamento paralelo. MPI o padrão de facto para programação paralela em agregados (clusters) de computadores. Esse curso se dedica a examinar o paradigma de programação MPI, as principais primitivas de comunicação (send/receive, comunicações coletivas, etc), os diferentes modos de comunicação (bloqueante, no-bloqueante, bufferizado) e outros aspectos relevantes na construção de programas paralelos. A ênfase prática: códigos escritos em C serão modificados e executados durante a apresentação. A base desses códigos são programas paralelos clássicos sobre a implementação OpenMPI.

Mini-cursos - Nível Avançado
Título: Apache Hadoop: conceitos teóricos e práticos, evolução e novas possibilidades
Ministrante: Daniel Cordeiro (IME-USP) e Alfredo Goldman (IME-USP)
O grande avanço na popularização da Internet na última década bem como o aumento na quantidade e complexidade dos serviços oferecidos na Web levou geração de quantidades maciças de dados. Para o processamento desses dados, desempenho e disponibilidade são fatores críticos que precisam ser avaliados, pois mecanismos convencionais de gerenciamento de dados no oferecem o suporte adequado. Uma solução proposta o Apache Hadoop, um arcabouço para o armazenamento e processamento de dados em larga escala. O Hadoop oferece como ferramentas principais o MapReduce, responsável pelo processamento distribuído, e o Hadoop Distributed File System (HDFS), para armazenamento de grandes conjuntos de dados, também de forma distribuída. Embora recente, o Apache Hadoop tem sido considerado uma ferramenta eficaz, sendo utilizado por grandes corporações como IBM, Oracle, Facebook, Yahoo! entre outras. Este curso apresentar os conceitos principais do Apache Hadoop, demonstrando também suas características, vantagens, aplicaes, componentes, bem como um estudo das novas tendncias em torno dessa ferramenta.
Título: CUDA em Ambientes de Cluster e de Cloud
Ministrante: Luciano Silva (Mackenzie)
Módulos CUDA podem integrar arquiteturas mais complexas como clusters e cloud. Neste contexto, possível explorar arquiteturas e técnicas de programação/comunicação em ambientes híbridos e heterogêneos com as potencialidades paralelas de CUDA. Assim, este tutorial tem como objetivo apresentar as principais arquiteturas de integração de módulos CUDA em cluster e cloud, além de evidenciar técnicas de programação e comunicação para estes ambientes híbridos. Para complementar a teoria apresentada, serão mostrados diversos projetos que exploram a integração CUDA-cluster e CUDA-cloud, alm de potencialidades para pesquisa.
Título: Memória Transacional: Finalmente realidade?
Ministrante: Alexandro Baldassin (Unesp)
A popularização dos processadores multicore tem revitalizado a pesquisa em programação concorrente. Dentre as novas abordagens, um mecanismo conhecido como memória transacional (TM) tem obtido grande destaque nos últimos anos no meio acadêmico, prometendo simplificar a sincronização e aumentar o desempenho de aplicações paralelas.
Apesar dos muitos avanços ocorridos no campo de memória transacional, o tema ainda essencialmente objeto de pesquisa. Recentemente, a Intel anunciou suporte em hardware para TM em sua nova arquitetura Haswell, que deve ser lançada em 2013. Este anuncio tem causado um grande interesse por parte de toda a comunidade de computação no assunto.
Este minicurso visa apresentar os principais conceitos de TM desenvolvidos no meio acadêmico até a atualidade, através de uma retrospectiva envolvendo técnicas de implementação, semântica, desenvolvimento de aplicações transacionais e desempenho. Espera-se que ao final do curso a audiência possa entender as vantagens e desvantagens do modelo transacional, e quais as implicações práticas do suporte em hardware anunciado pela Intel.




PROMOVIDO POR: ORGANIZADO POR:
SBC
UNICAMP

ERAD-SP


Acessos: