Arquitetura e Organização de Computadores. Capítulo 7 Multicores, Multiprocessadores e Clusters
|
|
- David Martinho Philippi
- 8 Há anos
- Visualizações:
Transcrição
1 Arquitetura e Organização de Computadores Capítulo 7 Multicores, Multiprocessadores e Clusters
2 Material adaptado de: Patterson e Henessy, Computer Organization and Design 4 th Edition 2
3 Objetivo: conectar vários computadores para alcançar um desempenho maior: Multiprocessadores; Escalabilidade, disponibilidade, eficiência energética; Job-level (process-level) parallelism: Alto throughput para tarefas independentes; Parallel processing program: Um programa que executa em vários processadores; Microprocessadores multicore: Chips com vários processadores (cores). Introdução 3
4 Hardware: Serial: ex. Pentium 4; Paralelo: ex. quad-core Xeon e5345; Software: Sequencial: ex. multiplicação de matrizes; Concorrente: ex. sistema operacional; Software sequencial/concorrente pode rodar em hardware serial/paralelo: Desafio: fazer o uso efetivo do hardware paralelo. Hardware e Software 4
5 2.11: Paralelismo e instruções: Sincronização; 4.10: Paralelismo e paralelismo avançado a nível de instrução; 5.8: Paralelismo e hierarquia de memória: Coerência de cache; 6.9: Paralelismo e I/O: Redundant Arrays of Inexpensive Disks. O que nós já vimos durante o semestre 5
6 Software paralelo é o problema; Necessita alcançar um ganho significativo de desempenho: Caso contrário, use apenas um uniprocessador rápido, dado que é mais fácil! Dificuldades: Particionamento; Coordenação; Custo da comunicação. Programação paralela 6
7 Parte sequencial pode limitar o speedup; Exempli: 100 processadores com 90x de speedup? Tnew = Tparallelizabls/100 + Tsequential T new T Speedup Solving : F parallelizable 1 /100 parallelizable T 1 F paralleliz F able sequential parallelizable / É necessário que apenas 0,1% do tempo total seja sequencial. Lei de Amdahl s 7
8 Carga: soma de 10 escaleres e soma matrizes de 10x10: Speedup de 10 para 100 processaores; Uniprocessador: Tempo = ( ) x t add ; 10 processadores: Tempo = 10 x t add + 100/10 x t add = 20 x t add ; Speedup = 110/20 = 5.5; 100 processadores: Tempo = 10 x t add + 100/100 x t add = 11 x t add ; Speedup = 110/11 = 10; OBS: Assuma que a carga pode ser balanceada entre os processadores. Exemplo: Aumentando a escala 8
9 SMP: shared memory multiprocessor: Hardware provê um único espaço de endereço a todos os processaodres; Sincroniza as variáveis compartilhadas usando locks; Tempo de acesso à memória: UMA (uniforme) vs. NUMA (não uniforme). Memória compartilhada 9
10 Soma de números em 100 processadores UMA: Cada processador tem ID: 0 Pn 99; Partição 1000 números por processador; Simulação inicial em cada processador: sum[pn] = 0; for (i = 1000*Pn; i < 1000*(Pn+1); i=i+1) sum[pn] = sum[pn] + A[i]; Agora é necessário somar essas somas parciais: Redução: dividir para conquistar; Metade dos processadores somas pares, depois quadras,... Necessita sincronizar entre os passos da redução. Exemplo: Soma com redução 10
11 half = 100; repeat synch(); if (half%2!= 0 && Pn == 0) sum[0] = sum[0] + sum[half-1]; /* Conditional sum needed when half is odd; Processor0 gets missing element */ half = half/2; /* dividing line on who sums */ if (Pn < half) sum[pn] = sum[pn] + sum[pn+half]; until (half == 1); Exemplo: Soma com redução 11
12 Cada processador tem o seu espaço de endereços privados; Hardware envia/recebe mensagem entre processadores. Passagem de mensagem 12
13 Rede de computadores independentes: Cada um tem sua memória privada e SO; Conectados através de um sistema de I/O: Ex. Ethernet/switch, internet; Adequados para aplicações de tarefas independentes: Web servers, databases, simulações,... Alta disponibilidade, escalável, acessível; Problemas: Custo de administração (melhor usar máquina virtuais); Baixa largura de banda da interconexão: Diferente largura de banda do processador/memória de um SMP. Clusters fracamente acoplados 13
14 Soma de em 100 processaores; Primeiro distribui 100 números para cada: As somas parciais: sum = 0; for (i = 0; i<1000; i = i + 1) sum = sum + AN[i]; Redução? Metade dos processadores enviam, outra metade recebe e realiza a soma; etc. Soma com redução (novamente!) 14
15 Dados as funções de send() e receive(): limit = 100; half = 100;/* 100 processors */ repeat half = (half+1)/2; /* send vs. receive dividing line */ if (Pn >= half && Pn < limit) send(pn - half, sum); if (Pn < (limit/2)) sum = sum + receive(); limit = half; /* upper limit of senders */ until (half == 1); /* exit with final sum */ Enviar/receber também provê sincronização; Assuma que enviar/receber tenha o mesmo tempo da adição. Soma com redução (novamente!) 15
16 Computadores separados interconectados por redes distantes: Ex. conexões de internet; As unidade de trabalho são terceirizadas, resultados são enviados de volta; Pode usar o tempo não utilizado pelos PCs: Ex. SETI@home, World Community Grid Grid Computing 16
17 Executa várias threads em paralelo: Replica registradores, PC, etc; Troca rápida entre threads; Multithread de ajuste fino: Troca as threads depois de cada ciclo; Executa as instruções de forma intercalada; Se uma thread entra em stall, outras serão executadas; Multithread de ajuste grosseiro: Só troca de thread quando o stall é longo (ex. L2 miss); Simplifica o hardware, mas não esconde stalls curtos (ex. hazard de dados). Multithreading 17
18 Em processadores múltiplas requisições dinamicamente escalonados: Escalona instruções de várias threads; Instruções de threads independentes executam quando a unidade funcional está disponível; Nas threads, a gestão dependências é feita por escalonamento e renomeação de registradores; Exemplo: Intel Pentium-4 HT Duas threads: registradores duplicados, unidades funcionais e caches compartilhadas. Simultaneous Multithreading - SMT 18
19 Exemplo Multithreading 19
20 Classificação alternativa: Data Streams Single Multiple Instruction Streams Single SISD: Intel Pentium 4 SIMD: SSE instructions of x86 Multiple MISD: No examples today MIMD: Intel Xeon e5345 SPMD: Single Program Multiple Data: Um programa paralelo em um computador MIMD; Código condicional para processadores diferentes. Stream de dados e instruções 20
21 Operam elemento a elemento em vetores de dados: Ex. Instruções MMX e SSE do x86 Vários dados em registradores de 128 bits; Todos os processadores executam a mesma instrução ao mesmo tempo: Cada um com um endereço diferente do dado; Simplifica a sincronização; Hardware de controle das instruções reduzido; Funciona melhor com aplicações com alto grau de paralelismo de dados. SIMD 21
22 Unidades funcionais com um alto grau de pipeline; Stream de dados de/para registradores vetoriais para as unidades: Dados coletados da memória nos registradores; Resultados armazenados nos registradores para a memória; Exemplo: Extensão vetorial do MIPS: 32x64 registradores de elementos (elementos de 64 bits); Instruções vetoriais: lv, sv: load/store vector; addv.d: add vectors of double Addvs.d: add scalar to each element of vector of double; Reduz significativamente a largura de banda de busca de instruções. Processadores vetoriais 22
23 Compiladores e arquiteturas vetoriais: Simplifica a programação de aplicações com paralelismo de dados; Declaração explícita de ausência de dependência no loop: Verificação reduzida no hardaware; Acesso a padrões regulares se beneficiam de memórias intercaladas e rajadas; Evita hazards de controle, pois evita o uso de loops; Mais gerais que extensões de mídia ad-hoc (como MMX, SSE): Se ajusta melhor a tecnologia dos compiladores. Vetor vs. escalar 23
24 Placas de vídeo originais: Buffer de memória para armazenar os quadros com geração de endereços para a saída de vídeo. Processamento de gráficos 3D: Originalmente em computadores de alto desempenho (ex. SGI); Lei de Moore => menor custo, maior densidade; Placas gráficas 3D para PCs e consoles de games; Graphics Processing Units: Processadores orientados para tarefas 3D; Processamento de vértices/pixel, sombras, mapeamento de texturas, etc... História das GPUs 24
25 Gráficos no sistema 25
26 Processamento de aplicações com bastante paralelismo de dados: GPUs são altamente mutlithread; Usa a troca de thread para esconder a latência de memória; Menos dependente de caches multinível; Memória gráfica é grande com alta largura de banda; Tendências das GPUs de uso geral: Sistemas de CPU/GPU hereterogêneas; CPU para código sequencial, CPU para código paralelo; Linguagens de programação/apis: DirectX, OpenGL; C for Graphics (Cg), High Level Shader Language (HLSL); Compute Unified Device Architecture (CUDA) Arquiteturas das GPUs 26
27 Streaming multiprocessor 8 Streaming processors Exemplo: NVIDIA Tesla 27
28 Stream Processors (SP): Unidades de inteiros e FP de precisão simples; Cada SP é um multithread de ajuste fino; Warp: grupo de 32 threads: Executadas em parelalo, estilo SIMD: 8 SPs x 4 ciclos de clock; Contexto de hardware para 24 warps: Registradores, PCs, etc... Exemplo: NVIDIA Tesla 28
29 Não casam precisamente no modelo SIMD/MIMD: Execução condicional de uma thread permite a ilusão de um MIMD: Entretanto com degradação de desempenho; Instruction-Level Parallelism Data-Level Parallelism Static: Discovered at Compile Time VLIW SIMD or Vector Dynamic: Discovered at Runtime Superscalar Tesla Multiprocessor Classificando GPUs 29
30 Topologias de rede: Arranjos de processadores, switches e links. Bus Ring 2D Mesh N-cube (N = 3) Fully connected Redes de interconexão 30
31 Redes multiestágio 31
32 Desempenho: Latência por mensagem (rede sem carga); Throughput: Largura de banda do link; Largura de banda da rede; Largura de banda da bisseção; Atrasos de congestionamento (depende do tráfego); Custo; Energia; Roteabilidade em silício. Características das redes 32
33 Linpack: algebra linear com matrizes; SPECrate: execução paralela de programas SPEC CPU: Paralelismo de tarefas; SPLASH: Starnford Parallel Applications for Shared Memory: Mix de kernels e aplicações, altamente escalável; NAS (NASA Adavanced Supercomputing): Kernels de computação de fluídos dinâmicos; PARSEC (Princeton Application Repository for Shared Memory Computers): Aplicações multithread usando Pthreads e OpenMP. Benchmarks paralelos 33
34 Lei de Amdahl não se aplica a computadores paralelos: Uma vez que podemos alcançar um speedup linear; Entretanto só para aplicações com escalabilidade ruim; Pico de desempenho define o desempenho observado: Vendedores adoram essa abordagem! Necessário ter cuidado com os gargalos. Falácias 34
35 Não desenvolver o software levando em conta a arquitetura multiprocessador: Ex. usar um único lock para um recurso composto compartilhado; Serializa o acesso, mesmo se eles pudessem ser feitos em paralelo; Use um lock de granularidade fina. Armadilhas 35
36 Objetivo: alto desempenho usando vários processadores; Dificuldades: Desenvolver software paralelo; Construir arquiteturas apropriadas; Muitas razões para otimismo: Mudanças no ambiente de software e aplicações; Chip-level Multiprocessors (CMP) com menor latência, maior largura de banda de interconexão; Um desafio constante para arquitetos de computador! Conclusões 36
37 Arquitetura e Organização de Computadores Capítulo 6 Armazenamento e outros tópicos de E/S
Organização e Arquitetura de Computadores I. de Computadores
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização Básica B de (Parte V, Complementar)
Leia maisCapítulo 8 Arquitetura de Computadores Paralelos
Capítulo 8 Arquitetura de Computadores Paralelos Necessidade de máquinas com alta capacidade de computação Aumento do clock => alta dissipação de calor Velocidade limitada dos circuitos => velocidade da
Leia maisSistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro
Sistemas MIMD Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Arquiteturas Paralelas (SISD) Single Instruction Stream, Single Data Stream: Monoprocessador
Leia maisMáquinas Multiníveis
Infra-Estrutura de Hardware Máquinas Multiníveis Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Conceitos básicos Classificação de arquiteturas Tendências da tecnologia Família Pentium
Leia maisOrganização de Computadores 2005/2006 Processamento Paralelo
Organização de Computadores 2005/2006 Processamento Paralelo Paulo Ferreira paf a dei.isep.ipp.pt Maio de 2006 Introdução 2 Porquê?...........................................................................................
Leia maisParalelismo. Computadores de alto-desempenho são utilizados em diversas áreas:
Computadores de alto-desempenho são utilizados em diversas áreas: - análise estrutural; - previsão de tempo; - exploração de petróleo; - pesquisa em fusão de energia; - diagnóstico médico; - simulações
Leia maisArquitetura e Organização de Computadores. Capítulo 0 - Introdução
Arquitetura e Organização de Computadores Capítulo 0 - Introdução POR QUE ESTUDAR ARQUITETURA DE COMPUTADORES? 2 https://www.cis.upenn.edu/~milom/cis501-fall12/ Entender para onde os computadores estão
Leia maisArquitetura e Organização de Computadores 2. Apresentação da Disciplina
Arquitetura e Organização de Computadores 2 Apresentação da Disciplina 1 Objetivos Gerais da Disciplina Aprofundar o conhecimento sobre o funcionamento interno dos computadores em detalhes Estudar técnicas
Leia maisProcessador ( CPU ) E/S. Memória. Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento
1 Processadores Computador Processador ( CPU ) Memória E/S Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento 2 Pastilha 3 Processadores (CPU,, Microcontroladores)
Leia maisALGORÍTMOS PARALELOS (Aula 2) LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES
ALGORÍTMOS PARALELOS (Aula 2) Neyval C. Reis Jr. OUTUBRO/2004 LCAD Laboratório de Computação de Alto Desempenho DI/UFES Programa do Curso LCAD 1. Introdução 2. Arquitetura de Computadores 3. Arquiteturas
Leia maisArquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França
Arquitetura NUMA 1 Daniel de Angelis Cordeiro INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França 6 de Outubro de 2010 1 Baseado em slides feitos por Christiane Pousa
Leia maisArquitetura e Organização de Computadores. Capítulo 0 - Introdução
Arquitetura e Organização de Computadores Capítulo 0 - Introdução POR QUE ESTUDAR ARQUITETURA DE COMPUTADORES? 2 https://www.cis.upenn.edu/~milom/cis501-fall12/ Entender para onde os computadores estão
Leia maisSSC510 Arquitetura de Computadores. 12ª aula
SSC510 Arquitetura de Computadores 12ª aula EVOLUÇÃO DA ARQUITETURA INTEL PROFA. SARITA MAZZINI BRUSCHI 1 Pentium - Modelos 2 Pentium - Arquiteturas Netburst P7 Sétima geração dos processadores da arquitetura
Leia maisBits internos e bits externos. Barramentos. Processadores Atuais. Conceitos Básicos Microprocessadores. Sumário. Introdução.
Processadores Atuais Eduardo Amaral Sumário Introdução Conceitos Básicos Microprocessadores Barramentos Bits internos e bits externos Clock interno e clock externo Memória cache Co-processador aritmético
Leia maisIntrodução às arquiteturas paralelas e taxonomia de Flynn
Introdução às arquiteturas paralelas e taxonomia de Flynn OBJETIVO: definir computação paralela; o modelo de computação paralela desempenhada por computadores paralelos; e exemplos de uso da arquitetura
Leia maisProfessores: Aula 10. Lúcia M. A. Drummond Simone de Lima Martins. Conteúdo: Arquiteturas Avançadas. - Arquiteturas RISC - Processamento Paralelo
1 Professores: Aula 10 Lúcia M. A. Drummond Simone de Lima Martins Conteúdo: Arquiteturas Avançadas - Arquiteturas RISC - Processamento Paralelo 2 Arquiteturas RISC Reduced Instruction Set Computer se
Leia maisIntrodução à Organização de Computadores. Execução de Programas Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007
Introdução à Organização de Computadores Execução de Programas Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 CPU (Central Processing Unit) é o coordenador de todas as atividades
Leia maisperiféricos: interfaces humano-computador (HCI) arquivo de informação comunicações
Introdução aos Sistemas de Computação (6) Análise de componentes num computador Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3.
Leia maisMultiprocessamento. Patterson & Hennessy Capítulo 9. Arquitetura e Organização de Computadores Juliano M. Vieira (c) 2011
Multiprocessamento Patterson & Hennessy Capítulo 9 Arquitetura e Organização de Computadores Juliano M. Vieira (c) 2011 Tópicos Abordados Tipos comuns SMP (processamento paralelo) NUMA (placas de alto
Leia maisMicroarquiteturas Avançadas
Univ ersidade Federal do Rio de Janei ro Info rmátic a DCC/IM Arquitetura de Computadores II Microarquiteturas Avançadas Gabrie l P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo
Leia maisslide 0 Algoritmos Paralelos
slide 0 Algoritmos Paralelos Slide 2 Demanda por Velocidade Computational Demanda contínua por maior rapidez computational das máquinas que as atualmente disponíveis. As áreas que exigem maior rapidez
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano 2012-1
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES Prof. Dr. Daniel Caetano 2012-1 Lembretes Compreender o funcionamento da Arquitetura Superpipeline Compreender
Leia maisSistemas Operacionais
Sistemas Operacionais SISTEMAS COM MÚLTIPLOS PROCESSADORES LIVRO TEXTO: CAPÍTULO 13, PÁGINA 243 Prof. Pedro Luís Antonelli Anhanguera Educacional INTRODUÇÃO Arquiteturas que possuem duas ou mais CPUs interligadas
Leia maisFACULDADE PITÁGORAS PRONATEC
FACULDADE PITÁGORAS PRONATEC DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Objetivos Ao final desta apostila,
Leia maisInformática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1
Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisIntrodução à Organização de Computadores. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007
Introdução à Organização de Computadores Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 Tópicos Processadores Memória Principal Memória Secundária Entrada e
Leia maisInfraestrutura de Hardware. Revisão Pipeline, Superescalar e Multicores
Infraestrutura de Hardware Revisão Pipeline, Superescalar e Multicores Pipeline Pipeline é uma técnica que visa aumentar o nível de paralelismo de execução de instruções ILP (Instruction-Level Paralellism)
Leia maisSistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN
Sistemas Paralelos e Distribuídos Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN Conceitos preliminares Paralelismo refere-se a ocorrência simultânea de eventos em um computador Processamento
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 6 - ARQUITETURAS AVANÇADAS DE COMPUTADORES 1. INTRODUÇÃO As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com ela o conceito de arquitetura avançada tem se modificado. Nos
Leia maisMulti-processamento. Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores
Multi-processamento Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores Arquitecturas MIMD de memória distribuída Massive Parallel Computers Sistemas distribuídos Ainda
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 10 Agenda Análise de Desempenho (cont.) Avaliando o Desempenho Benchmark SPEC Falácias e Armadilhas Desempenho
Leia maisImagem retirada de documentações de treinamentos oficiais INTEL
O que é Hyper-Threading (HT)? Hyper-Threading (HT) é uma tecnologia existe nos processadores que visa explorar com mais eficiência o uso da CPU, o grande foco desta tecnologia é evitar ociosidade de processamento
Leia mais7 Processamento Paralelo
7 Processamento Paralelo Yes, of course, who has time? Who has time? But then if we do not ever take time, how can we ever have time? (The Matrix) 7.1 Introdução Classificação de Sistemas Paralelos Diversas
Leia maisSistemas Distribuídos Conceitos HW e SW. Edeyson Andrade Gomes www.edeyson.com.br
Sistemas Distribuídos Conceitos HW e SW Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Conceitos de Hardware Conceitos de Software Combinações de SW e HW 3 Sistemas Distribuídos
Leia maisCOMPUTAÇÃO PARALELA. uma visão geral. Guilherme Galante. v.2.0
COMPUTAÇÃO PARALELA uma visão geral Guilherme Galante v.2.0 Guilherme Galante Bacharel em Informática Unioeste (2003) Mestre em Ciência da Computação UFRGS (2006) Professor Assistente do curso de Informática/Ciência
Leia maisOrganização e Arquitetura de Computadores. Capítulo 13 Paralelismo no nível de instruções
Organização e Arquitetura de Computadores Capítulo 13 Paralelismo no nível de instruções O que é Superescalar? As arquiteturas superescalares são aquelas capazes de buscar, decodificar, executar e terminar
Leia maisRicardo Gonçalves 2013/2014. Arquitecturas Multicore
Ricardo Gonçalves 2013/2014 Arquitecturas Multicore Outline Introdução Processador Multi-core: o que é? Do multi-processador ao multi-core Evolução dos processadores multi-core Arquitecturas multi-core
Leia maisCapítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)
Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes
Leia maisAula 04 A. Barramentos. Prof. Ricardo Palma
Aula 04 A Barramentos Prof. Ricardo Palma Definição Em ciência da computação barramento é um conjunto de linhas de comunicação que permitem a interligação entre dispositivos, como o CPU, a memória e outros
Leia maisO hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware
1 2 Revisão de Hardware 2.1 Hardware O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware 2.1.1 Processador O Processador
Leia maisBARRAMENTO DO SISTEMA
BARRAMENTO DO SISTEMA Memória Principal Processador Barramento local Memória cachê/ ponte Barramento de sistema SCSI FireWire Dispositivo gráfico Controlador de vídeo Rede Local Barramento de alta velocidade
Leia maisArquitetura de Von Neumann e os Computadores Modernos
Arquitetura de Von Neumann e os Computadores Modernos Arquitetura de Computadores e Software Básico Aula 5 Flávia Maristela (flaviamsn@ifba.edu.br) Arquitetura de Von Neumann e as máquinas modernas Onde
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso
Leia mais} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede
Prof. Samuel Souza } Monolíticas Aplicações em um computador centralizado } Em Rede Aplicações com comunicação em rede } Distribuídas Comunicação e cooperação em rede } Aplicações que são funcionalmente
Leia maisCapítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos
Capítulo 8 Sistemas com Múltiplos Processadores 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos 1 Sistemas Multiprocessadores Necessidade contínua de computadores mais rápidos modelo
Leia maisSymmetric Multiprocessing Simultaneous Multithreading Paralelismo ao nível dos dados
Symmetric Multiprocessing Simultaneous Multithreading Paralelismo ao nível dos dados Luís Nogueira luis@dei.isep.ipp.pt Departamento Engenharia Informática Instituto Superior de Engenharia do Porto SMP,
Leia maisArquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64
Arquitecturas Alternativas Pipelining Super-escalar VLIW IA-64 Pipeline de execução A execução de uma instrução passa por várias fases: Vimos o ciclo: fetch, decode, execute fetch decode execute instrução
Leia maisArquiteturas Paralelas
Curso de Informática DCC/IM UFRJ Arquitetura de Computadores II Arquiteturas Paralelas Bibliografia Advanced Computer Architecture Dezsõ Sima, Terence Fountain, Péter Kacsuk Addison-Wesley, 1997 Computer
Leia maisUnidade 13: Paralelismo:
Arquitetura e Organização de Computadores 1 Unidade 13: Paralelismo: SMP e Processamento Vetorial Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura SMP e alguns detalhes
Leia maisSistema de Computação
Sistema de Computação Máquinas multinível Nível 0 verdadeiro hardware da máquina, executando os programas em linguagem de máquina de nível 1 (portas lógicas); Nível 1 Composto por registrados e pela ALU
Leia maisDefinindo melhor alguns conceitos
Definindo melhor alguns conceitos Processamento Paralelo: processamento de informação concorrente que pertencem a um ou mais processos que resolvem um único problema. Processamento Distribuído: processamento
Leia mais7-1. Parte 6 Otimizações da Arquitetura
7-1 Parte 6 Otimizações da Arquitetura 7-2 Bibliografia [1] Miles J. Murdocca e Vincent P. Heuring, Introdução à Arquitetura de Computadores [2] Andrew S. Tanenbaum, Modern Operating Systems [3] William
Leia maisSistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com
Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Introdução Um sistema operacional é um programa que atua como intermediário entre o usuário e o hardware de um computador. O propósito
Leia maisFACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES
FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br ESQUEMA DE UM COMPUTADOR Uma Unidade Central de
Leia maisOrganização e Arquitetura de Computadores
Organização e Arquitetura de Computadores Aula Introdutória Alexandre Amory Edson Moreno Apresentação Disciplina: Organização e Arquitetura de Computadores Horário: 3NP e 5NP Email: Alexandre Amory (178):
Leia mais29/3/2011. Primeira unidade de execução (pipe U): unidade de processamento completa, capaz de processar qualquer instrução;
Em 1993, foi lançada a primeira versão do processador Pentium, que operava a 60 MHz Além do uso otimizado da memória cache (tecnologia já amadurecida) e da multiplicação do clock, o Pentium passou a utilizar
Leia maisOrganização e Arquitetura de Computadores. Hugo Barros email@hugobarros.com.br
Organização e Arquitetura de Computadores Hugo Barros email@hugobarros.com.br RISC X SISC RISC: Reduced Instruction Set Computer Nova Tecnologia para máquinas de alta performance; Máquina com um conjunto
Leia maisCISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com
Leia maisArquitetura e Organização de Computadores 2
Arquitetura e Organização de Computadores 2 Escalonamento Estático e Arquiteturas VLIW Dynamic Scheduling, Multiple Issue, and Speculation Modern microarchitectures: Dynamic scheduling + multiple issue
Leia maisProgramação Paralela
rogramação aralela FEU 2. Arquitecturas de omputadores e rogramação aralela Arquitecturas de omputadores Taxonomia de Flynn (extra livro recomendado) Base da Taxonomia: D: data stream (fluxo de acesso
Leia maisVisão Geral de Pipelining
Pipeline Visão Geral de Pipelining Instruções MIPS têm mesmo tamanho Mais fácil buscar instruções no primeiro estágio e decodificar no segundo estágio IA-32 Instruções variam de 1 byte a 17 bytes Instruções
Leia maisProf. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013
MC714 Sistemas Distribuídos 2 semestre, 2013 Virtualização - motivação Consolidação de servidores. Consolidação de aplicações. Sandboxing. Múltiplos ambientes de execução. Hardware virtual. Executar múltiplos
Leia maisSistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 02 - Estrutura dos Sistemas Operacionais. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 02 - Estrutura dos Sistemas Operacionais Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,
Leia maisProcessador ARM Cortex-A9
Erick Nogueira Nascimento (032483) Franz Pietz (076673) Lucas Watanabe (134068) 11 de junho de 2012 Introdução Alto desempenho e economia de energia Arquitetura ARMv7-A Características do processador super-escalável
Leia mais3. Arquiteturas SIMD. 3.1 Considerações iniciais
3. Arquiteturas SIMD Computadores SIMD (Single Instruction Multiple Data) são utilizados para a resolução de problemas computacionalmente intensivos da área científica e de engenharia, em que existem estruturas
Leia maisArquitetura de Computadores II
Universidade Federal do Rio de Janeiro Bacharelado em Ciência da Computação - DCC/IM Arquitetura de Computadores II Multithreading Prof. Gabriel P. Silva Introdução Muitos dos sistemas operacionais modernos
Leia maisIntrodução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)
Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema
Leia maisArquiteturas RISC. (Reduced Instructions Set Computers)
Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina
Leia maisArquitetura e Programação de GPU. Leandro Zanotto RA: 001962 Anselmo Ferreira RA: 023169 Marcelo Matsumoto RA: 085973
Arquitetura e Programação de GPU Leandro Zanotto RA: 001962 Anselmo Ferreira RA: 023169 Marcelo Matsumoto RA: 085973 Agenda Primeiras Placas de Vídeo Primeira GPU Arquitetura da GPU NVIDIA Arquitetura
Leia maisParalelização Introdução a vetorização, OpenMP e MPI
1/45 Paralelização Introdução a vetorização, OpenMP e MPI 1 Conceitos Paulo Penteado IAG / USP pp.penteado@gmail.com Esta apresentação: Arquivos do curso: Artigo relacionado: http://www.ppenteado.net/ast/pp_para_on/pp_para_on_1.pdf
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores Métricas de Desempenho Ivan Saraiva Silva Sumário Como arquiteturas são geralmente avaliadas Como arquiteturas obedecem a restrições de projeto Métricas de desempenho Combinando
Leia maisIntrodução aos Computadores
Os Computadores revolucionaram as formas de processamento de Informação pela sua capacidade de tratar grandes quantidades de dados em curto espaço de tempo. Nos anos 60-80 os computadores eram máquinas
Leia maisBANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING
BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Conceitos e Arquitetura Vantagens das Arquiteturas C/S (em relação
Leia maisIntrodução ao Processamento Paralelo
Introdução ao Processamento Paralelo Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h Introdução Crescente aumento de desempenho dos PCs (máquinas convencionais). Existem aplicações que requisitam
Leia mais28/9/2010. Paralelismo no nível de instruções Processadores superescalares
Arquitetura de Computadores Paralelismo no nível de instruções Processadores superescalares Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Processadores superescalares A partir dos resultados
Leia maisANHANGUERA EDUCACIONAL. Capítulo 2. Conceitos de Hardware e Software
ANHANGUERA EDUCACIONAL Capítulo 2 Conceitos de Hardware e Software Hardware Um sistema computacional é um conjunto de de circuitos eletronicos. Unidade funcionais: processador, memória principal, dispositivo
Leia maisArquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados
Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing
Leia maisAula 26: Arquiteturas RISC vs. CISC
Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos
Leia maisComputação Heterogênea Programação paralela, clusters e GPUs
Computação Heterogênea Programação paralela, clusters e GPUs Profa. Dra. Denise Stringhini (ICT- Unifesp) Primeiro Encontro do Khronos Chapters Brasil Belo Horizonte, 20/09/2013 Conteúdo Computação heterogênea:
Leia maisHARDWARE GRÁFICO. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR
HARDWARE GRÁFICO Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR Mar/2012 Introdução Características do hardware Funcionalidades do hardware gráfico Influência da área
Leia maisSistemas Computacionais II Professor Frederico Sauer
Sistemas Computacionais II Professor Frederico Sauer Livro-texto: Introdução à Organização de Computadores 4ª edição Mário A. Monteiro Livros Técnicos e Científicos Editora. Atenção: Este material não
Leia maisArquitectura de Computadores II. Multiprocessadores
Arquitectura de Computadores II LESI - 3º Ano Multiprocessadores João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Janeiro 2002 Uma forma lógica de aumentar o desempenho de uma
Leia maisMultiprocessamento. Multiprocessadores com memória distribuída (multicomputador)
Multiprocessamento Multiprocessadores com memória distribuída (multicomputador) Conjunto de processadores, cada qual com sua memória local Processadores se comunicam por troca de mensagens, via rede de
Leia mais3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:
Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de
Leia maisArquitetura de Computadores. Professor: Vilson Heck Junior
Arquitetura de Computadores Professor: Vilson Heck Junior Agenda Conceitos Estrutura Funcionamento Arquitetura Tipos Atividades Barramentos Conceitos Como já discutimos, os principais componentes de um
Leia maisSistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Questões Em uma rede de sobreposição (overlay), mensagens são roteadas de acordo com a topologia da sobreposição. Qual uma importante desvantagem
Leia maisCapítulo 1 Introdução
Capítulo 1 Introdução Programa: Seqüência de instruções descrevendo como executar uma determinada tarefa. Computador: Conjunto do hardware + Software Os circuitos eletrônicos de um determinado computador
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 09 Agenda Avaliando e Compreendendo o Desempenho Introdução Definindo Desempenho Medindo o Desempenho Desempenho
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1o. Semestre / 2005 Fundamentos Parte 2 Princípios de Projeto de Computadores Três áreas de aplicação com características diferentes
Leia maisSISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS 1. Histórico Primeiros computadores Computadores dos anos 50 e 60 Primeiros computadores com sistemas operacionais Surgimento das redes de computadores Nos anos 70 início das pesquisas
Leia maisUNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC
UNIVERSIDADE FEDERAL DE SANTA CATARINA DANIEL CARLOS CASAROTTO JOSE OTÁVIO CARLOMAGNO FILHO MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC Florianópolis, 2004 DANIEL CARLOS
Leia maisProgramação Concorrente Processos e Threads
Programação Concorrente Processos e Threads Prof. Eduardo Alchieri Processos O conceito mais central em qualquer sistema operacional é o processo Uma abstração de um programa em execução Um programa por
Leia maisMicroprocessadores. Prof. Leonardo Barreto Campos 1
Microprocessadores Prof. Leonardo Barreto Campos 1 Sumário Introdução; Arquitetura de Microprocessadores; Unidade de Controle UC; Unidade Lógica Aritméticas ULA; Arquitetura de von Neumann; Execução de
Leia maisCamadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores
Camadas de Serviço de Hardware e Software em Sistemas Distribuídos Arquiteutra de Sistemas Distribuídos Introdução Applications, services Adaptação do conjunto de slides do livro Distributed Systems, Tanembaum,
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Pipeline Slide 1 Pipeline Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Organização e Arquitetura de Computadores I Caminho de Dados
Leia maisA Evolução dos Clusters frente as demais arquiteturas de Alto Desempenho
A Evolução dos Clusters frente as demais arquiteturas de Alto Desempenho Rodrigo Santos de Souza, Adenauer C. Yamin Universidade Católica de Pelotas - UCPel {rsouza,adenauer}@ucpel.tche.br, 1 Introdução
Leia maisOrganização de Computadores 1
Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Metodologia da Disciplina 1-Objetivo 2-Competências
Leia maisIntrodução à Arquitetura de Computadores
1 Introdução à Arquitetura de Computadores Hardware e software Organização de um computador: Processador: registradores, ALU, unidade de controle Memórias Dispositivos de E/S Barramentos Linguagens de
Leia mais