Sistemas Concorrentes Capítulo 03 – OMP
Roteiro Conceitos Exemplo de Compilação For paralelo Seções paralelas
Open MP Fornece uma opção de linguagem paralela Através da inclusão de diretivas de compilação E da compilação através de um compilador OMP
Open MP
Open MP
Open MP - JOMP Middleware – Jomp1.0b.jar Compilador – ConversorJomp3.java Diretivas paralelas: Shared = variáveis compartilhadas (default) Private = variáveis exclusivas
Montando o Ambiente http://www.inf.furb.br/~paulofernando/disciplinas/ SC-Sistemas_Concorrentes/3-OMP/ Faça o download de Jomp1.0b.jar Adicione a seu projeto, como biblioteca Faça o download de ConversorJomp3.java Implemente o exemplo do próximo slide
Ambiente Resultante
Convertendo seu projeto Execute o ConversorJomp3 informe hello_normal.java como entrada
Executando seu projeto Execute hello_normal_jomp.java
Reduções
Atividade 3.1 Desenvolva um exemplo que faça a soma dos elementos de uma matriz em paralelo usando o recurso de reduções e o bloco paralelo simples.
Atividade 3.2 Desenvolva uma funcionalidade de Paralelismo de Dados (SIMD) no cenário de seu projeto, usando bloco paralelo simples.
O for paralelo JOMP
O for paralelo Converta o exemplo Execute a versão paralela
Atividade 3.3 Desenvolva um exemplo que faça a soma dos elementos de uma matriz em paralelo usando o recurso de reduções e o for paralelo.
Atividade 3.4 Desenvolva uma funcionalidade de Paralelismo de Dados (SIMD) no cenário de seu projeto, usando For Paralelo.
Seção Paralela
Atividade 3.5 Desenvolva uma função de Paralelismo Funcional (MISD ou MIMD) no cenário de seu projeto, usando Seções Paralelas.
Exclusão Mútua – Critical
Atividade 3.6 Desenvolva uma função com critical no cenário de seu projeto, combinado com bloco paralelo simples, for paralelo ou seções paralelas.
Projeto de OMP Desenvolva seu projeto aplicando os conceitos de OMP Requisitos: Bloco paralelo simples For paralelo Seção paralela Uso de Critical e Reduction Conhecimento \ Complexidade Plus