Computação Paralela (CUDA)
|
|
|
- Ana Beatriz Santana Teves
- 8 Há anos
- Visualizações:
Transcrição
1 Universidade Federal do Amazonas Faculdade de Tecnologia Departamento de Eletrônica e Computação Computação Paralela (CUDA) Hussama Ibrahim [email protected]
2 Notas de Aula Baseado nas Notas de Aula do Prof. Ricardo Rocha da Universidade do Porto, PT. artei.pdf Baseado nas Notas de Aula do Prof. Marcelo Zamith da Universidade Federal Fluminense UFF, BR. Documentação NVIDIA CUDA
3 Motivação Se uma mãe leva 9 meses para ter 1 bebe, podem 9 mães podem ter um bebe em um mês? Se um processamento leva 9 horas em um computador, podem 9 computadores efetuar o processamento em 1 hora? No que consiste a Computação Paralela? Concorrência: Identificação das partes que podem ser executadas em qualquer ordem, sem alterar o resultado final Scheduling: Distribuição do processamento de forma eficiente entre os nós de processamento disponíveis Comunicação e Sincronização: Desenhar a computação para ser executada nos vários nós de processamento
4 Objetivo Conseguir reduzir o tempo de execução de um determinado processamento / programa, aproveitando melhor o hardware que temos a disposição Conceitos Fundamentais: Potencial Paralelismo Paralelismo Paralelismo Explícito Paralelismo Implícito Comunicação Sincrona e Assincrona Computação Paralela
5 Potencial Paralelismo Ocorre quando um programa possui tarefas que podem ser executadas em diferentes sequências, sem alterar o resultado final começa T1 T2 T3 termina começa T2 T1 T3 termina começa T3 T2 T1 termina começa T3 T1 T2 termina...
6 Paralelismo Diferente do pseudoparalelismo É uma execução paralela quando as tarefas de um programa são executadas ao mesmo tempo numa máquina de dois ou mais processadores. cpu 1: começa T1 T3 termina cpu 2: T2 cpu 1: começa T1 T2 cpu 2: T2 T1 T3 termina
7 Paralelismo Explícito É definido pelo programador e papel dele: Definir as tarefas que executarão em paralelo Atribuir as tarefas aos processadores Controlar a Execução Pontos de Sincronização Efetuar "tunnings no código afim de obter um maior desempenho (+) É possível obter melhores resultados (-) O programador é responsável por todos os detalhes da implementação (-) Pouco portável entre as diferentes arquiteturas
8 Paralelismo Implícito O paralelismo é responsabilidade do compilador e do próprio sistema de execução: Encontra os potenciais paralelismos Atribui as tarefas para execução em paralelo Cuidar de toda a parte de sincronização Vantagens / Desvantagens: (+) Abstrai do programador os detalhes da execução paralela (-) Difícil de obter uma solução mais eficiente
9 Conceitos Fundamentais Conceitos Fundamentais: Potencial Paralelismo Paralelismo Paralelismo Explícito Paralelismo Implícito Implementação Comunicação Síncrona e Assíncrona Computação Paralela GPU ~ Computação Paralela utilizando CUDA
10 Comunicação Síncrona e Assíncrona Síncrona: É feita de maneira de maneira simultânea, coordenada e sincronizada Assíncrona: Ocorre de maneira não sincronizada. Comunicação Síncrona Comunicação Assíncrona
11 Computação Paralela É considerada computação paralela um programa que é executado sobre uma máquina com vários processadores, e esse vários processadores compartilham acesso ao mesmo bloco de memória Dividas em duas sub-classes: Centralized Multiprocessor / Uniform Memory Access Distribuited Multiprocessor / Nonuniform Memory Access
12 GPU Graphic Processing Unit
13 Computação Paralela com GPU Atualmente a taxa de clock dos computadores modernos varia entre 4 GHz Maior consumo de energia Maior dissipação de calor Alto custo em refrigeração Fabricantes como Intel e AMD vão na contra mão, gerando processadores com mais núcleo, e com um aumento gradativo do clock. dual, tri, quad, 8, 12, 16, 32 cores.
14 Computação Paralela com GPU Uma empresa contendo Clusters com milhares de processadores trabalhando na execução de algoritmos complexos.
15 Computação Paralela com GPU Computação Heterogênea: Utilização do poder de processamento de uma CPU com uma GPU, trabalhando em conjunto e alcançando alta performance.
16 Computação Paralela com GPU Computação Heterogênea: Utilização do poder de processamento de uma CPU com uma GPU, trabalhadno em conjunto e alcançando alta performance.
17 Computação Paralela com GPU GPU s possuem capacidade maior de processamento, tratando de operações em ponto flutuante por segundo (TFLOP/s)
18 Computação Paralela com GPU NVIDIA Vídeo ( CUDA (Compute Unified Device Architecture) Capacidade programar a GPU para realizar propósitos gerais (i.e., não usar apenas para aplicações gráficas) Biblioteca FORTRAN, C/C++ API gerenciar dispositivos, memórias e etc Inicio na série 8 (2006) Compilador NVCC
19 Compute Unified Device Architecture Suas características e funcionalidades são evolutivas e definidas por sua arquitetura, porém mantendo retrocompatibilidade. Suporte a paralelismo Dinâmico Cache L2 de 256Kb Memória Unificada Suporte a precisão dupla Suporte a C++ Recursos Básicos 64Kb de Memória Compartilhada Operações com memória Cacheglobal L1 e L2 Operações com memória compartilhada Otimizações na performance e Consumo de energia Cache L2 de 2048Kb
20 Compute Unified Device Architecture Como saber a arquitetura da minha GPU com suporte ao CUDA? (Compute Capability) lspci grep i nvidia Versão Recurso 1.0 Recursos básicos 2.0 Arquitetura Fermi 3.0 Arquitetura Kepler Posso ainda compilar um programa para uma determinada arquitetura passando os parametros -arch e -code para o compilador nvcc <file>;./a.out
21 Compute Unified Device Architecture Threads: Um pequeno programa que trabalha como um sub-sistema de um programa maior. CPU s não são boas para trabalhar com um número grande de threads. Custo de Gerenciamento GPU s: feitas para trabalhar com grande número de threads, devido utilizar um outro paradigma. GPU: Dispositivo de computação capaz de executar muitas threads em paralelo (device) CPU: Dispositivo que trabalha em conjunto com a CPU (host)
22 Compute Unified Device Architecture Kernel: Definição de um programa que irá rodar na GPU Thread: Instância de um Kernel Blocos: Grupo ou agrupador de Threads Grid: Grupo ou agrupador de Blocos Vídeo ( O canhão seria o kernel, pois nele estaria a definição do que se quer fazer. E cada tubo disparado em paralelo seriam as threads.
23 Problemas Unidimensionais
24 Problemas Unidimensionais com CUDA Primeiro programa em CUDA Soma de Vetores: A B = C Host: int i=0; for (i=0; i<5; i++){ c[i] = a[i] + b[i]; } Device: global void my_kernel(int * a, int * b, int *c){ int i = threadidx.x; c[i] = a[i] + b[i]; } Visualizar Código no NSIGHT
25 Problemas Unidimensionais com CUDA O CUDA permite o número máximo 1024 threads por bloco E se meu vetor de soma possuísse posições? my_kernel<<<10,1024>>>(a,b,c); global void my_kernel(int * a, int * b, int *c){ int i = (blockdim.x * blockidx.x) + threadidx c[i] = a[i] + b[i]; } Visualizar Código no NSIGHT
26 Problemas bidimensionais
27 Problemas Bidimensionais com CUDA Blocos: Na GPU, podemos ter blocos em mais de uma dimensão (x,y) Threads: Podemos ter threads em 1, 2 ou 3 dimensões (x,y,z) Utilização do objeto dim3(x,y,z) struct dim3 { int x; int y; int z; }
28 Problemas Bidimensionais com CUDA A dica é tratar um problema bidimensional como se fossemos trabalhar de forma unidimensional. Padronizando o acesso com uma função de normalização. Multiplicação de Matrizes: * = Desenvolver o código para execução no HOST
29 Problemas Bidimensionais com CUDA Solução com 2 Blocos e 2 threads em cada eixo * = global void my_kernel(int * a, int * b, int *c){ int i = (blockdim.x * blockidx.x) + threadidx.x; int j = (blockdim.y * blockidx.y) + threadidx.y; } for(int k=0; k<dim; k++){ c[i][j] += a[i,k] + b[k,j]; }
30 Conclusões Podemos utilizar o CUDA para diversas aplicações visando melhor performance no tempo de execução. O recurso de paralelismo dinâmico do CUDA é interessante pois permite chamadas recursivas kernel, utilização de grafos, árvores. SPIN (verificador de modelos da NASA) apresentou uma redução de 7x do tempo de execução da verificação após a implementação em GPU. Obrigado!
Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot
Técnicas de Processamento Paralelo na Geração do Fractal de Mandelbrot Bruno Pereira dos Santos Dany Sanchez Dominguez Esbel Tomás Evalero Orellana Universidade Estadual de Santa Cruz Roteiro Breve introdução
Introdução a CUDA. Esteban Walter Gonzalez Clua. Medialab - Instituto de Computação Universidade Federal Fluminense NVIDIA CUDA Research Center START
Introdução a CUDA START Esteban Walter Gonzalez Clua Medialab - Instituto de Computação Universidade Federal Fluminense NVIDIA CUDA Research Center 1536 cores Dynamic Parallelism Hyper - Q Pipeline
5 Unidades de Processamento Gráfico GPUs
5 Unidades de Processamento Gráfico GPUs As GPUs são processadores maciçamente paralelos, com múltiplos elementos de processamento, tipicamente utilizadas como aceleradores de computação. Elas fornecem
Fabrício Gomes Vilasbôas
Fabrício Gomes Vilasbôas Apresentação Placas Arquitetura Toolkit e Ferramentas de Debug Pensando em CUDA Programação CUDA Python Programação PyCUDA 1) Grids( padrão Globus) 2) Clusters ( padrão MPI) 3)
Processamento Paralelo Utilizando GPU
Processamento Paralelo Utilizando GPU Universidade Estadual de Santa Cruz Bruno Pereira dos Santos Dany Sanchez Dominguez Esbel Evalero Orellana Cronograma Breve introdução sobre processamento paralelo
Eng. Thársis T. P. Souza
Introdução à Computação de Alto Desempenho Utilizando GPU Seminário de Programação em GPGPU Eng. Thársis T. P. Souza [email protected] Instituto de Matemática e Estatística - Universidade de São Paulo Introdução
Introdução OpenMP. Nielsen Castelo Damasceno
Introdução OpenMP Nielsen Castelo Damasceno Computação de auto desempenho Processamento Paralelo Memória Distribuída e Compartilhada Modelo de programação OpenMP Métricas de Desempenho Computação de auto
AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 13/11/2017 ALUNO
INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUIDA PROVA 2 13/11/2017 ALUNO 1. Sockets - Indicar (Verdade/Falso): (2.0) (a) (Verdade/Falso) A comunicação entre processos consiste em transmitir uma mensagem entre
Comparação de eficiência entre OpenCL e CUDA
Aluno: Thiago de Gouveia Nunes Orientador: Prof. Marcel P. Jackowski GPGPU O que é GPGPU? É programação de propósito geral em GPUs. =D GPGPU Existem 2 linguagens populares no mercado para GPGPU, o CUDA
Arquitetura de Computadores. Processamento Paralelo
Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple
Introdução ao CUDA. Material elaborado por Davi Conte.
Introdução ao CUDA Material elaborado por Davi Conte. O objetivo deste material é que o aluno possa iniciar seus conhecimentos em programação paralela, entendendo a diferença da execução de forma sequencial
Introdução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva
Introdução à Programação Paralela através de Padrões Denise Stringhini Calebe Bianchini Luciano Silva Sumário Introdução: conceitos de paralelismo Conceitos básicos sobre padrões de programação paralela
Universidade Federal do Rio de Janeiro Informática DCC/IM. Arquitetura de Computadores II. Arquiteturas MIMD. Arquiteturas MIMD
Universidade Federal do Rio de Janeiro Informática DCC/IM Arquitetura de Computadores II Arquiteturas MIMD Arquiteturas MIMD As arquiteturas MIMD dividem-se em dois grandes modelos: Arquiteturas MIMD de
Bacharelado em Sistemas de Informação Sistemas Operacionais. Prof. Filipo Mór
Bacharelado em Sistemas de Informação Sistemas Operacionais Prof. Filipo Mór WWW.FILIPOMOR.COM - REVISÃO ARQUITETURAS PARALELAS Evolução das Arquiteturas Evolução das Arquiteturas Entrada CPU Saída von
PARALELIZAÇÃO DO ALGORITMO AES E ANÁLISE SOBRE GPGPU 1 PARALLELIZATION OF AES ALGORITHM AND GPU ANALYSIS
Disciplinarum Scientia. Série: Naturais e Tecnológicas, Santa Maria, v. 16, n. 1, p. 83-94, 2015. Recebido em: 11.04.2015. Aprovado em: 30.06.2015. ISSN 2176-462X PARALELIZAÇÃO DO ALGORITMO AES E ANÁLISE
Computadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo
Patrício Domingues Dep. Eng. Informática ESTG Instituto Politécnico de Leiria Leiria, Maio Programação Genérica de GPUs
Patrício Domingues Dep. Eng. Informática ESTG Instituto Politécnico de Leiria Leiria, Maio 2012 http://bit.ly/patricio Programação Genérica de GPUs 1 CUDA Teaching Center A ESTG/IPLeiria é um CUDA Teaching
Organização de Computadores II. Arquiteturas MIMD
Organização de Computadores II Arquiteturas MIMD Arquiteturas UMA Arquiteturas com memória única global. Tempo de acesso uniforme para todos os nós de processamento. Nós de processamento e memória interconectados
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL Prof. Dr. Daniel Caetano 2012-2 Objetivos Compreender a Arquitetura SMP Conhecer a Organização SMP Apresentar o Conceito
Aplicando Processamento Paralelo com GPU ao Problema do Fractal de Mandelbrot
Aplicando Processamento Paralelo com GPU ao Problema do Fractal de Mandelbrot Bruno Pereira dos Santos¹, Dany Sanchez Dominguez¹, Esbel Valero Orellana¹. 1 Departamento de Ciências Exatas e Tecnológicas
OpenMP: Variáveis de Ambiente
Treinamento OpenMP C/C++ 1 TREINAMENTO OpenMP C/C++ Módulo 1 Computação de Alto Desempenho Módulo 2 OpenMP: Construtores Paralelos Módulo 3 OpenMP: Diretivas de sincronização Módulo 4 OpenMP: Funções de
Paralelismo em Computadores com Tecnologia Multicore
IFRN - Pau dos Ferros Pau dos Ferros/RN, 25 de fevereiro de 2016 O minicurso Descrição: Para se utilizar os vários núcleos de processamento disponíveis nos computadores atuais de forma eficiente, faz necessário
AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação MULTIPROCESSADORES
Paradigmas de Computação Paralela
Paradigmas de Computação Paralela Modelos e Linguagens de Computação Paralela João Luís Ferreira Sobral jls@... 1 Dezembro 2015 Razões para a computação paralela (cf. Skillicorn & Talia 1998) O mundo é
Paralelismo de dados. (execução de simultaneidade) Tipo de arquitetura paralela SIMD. SIMD (Single Instruction Multiple Data)
Paralelismo de dados (execução de simultaneidade) Em métodos tradicionais de programação (processamento sequencial), uma grande quantidade de dados é processada em um único núcleo de uma CPU, enquanto
Paralelismo de dados. (execução de simultaneidade) Tipo de arquitetura paralela SIMD. SIMD (Single Instruction Multiple Data)
Paralelismo de dados (execução de simultaneidade) Em métodos tradicionais de programação (processamento sequencial), uma grande quantidade de dados é processada em um único núcleo de uma CPU, enquanto
Sistemas Distribuídos
Sistemas Distribuídos Classificação de Flynn Fonte: Professoras. Sarita UFRJ e Thais V. Batista - UFRN Arquiteturas Paralelas Computação Paralela Conceitos Permite a execução das tarefas em menor tempo,
SSC510 Arquitetura de Computadores. 6ª aula
SSC510 Arquitetura de Computadores 6ª aula PARALELISMO EM NÍVEL DE PROCESSOS PROFA. SARITA MAZZINI BRUSCHI Tipos de Paralelismo Instrução (granulosidade fina) Paralelismo entre as instruções Arquiteturas
Parte I Multiprocessamento
Sistemas Operacionais I Estrutura dos SO Prof. Gregorio Perez [email protected] 2004 Parte I Multiprocessamento Roteiro 1 Multiprocessadores em Sistemas Fortemente Acoplados 1.1 1.2 1.3 Processamento
GPU (Graphics Processing Unit) Bruno Padilha Gregory De Bonis Luciana Kayo
GPU (Graphics Processing Unit) Bruno Padilha - 5745282 Gregory De Bonis - 6431180 Luciana Kayo - 6430992 O que é? O que é? - Processador auxiliar responsável principalmente por operações de ponto flutuante
CUDA: Compute Unified Device Architecture. Marco Antonio Simões Teixeira
CUDA: Compute Unified Device Architecture Marco Antonio Simões Teixeira Sumário Introdução; CUDA: História; CUDA: programando; CUDA e deep learning; Links úteis; Considerações finais. 2 INTRODUÇÃO 3 O
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender a Arquitetura SMP Conhecer a Organização SMP Apresentar o Conceito
Processamento de áudio em tempo real utilizando dispositivos não convencionais:
Processamento de áudio em tempo real utilizando dispositivos não convencionais: Processamento paralelo com Pure Data e GPU. André Jucovsky Bianchi [email protected] Departamento de Ciência da Computação Instituto
Processador. Processador
Departamento de Ciência da Computação - UFF Processador Processador Prof. Prof.Marcos MarcosGuerine Guerine [email protected] [email protected] 1 Processador Organização básica de um computador: 2 Processador
Programação de Alto Desempenho - 2. Prof: Carla Osthoff
Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: [email protected] 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda
COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1
COMPARAÇÃO DE DESEMPENHO ENTRE IMPLEMENTAÇÕES DO ALGORITMO JOGO DA VIDA COM PTHREAD E OPEMMP 1 Márcia Da Silva 2, Igor Gamste Haugg 3, Eliézer Silveira Prigol 4, Édson L. Padoin 5, Rogério S. M. Martins
Aluno de Pós-Graduação em Engenharia de Software para Dispositivos Móveis pela UNINTER
COMPARAÇÃO DE DESEMPENHO NA PROGRAMAÇÃO PARALELA HÍBRIDA (MPI + OPENMP) NA BUSCA DE TEXTO EM ARQUIVOS 1 COMPARISON OF PERFORMANCE IN HYBRID PARALLEL PROGRAMMING (MPI + OPENMP) IN SEARCH OF TEXT IN FILES
Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core
RSS-Verão-01/08 p.1/36 Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7 Escola de Verão 2008 Arquiteturas Multi-Core Renato S. Silva LNCC - MCT Janeiro de 2008 RSS-Verão-01/08 p.2/36 Objetivo:
PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register
PROCESSADORES Um computador digital consiste em um sistema interconectado de processadores, memória e dispositivos de entrada e saída. A CPU é o cérebro do computador. Sua função é executar programas armazenados
PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 11 - Threads e Concorrência
Aula 11 - Threads e Concorrência Conteúdo Programático desta aula Apresentar os Conceitos de Threads, Concorrência e Sincronização. Verificar a aplicabilidade destes conceitos no mercado, bem como sua
Introdução à Computação: Sistemas de Computação
Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza ([email protected]) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
The future is parallel but it may not be easy
The future is parallel but it may not be easy Adriano Tabarelli, Alex Morinaga, Caio Silva, Cássia Ferreira, Daniel Santos, Eduardo Apolinário, Hugo Posca, Thiago Batista, Paulo Floriano Universidade de
ARQUITETURA DE COMPUTADORES
RCM00014 Haswell wafer ARQUITETURA DE COMPUTADORES Prof. Luciano Bertini Site: http://www.professores.uff.br/lbertini/ Objetivos do Curso Entendimento mais aprofundado do funcionamento
A IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES
A IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES Euzébio da Costa Silva 1, Victor Pereira Ribeiro 2, Susana Brunoro Costa de Oliveira 3 1 29520-000, [email protected] 2 29520-000, [email protected]
Faculdade de Computação 3 a Prova de Arquitetura e Organização de Computadores 2 Parte I Prof. Cláudio C. Rodrigues
Faculdade de Computação 3 a Prova de Parte I Prof. Cláudio C. Rodrigues Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Nome: Matrícula: Valor: 15 Problemas: P1. Qual o
Processamento de Alto Desempenho utilizando Unidade de Processamento Gráfico - GPU
Processamento de Alto Desempenho utilizando Unidade de Processamento Gráfico - GPU Francisco Ribacionka e Ettore Enrico (STI ) USP/STI/InterNuvem [email protected] Março -2016 Processamento de Alto Desempenho
Introdução aos Conceitos de Computação Paralela através da estimativa de Pi
Introdução aos Conceitos de Computação Paralela através da estimativa de Pi Diego da Silva Pereira 1 1 Professor de Redes de Computadores IFRN Câmpus Currais Novos. e-mail: [email protected] Resumo:
PARALELIZAÇÃO DE APLICAÇÕES NA ARQUITETURA CUDA: UM ESTUDO SOBRE VETORES 1
PARALELIZAÇÃO DE APLICAÇÕES NA ARQUITETURA CUDA: UM ESTUDO SOBRE VETORES 1 DUTRA, Evandro Rogério Fruhling 2 ; VARINI, Andre Luis 2 ; CANAL, Ana Paula 2 1 Trabalho de Iniciação Científica _UNIFRA 2 Ciência
Ambientes de computação de alto desempenho no LNCC
Ambientes de computação de alto desempenho no LNCC Roberto Pinto Souto MCTI/LNCC/CSR - CENAPAD-RJ [email protected] 24 de Março de 2014 (Seminário da Pós-graduaçao) 24 de Março de 2014 1 / 78 Roteiro 1 Introdução
Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos
Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estação
Unidade 12: Introdução ao Paralelismo:
Arquitetura e Organização de Computadores 1 Unidade 12: Introdução ao Paralelismo: Processadores Superescalares Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura superescalar
Fundamentos de Sistemas Operacionais
Fundamentos de Sistemas Operacionais Aula 4: Programação Concorrente Diego Passos Últimas Aulas Processos Compostos por: Código (programa). Estado (memória, registradores). Em um sistema com multiprogramação:
Sistemas de Informação. Sistemas Operacionais
Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE II SUMÁRIO 3. THREAD: 3.1 Introdução; 3.2 Ambiente Monothread; 3.3 Ambiente Multithread; 3.4 Arquitetura e Implementação; 3.5 Modelos
Fundamentos de Sistemas Operacionais. Threads. Prof. Edwar Saliba Júnior Março de Unidade Threads
Threads Prof. Edwar Saliba Júnior Março de 2007 1 Definição Partes de um processo que compartilham mesmo espaço de endereçamento Sub-rotina de um programa executada paralelamente ao programa chamador (execução
Sistemas Operacionais. Entrada/Saída
Sistemas Operacionais Entrada/Saída Atualizado em 28/02/2014 Como ocorre a comunicação de E/S Aplicação Operações de E/S Chamadas de Sistema S.O. Subsistema de E/S Núcleo (Kernel) Drivers HARDWARE Controladoras
Arquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização
Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 1 Introdução Arquitetura e Organização 1. Arquitetura
SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella
SSC- 0143 PROGRAMAÇÃO CONCORRENTE Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES Prof. Dr. Daniel Caetano 2012-2 Lembretes Compreender o funcionamento da Arquitetura Superpipeline Compreender
Exemplo Amdahl. O speedup total é dado por:
Í Revisão da prova Questão 20: A exploração do paralelismo em nível de instruções em uma arquitetura superescalar é realizada identificando no fluxo de instruções aquelas que são independentes a fim de
Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software
Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições
Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software
Processo Um programa em execução Gerência de Processos Contexto de Processo Conjunto de Informações para gerenciamento de processo CPU: Registradores Memória: Posições em uso E/S: Estado das requisições
