Processamento Concorrente e Paralelo. Jairo Panetta ITA/IED Petrobras/E&P/Tecnologia Geofísica INPE/CPTEC/DMD/PAD

Tamanho: px
Começar a partir da página:

Download "Processamento Concorrente e Paralelo. Jairo Panetta ITA/IED Petrobras/E&P/Tecnologia Geofísica INPE/CPTEC/DMD/PAD"

Transcrição

1 Processamento Concorrente e Paralelo Jairo Panetta ITA/IED Petrobras/E&P/Tecnologia Geofísica INPE/CPTEC/DMD/PAD 1

2 Bibliografia Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar: Introduction to Parallel Computing, 2nd edition, Addison Wesley, 2003 Princípios Gerais de Paralelismo; Visão Algoritmica. M. Ben-Ari: Principles of Concurrent and Distributed Programming, Addison Wesley, Pioneiro em livros sobre concorrência (primeiro livro em 82). Jack Dongarra, Ian Foster, Geoffrey Fox, William Gropp, Ken Kennedy, Linda Torczon, Andy White: Sourcebook of Parallel Computing, Morgan Kaufmann, Um dos melhores livros em aplicações. David E. Culler, Jaswinder Pal Singh, Anoop Gupta: Parallel Computer Architecture, a Hardware/Software Approach, Morgan Kaufmann, Ênfase em hardware e seus impactos em software. Michael Wolfe: High Performance Compilers for Parallel Computing, Addison-Wesley, Técnicas de otimização e de compilação para paralelismo. John L. Hennessy, David A. Patterson: Computer Architecture: A Quantitative Approach, 4th edition, Morgan Kaufmann, Biblia de arquitetura de computadores Papers. 2

3 Introdução a Processamento Concorrente e Processamento Paralelo 3

4 Concorrência x Paralelismo Suponha que um conjunto de programas cooperam para realizar uma computação. Tradicionalmente, concorrência é utilizada quando os programas podem ser executados simultaneamente em um ou múltiplos processadores. Tradicionalmente, paralelismo é utilizado quando os programas são executados simultaneamente em múltiplos processadores. 4

5 Processamento Concorrente é a composição de múltiplas partes de uma única computação que podem ser executadas simultaneamente 5

6 Processamento Paralelo é a execução simultânea de múltiplas partes de uma única computação para reduzir seu tempo de execução 6

7 Concorrente x Paralelo Processamento Concorrente está estruturado para ser executado simultaneamente mas não necessariamente realiza Processamento Paralelo realiza a simultaneidade Exemplo: Com uma única CPU ( core ), é possível realizar Processamento Concorrente e testar a correção de Processamento Paralelo, mas não é possível reduzir o tempo de execução. 7

8 Outra forma: Processamento Concorrente mantêm duas ou mais ações em progresso simultaneamente. Processamento Paralelo executa duas ou mais ações simultaneamente Novamente, uma CPU (core) só faz Processamento Concorrente Há vantagens em se estruturar uma computação concorrentemente, mesmo com uma única CPU encapsulamento, melhor uso do recurso (CPU), etc... 8

9 Exemplos de Processamento Paralelo Copiar ( xerox ) documento da ordem de páginas utilizando 1 copiadora 2 copiadoras... Cavar uma vala horizontal de 10km de comprimento por 2m de diâmetro utilizando 1 trabalhador 2 trabalhadores... Escrever um arquivo em disco utilizando 1 servidor de arquivos 2 servidores de arquivos... Prever numericamente o tempo no futuro utilizando 1 CPU 2 CPUs... 9

10 Características básicas de Processamento Paralelo Requer a replicação (total ou parcial) de entidades trabalhadoras múltiplas copiadoras múltiplos trabalhadores múltiplos servidores de arquivos múltiplas CPUs Requer alterar a forma de realizar a tarefa para usufruir da replicação Ao replicar n entidades deseja-se dividir o tempo de execução da tarefa por n máximo teórico; porque? 10

11 Copiar páginas Suponha: original entregue em ordem crescente das páginas numeradas; copia deve ser entregue da mesma forma uma única pessoa divide o original em partes iguais a serem copiadas, entrega para os copiadores e recolhe as cópias cada copiadora copia uma única parte 1 segundo para copiar uma página 5 segundos para encontrar uma página em um bloco de páginas 5 segundos para juntar dois blocos de páginas copiadas Estime o tempo (s) para realizar a tarefa utilizando 1, 2, 4, 8, 16, 32 e 64 copiadoras 11

12 Estimativa Grosseira Hipótese: tempo total = tempo de entrega sequencial das partes + tempo de copiar uma parte + tempo de recolher a última parte Máquinas dividir Tempo (s) copiar juntar total Ganho , , , , , , ,33 12 falha hipótese da estimativa (recolhe cópias enquanto o último copiador trabalha) ERRADO

13 Copiar páginas Como utilizar eficientemente 1024 copiadoras? Alterando os mecanismos de distribuição de dados e de coleta de resultados O procedimento (algoritmo) muda com o volume de paralelismo pois muda o gargalo da tarefa E se uma copiadora for 10% mais lenta que as outras? típico de grande número de máquinas iguais E se uma copiadora quebrar? Tolerância a falhas é desejável; as vezes, imprescindível 13

14 Cavar vala de 10km Exemplo atribuído ao Prof. Siang W. Song (IME/USP) Similar ao exemplo anterior. Assuma terreno demarcado, número crescente de trabalhadores equipados e um capataz. Quais são os fatores que impedem redução ótima do tempo de execução com o aumento do número de trabalhadores? E se a vala for vertical? Há problemas inerentemente sequenciais alterar 1 bit na memória Pequenas variações do problema podem causar grandes variações no algoritmo 14

15 15 Níveis de Paralelismo

16 Níveis de Paralelismo Paralelismo ao nível de bits BLP: Bit Level Parallelism Acelera a execução de uma instrução aumentando a largura do datapath (microprocessadores de 4, 8, 16 e 32 bits) Muito explorado até meados da década de 80; praticamente esgotado Paralelismo ao nível de instruções ILP: Instruction Level Parallelism Execução simultânea de múltiplas instruções ou trechos: RISC, VLIW, Superscalar Muito explorado até meados da década de 90; praticamente esgotado Paralelismo ao nível de tarefas TLP: Thread Level Parallelism Múltiplos fluxos de execução simultâneos: Multi-core chips, Multithreading, etc Curso concentrado em TLP Alguns casos de ILP Culler, Cap. 1

17 Paralelismo é utilizado desde os primórdios da computação 17

18 Soma de dois inteiros de n bits Sejam X e Y dois inteiros de n bits representados por x i e y i, i=0,...,n-1 bit 0 o menos significativo Obter sua soma Z=z i, utilizando operações lógicas de um bit: e lógico, representado por x i y i ou lógico, representado por x i + y i ou exclusivo lógico, representado por x i # y i 18 M. D. Ercegovac, T. Lang, Digital Systems and Hardware/Firmware Algorithms, John Wiley & Sons

19 Seja c i o carry para o bit i da soma dos bits 0,...,i-1 defina c 0 =0 Algoritmo tradicional Então (pense quando o bit resultante for 1) z i = x i # y i # c i c i+1 = x i y i + c i (x i # y i ) Ou seja: bit i da soma é 1 sse apenas um dos três bits x i y i c i for 1, ou os três bits x i y i c i forem 1 haverá carry sse carry for gerado neste bit (x i y i ), ou houver carry do bit anterior (c i ) e for propagado por este bit (x i # y i ) 19

20 Algoritmo tradicional Algoritmo: c 0 = 0 for i = 0 : n-1 : 1! índice = primeiro : ultimo : passo z i = x i # y i # c i c i+1 = x i y i + c i (x i # y i ) end for Algoritmo sequencial (por que?) recursão, pois c i+1 = f(c i ) 20

21 Interior do laço original: z i = x i # y i # c i c i+1 = x i y i + c i (x i # y i ) Algoritmo tradicional Defina g i (gera carry) e p i (propaga carry) por g i = x i y i p i = x i # y i Então o interior do laço pode ser escrito: g i = x i y i ; z i = p i # c i ; p i = x i # y i c i+1 = g i + c i p i Os bits propaga e gera podem ser obtidos em um único passo (paralelo) para todos os i=0,...,n-1; falta resolver a recursão no carry (obter todos simultaneamente) quando resolvida, z i pode ser obtido em paralelo para todos os i 21

22 Recursões Recursão de profundidade 1: c i+1 = f(c i ) Técnica para gerar recursão de profundidade 2: c i+2 = f(c i+1 ) = f(f(c i )) E assim sucessivamente... Técnica exaustivamente utilizada para gerar paralelismo, quer aumentando a profundidade da recursão quer, no extremo, eliminando a recursão 22

23 Como c i+1 = g i + c i p i c i+2 = g i+1 + c i+1 p i+1 Carry Lookahead Adder Então substituindo c i+1 por sua expressão c i+2 = g i+1 + (g i + c i p i )p i+1 = g i+1 + g i p i+1 + c i p i p i+1 Algoritmo na metade dos passos do original: for i = 0 : n-1 : 2 g i = x i y i ; g i+1 = x i+1 y i+1 ; p i = x i # y i ; p i+1 = x i+1 # y i+1 ; z i = p i # c i ; z i+1 = p i+1 # c i+1 ; c i+1 = g i + c i p i ; c i+2 = g i+1 + g i p i+1 + c i p i p i+1 ; end for 23

24 Carry Lookahead Adder Sucessivamente: de c i+1 = g i + c i p i c i+2 = g i+1 + c i+1 p i+1 geramos c i+2 = g i+1 + (g i + c i p i )p i+1 = g i+1 + g i p i+1 + c i p i p i+1 e sucessivamente incrementando i e substituindo c i+1, c i+3 = g i+2 + g i+1 p i+2 + g i p i+1 p i+2 + c i p i p i+1 p i+2 c i+4 = g i+3 + g i+2 p i+3 + g i+1 p i+2 p i+3 + g i p i+1 p i+2 p i+3 + c i p i p i+1 p i+2 p i+3... Até obter c n-1 = f(c 0 ), eliminando a recursão Na prática, limitado por fan-in das portas lógicas 24

25 Carry Lookahead Adder Laço original gera um bit por iteração; há n iterações recursão de profundidade 1 Laço paralelo gera dois bits por iteração; há n/2 iterações recursão de profundidade 2 Laço paralelo pode gerar quantos bits forem necessários, aumentando a profundidade da recursão ou, eventualmente, eliminando-a 25

26 26 Métricas de Desempenho

27 Speed-up Mede o ganho (no tempo de execução) em utilizar p processadores S(p) = T(1)/T(p) Teoricamente, S(p) p Na prática, características do computador alteram tais limites 27

28 Eficiência Mede a eficiência em utilizar p processadores E(p) = T(1) / (p*t(p)) E(p) = S(p) / p 28

29 Lei de Amdahl - Sumário Se a fração seqüencial do tempo de execução de um programa é f, o ganho (speed-up) máximo é S(p) = 1/f para qualquer número de processadores. 29 Gene M. Amdahl, Validity of the single processor approach to achieving large scale computing capabilities, AFIPS spring joint computer conference, 1967

30 30 Lei de Amdahl em Detalhe

31 31 Lei de Amdahl - Demonstração

32 Lei de Amdahl - Implicações Speed-up máximo em função da fração do tempo de execução sequencial mantida sequencial na execução paralela ,2 Speed-up ,9 9, Processadores f=0 f=0,1% f=1% f=10% 32

33 Formas de Speed-up face a Amdahl Tipicamente, a fração do tempo sequencial diminui com o tamanho do problema Técnica comum quando o speed-up não é bom: aumentar artificialmente o tamanho do problema (1) Mas há casos em que o aumento é necessário para observar efeitos invisíveis em problemas menores (2) Strong speed-up Mantém o tamanho do problema e escala o número de processadores Weak speed-up Escala o tamanho do problema com o número de processadores (1) D. H. Bailey: Twelve Ways to Fool the Masses When Giving Performance Results on Parallel Computers, Supercomputing Review, Aug (2) J. L. Gustafson: Reevaluating Amdahl s Law, CACM May 1988

34 Porque Paralelismo? Há Motivos Perenes 34

35 Desde que existem computadores Aplicações (usuários) requerem computadores cada vez mais potentes Velocidade e poder computacional de CPUs crescem a velocidade assombrosa Base: Lei de Moore (veremos em seguida) Requisitos das aplicações (usuários) crescem mais rapidamente do que a velocidade das CPUs Acoplar múltiplas CPUs é uma forma viável de reduzir a distância entre as necessidades dos usuários e a velocidade de uma única CPU 35

36 Requisitos dos Usuários Usuários estão insatisfeitos com os modelos matemáticos utilizados nas simulações computacionais (não representam aspectos críticos da realidade) Modelos matemáticos mais precisos requerem computadores ordens de magnitude mais velozes que os atualmente disponíveis (verdade desde sempre ) Exemplo: Modelo de Circulação Global 36

37 Ex: Modelo Global do CPTEC Resolução Horizontal (km) Flops por Dia de Previsão (normalizado) Dias de Previsão por Dia de CPU (1 CPU NEC SX6) Complexidade O(1/resolução 4 )

38 Forecast Days per Day as function of Model Resolution (km) and Processor Count (ECMWF) F o recast D ays (BOM) (UK) 40 (ECMWF) 26 (ECMWF) 26 (ECMWF) 40 (ECMWF) 26 (ECMWF) 26 (ECMWF) (ECMWF) 10 (ES) 10 (ES) 10 (ES) 10 (ES) 10 (ES) Processors Velocidade mínima para produção 10 (ES)

39 39 Aumentando a Resolução

40 Caso geral: Top500 Lista dos 500 computadores mais rápidos do mundo métrica: velocidade efetiva na solução de sistema denso de equações lineares em dupla precisão utilizando Linpack (High Performance Linpack) de tamanho escolhido pelo usuário classificação: velocidade efetiva medida em flop/s (floating point operations per second) submissão: usuários interessados executam HPL e enviam resultados (logo, pode haver máquinas potentes fora da lista) site: importância: Rara base histórica de dados (duas listas por ano, mantidas desde 1993) início: planilha de Linpack compilada por Jack Dongarra desde 1980; vide Ser número 1 no Top500 é objeto de desejo ( priceless ) HPL é um dos programas mais extensamente otimizados, por fabricantes, da história de computação Dificilmente um programa obterá velocidade efetiva maior que a do HPL na mesma máquina 40

41 Top 500 June 2009 Máquina - Local Cores (CPUs) V Pico (TFlop) V Linpack (TFlop) Fabricante - Processador RoadRunner Los Alamos, USA IBM Blade: PowerPC + Cell Jaguar Oak Ridge, USA Cray XT5: Opteron Jugene Juelich, Germany IBM Blue Gene/P: PowerPC Pleiades NASA Ames, USA SGi Altix (Xeon) BlueGene/L Lawrence Livermore, USA IBM Blue Gene/L: PowerPC 41

42 Top500: Visão Histórica Soma #1 #500 LapTop 42

43 Projeção de Desempenho Cray 2 1 GFlop/s O(1) Thread ASCI Red 1 TFlop/s O(10 3 ) Threads Roadrunner 1 PFlop/s O(10 6 ) Threads?? 1 EFlop/s O(10 9 ) Threads Jack Dongarra, Invited Talk, SIAM 2008 Annual Meeting 43

44 Caso geral: Gordon Bell Award Aplicação completa mais rápida do mundo no ano premio dado anualmente no Supercomputing nos últimos anos, também é necessário ter conteúdo científico alto esforço de otimização, mas menor que HPL; por isso, mais próxima do usuário comum submetida por usuários 44

45 HPL x Gordon Bell , ,00 Máquina de propósito específico 100,00 TFlop/s 10,00 Gordon Bell (precisão mista) supera HPL (precisão dupla) 1, ,10 0,01 Ano Gordon Bell HPL 45

46 Sumário: Porque Paralelismo? Usuários continuarão a demandar maior potência computacional, alcançável por paralelismo até quando paralelismo resolve? I know how four ox can push a wagon, but not 1024 chickens Entretanto, há motivos mais recentes para usar paralelismo motivos alheios à vontade dos usuários e dos fabricantes 46

47 Porque Paralelismo? Há Motivos Recentes 47

48 Lei de Moore Enunciado: A quantidade de componentes por circuito integrado dobra a cada ano (1965)... a cada dois anos (1975)... a cada 18 meses (atual) 48

49 Lei de Moore Primeira forma (1965): Quantidade de componentes por circuito integrado que minimiza o custo por componente dobra a cada ano Observação (não lei ) no trabalho original Extrapolação baseada em 5 pontos Moore sugeriu reconsiderar após 10 anos Segunda forma (1975): Quantidade de componentes por circuito integrado dobra a cada dois anos Moore nunca disse 18 meses (intel aponta 18 meses) Profecia auto realizável Gordon Moore: Cramming more components onto integrated 49 circuits, Eletronics v.38, N.8, 1965;

50 Verificação da Lei de Moore Dobra a cada 24 meses Dobra a cada 18 meses 50

51 Força Motriz da Lei de Moore Tecnologia de Litografia constantemente reduz tamanho de componentes em CI G. Moore, palestra convidada ISSCC

52 Até recentemente Canalizar aumento no número de componentes para aumentar a freqüência de operação gera CPUs progressivamente mais rápidas G. Moore, palestra convidada ISSCC

53 Mas o ganho anual em velocidade de um processador é bem menor que o ganho anual no número de componentes, pois há barreiras 53

54 Mas há barreiras: Memory Wall A velocidade de acesso à memória escala mais lentamente que a velocidade da CPU, ao longo dos anos Acesso à memória torna-se o gargalo da eficiência Largura de banda (bandwidth) vem sendo acomodada (economia) Latência (latency) é a questão crucial J. L. Gaudiot, palestra convidada SBAC

55 Mas há barreiras: Power Wall Dissipação atingiu níveis intoleráveis Figura: Fred Pollack, palestra convidada MICRO S. Borkar, Design Challenges of Technology Scaling, IEEE Micro, July 1999

56 Dissipação de Potência Pentium e Dissipador, 2005 Pentium e Dissipador,

57 Dissipação de Potência impede novo aumento de frequência 57

58 Em síntese Ida à memória limita aumento de velocidade de programas, pois freqüência da memória não escala proporcionalmente à frequência da CPU e a latência menos ainda (memory wall) Dissipação térmica atinge nível absurdo (power wall) E há outras barreiras... 58

59 Paralelismo: Novos Motivos Como usar maior número de componentes para gerar máquinas mais rápidas? Aumentar a freqüência não é mais possível. Tendência clara: Múltiplas CPUs de menor freqüência no mesmo chip 59

60 60 Paralelismo: Novos Motivos

61 Por enquanto, poucas CPUs por chip. Forte tendência de muitas PUs no mesmo chip, idênticas ou não, com uma ou múltiplas threads 61 Fonte: INTEL e AMD

62 Comparando ganhos anuais Métrica Lei de Moore (dobra a cada 18 meses) HPL (mínimos quadráticos) Gordon Bell (mínimos quadráticos) Ganho Anual 1,58 1,89 1,86 HPL melhor que Moore devido a paralelismo Transformar ganho de Moore em ganho de velocidade requer paralelismo 62

63 Porque Paralelismo: Conclusão Paralelismo (uso simultâneo de múltiplas CPUs em um programa) é uma tecnologia disponível que reduz a distância entre as necessidades dos usuários e a velocidade de uma única CPU Mas também é a forma viável de converter o aumento no número de componentes da Lei de Moore em aumento da velocidade de processamento 63

64 Sumário: Tópicos Abordados Definição de Paralelismo Níveis de Paralelismo Recursões e sua resolução Métricas de Desempenho Paralelo Lei de Amdahl Necessidade e Utilidade de Paralelismo Lei de Moore Memory Wall, Power Wall 64

Palestra - Depto. de Informática - UFMA

Palestra - Depto. de Informática - UFMA Palestra - Depto. de Informática - UFMA 1 a 5 de setembro de 2003 1/27 Estado de Arte da Computação Paralela de Alto Desempenho Siang Wun Song Universidade de São Paulo Evolução da Computação Os primeiros

Leia mais

Evolução da Computação de Alto Desempenho sob a Ótica da Lis. ou (Se um processador já é rápido, imaginem um sistema com processadores :-)

Evolução da Computação de Alto Desempenho sob a Ótica da Lis. ou (Se um processador já é rápido, imaginem um sistema com processadores :-) Evolução da Computação de Alto Desempenho sob a Ótica da Lista TOP500 ou (Se um processador já é rápido, imaginem um sistema com 10.649.600 processadores :-) Siang Wun Song IME-USP Evolução

Leia mais

Avaliação de Desempenho. September 28, 2010

Avaliação de Desempenho. September 28, 2010 September 28, 2010 O que é desempenho? em primeiro lugar, uma ótima tradução para performance... :-) tempo de execução (o centro das atenções!) outras: projeto, ciclo de vida, manutenção,... mesmo outras

Leia mais

Evolução da Computação de Alto Desempenho sob a Ótica da Lis. ou (Se um processador já é rápido, imaginem um sistema com processadores :-)

Evolução da Computação de Alto Desempenho sob a Ótica da Lis. ou (Se um processador já é rápido, imaginem um sistema com processadores :-) Evolução da Computação de Alto Desempenho sob a Ótica da Lista TOP500 ou (Se um processador já é rápido, imaginem um sistema com 10.649.600 processadores :-) Siang Wun Song IME-USP Computação

Leia mais

Universidade Federal do Rio de Janeiro Pós-Graduação em Informática. Introdução. Gabriel P. Silva. Gabriel P. Silva

Universidade Federal do Rio de Janeiro Pós-Graduação em Informática. Introdução. Gabriel P. Silva. Gabriel P. Silva Universidade Federal do Rio de Janeiro Pós-Graduação em Informática Microarquiteturas de Alto Desempenho Introdução Introdução Bibliografia: Computer Architecture: A Quantitative Approach. John L. Hennesy,

Leia mais

Avaliação de Desempenho

Avaliação de Desempenho September 25, 2012 O que é desempenho? em primeiro lugar, uma ótima tradução para performance... :-) tempo de execução (o centro das atenções!) outras: projeto, ciclo de vida, manutenção,... mesmo outras

Leia mais

The future is parallel but it may not be easy

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

Leia mais

Computação de Alto Desempenho Clusters de PCs

Computação de Alto Desempenho Clusters de PCs RSS-10/03 p.1/31 Computação de Alto Desempenho Clusters de PCs Renato Silva LNCC - MCT Outubro de 2003 RSS-10/03 p.2/31 Renato S. Silva sala: 2a-23 - ramal: 6148 - e-mail: rssr@lncc.br Material: Aulas:

Leia mais

O estado de arte: a evolução de computação de alto desempenho

O estado de arte: a evolução de computação de alto desempenho O estado de arte: a evolução de computação de alto desempenho 2009 Evolução da Computação O Mark I tinha ciclo de 0,3 segundos; o ENIAC 200 micro-segundos Processador hoje: vários GHz - menos de um nanosegundo

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama

SSC PROGRAMAÇÃO CONCORRENTE. Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama SSC- 0742 PROGRAMAÇÃO CONCORRENTE Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados às

Leia mais

Computadores e Programação (DCC/UFRJ)

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

Leia mais

Carlos Eduardo Batista Centro de Informática - UFPB

Carlos Eduardo Batista Centro de Informática - UFPB Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação Arquitetura de computadores modernos Desafios da programação concorrente Definição de concorrência Correr junto Disputa por

Leia mais

PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register

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

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 02 Revisão de Arquiteturas Paralelas Parte 1 Prof. Jó Ueyama

SSC PROGRAMAÇÃO CONCORRENTE. Aula 02 Revisão de Arquiteturas Paralelas Parte 1 Prof. Jó Ueyama SSC- 0742 PROGRAMAÇÃO CONCORRENTE Aula 02 Revisão de Arquiteturas Paralelas Parte 1 Prof. Jó Ueyama Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados às

Leia mais

TOP Arquitetura dos supercomputadores

TOP Arquitetura dos supercomputadores TOP 500 - Arquitetura dos supercomputadores Steven Koiti Tsukamoto Dezembro de 2010 Objetivos Os supercomputadores Top 500 A arquitetura Supercomputadores São máquinas de grande porte, capazes de processar

Leia mais

Máquinas mais rápidas do mundo

Máquinas mais rápidas do mundo Máquinas mais rápidas do mundo Jorge Melegati Instituto de Matemática e Estatística Introdução à Computação Paralela e Distribuída melegati@ime.usp.br Junho de 2015 Jorge Melegati (IME) Máquinas mais rápidas

Leia mais

Como programar um computador com processadores? ou: Oportunidades e Desafios da Computação Paralela

Como programar um computador com processadores? ou: Oportunidades e Desafios da Computação Paralela Palestra para alunos de graduação da USP 1 de abril de 2005 1/26 Como programar um computador com 32.768 processadores? ou: Oportunidades e Desafios da Computação Paralela Siang Wun Song Universidade de

Leia mais

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído Arquitetura de Computadores Sistemas computacionais para processamento paralelo e distribuído Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO Processamento

Leia mais

Aula Fev-07 Arquitectura de Computadores 2006/07

Aula Fev-07 Arquitectura de Computadores 2006/07 Apresentação Aula 1 26-Fev-07 Arquitectura de Computadores 2006/07 1 - Aula 1 Estrutura desta aula Apresentação da cadeira Objectivos Bibliografia Conhecimentos prévios Estrutura das aulas Avaliação 26-Fev-07

Leia mais

Paralelização de Algoritmos de CFD em Clusters Multi-Core MC7. Escola de Verão Arquiteturas Multi-Core

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:

Leia mais

Broadband Engine Cell Processor. Arquitetura e Organização de Processadores (CPM237) Rodrigo Bittencourt Motta

Broadband Engine Cell Processor. Arquitetura e Organização de Processadores (CPM237) Rodrigo Bittencourt Motta Broadband Engine Cell Processor Arquitetura e Organização de Processadores (CPM237) Rodrigo Bittencourt Motta rbmotta@inf.ufrgs.br Junho/06 Plano de Apresentação Introdução Visão Geral Organização Interna

Leia mais

SSC0112 Organização de Computadores Digitais I - Turma 2

SSC0112 Organização de Computadores Digitais I - Turma 2 SSC0112 Organização de Computadores Digitais I - Turma 2 1ª Aula Apresentação e Introdução da disciplina Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Apresentada pelo Prof. Paulo Sergio Lopes de Souza

Leia mais

Introdução. Edna Barros

Introdução. Edna Barros Arquitetura de Computadores Introdução Edna Barros Objetivos do curso Entender a operação dos microprocessadores modernos à nível arquitetural. Entender a operação dos subsistemas de memória e de E/S e

Leia mais

OpenMP: Variáveis de Ambiente

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

Leia mais

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação

Leia mais

ARQUITETURA DE COMPUTADORES

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

Leia mais

Computação de alto desempenho

Computação de alto desempenho Computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Programa 1. Introdução 2. Processadores para CAD 3. Sistemas de memória 4. Programação paralela

Leia mais

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações

PIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações Arquitetura de Computadores Introdução ao Pipeline PIPELINE Linha de Montagem A produção é dividida em várias etapas Produtos em etapas distintas podem ser desenvolvidos separadamente Pode ser Aplicado

Leia mais

Microarquiteturas Avançadas

Microarquiteturas Avançadas Universidade Federal do Rio de Janeiro Arquitetura de Computadores I Microarquiteturas Avançadas Gabriel P. Silva Introdução As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com

Leia mais

Quando múltiplos núcleos não trazem melhorias

Quando múltiplos núcleos não trazem melhorias Instituto de Matemática e Estatística - USP Bacharelado em Ciências da Computação MAC0412 - Organização de Computação Quando múltiplos núcleos não trazem melhorias Autor: Ricardo Juliano Mesquita Silva

Leia mais

Computação de alto desempenho

Computação de alto desempenho Computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Programa 1. Introdução 2. Processadores para CAD 3. Sistemas de memória 4. Paralelismo usando bibliotecas

Leia mais

Arquiteturas paralelas Parte 1

Arquiteturas paralelas Parte 1 Arquiteturas paralelas Parte 1 Processamento Paralelo Prof. Oberlan Romão Departamento de Computação e Eletrônica DCEL Centro Universitário Norte do Espírito Santo CEUNES Universidade Federal do Espírito

Leia mais

É uma forma eficiente do processamento da informação com ênfase na exploração de eventos concorrentes no processo computacional.

É uma forma eficiente do processamento da informação com ênfase na exploração de eventos concorrentes no processo computacional. Introdução ao Processamento Paralelo Prof. Edson Pedro Ferlin Processamento Paralelo É uma forma eficiente do processamento da informação com ênfase na exploração de eventos concorrentes no processo computacional.

Leia mais

Processadores para computação de alto desempenho

Processadores para computação de alto desempenho Processadores para computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Introdução Nesta aula apresentaremos características de processadores e como

Leia mais

Arquiteturas de Computadores. Fundamentos de Projetos de Computadores

Arquiteturas de Computadores. Fundamentos de Projetos de Computadores Arquiteturas de Computadores Fundamentos de Projetos de Computadores Tecnologia Melhorias no desempenho: Melhorias na tecnologia dos semicondutores Menor tamanho, velocidade do relógio Melhorias nas arquiteturas

Leia mais

Arquiteturas Paralelas

Arquiteturas Paralelas ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Arquiteturas Paralelas Medidas de desempenho Alexandre Amory Edson Moreno Índice 2 1. Introdução 2. Medidas de Desempenho Introdução 3 Aumento de desempenho dos

Leia mais

Organização de Sistemas de Computadores

Organização de Sistemas de Computadores Organização de Sistemas de Computadores Cap. 2 (Tanenbaum), Cap. 3 (Weber) 2.1 Processadores 1 CPU UC = buscar instruções na memória principal e determinar o seu tipo ULA = adição e AND Registradores =

Leia mais

Paradigmas de Computação

Paradigmas de Computação UCE- Computação Paralela e Distribuída Paradigmas de Computação João Luís Ferreira Sobral www.di.uminho.pt/~jls jls@... http://alba.di.uminho.pt/... 1 Paradigmas de Computação paralela Resultados da Aprendizagem

Leia mais

ARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE

ARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE ARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE Objectivos da Disciplina Príncipios gerais da arquitectura de computadores Estrutura e comportamento de um computador Programação em assembly Processadores

Leia mais

Arquiteturas para Alto Desempenho CES-25

Arquiteturas para Alto Desempenho CES-25 Arquiteturas para Alto Desempenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Objetivos Gerais da Matéria Aprofundar o conhecimento interno sobre o funcionamento interno

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Thaís Vasconcelos Batista UFRN DIMAp http://www.dimap.ufrn.br/~thais thais@ufrnet.br Programa do Curso INTRODUÇÃO Conceitos Básicos Sistemas em Rede X Sistemas Distribuídos Necessidade

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA

PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA DEPARTAMENTO: Fundamentos da Computação CURSO: Ciência da Computação DISCIPLINA: Organização e Arquitetura de Computadores

Leia mais

Linguagem de Programação II

Linguagem de Programação II Linguagem de Programação II Carlos Eduardo Ba6sta Centro de Informá6ca - UFPB bidu@ci.ufpb.br Mo6vação Adaptar a estrutura lógica de um problema (Ex.: Servidores Web). Lidar com disposi6vos independentes

Leia mais

Processadores para computação de alto desempenho

Processadores para computação de alto desempenho Processadores para computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Introdução Nesta aula apresentaremos características de processadores e como

Leia mais

COMPUTAÇÃO PARALELA COM ACELERADORES GPGPU 1. Emilio Hoffmann De Oliveira 2, Edson Luiz Padoin 3.

COMPUTAÇÃO PARALELA COM ACELERADORES GPGPU 1. Emilio Hoffmann De Oliveira 2, Edson Luiz Padoin 3. COMPUTAÇÃO PARALELA COM ACELERADORES GPGPU 1 Emilio Hoffmann De Oliveira 2, Edson Luiz Padoin 3. 1 Trabalho de Conclusão de Curso 2 Aluno do Curso de Ciência da Computação - emiliohoffmann@hotmail.com

Leia mais

Organização e comunicação em plataformas paralelas

Organização e comunicação em plataformas paralelas Organização e comunicação em plataformas paralelas Processamento Paralelo Prof. Oberlan Romão Departamento de Computação e Eletrônica DCEL Centro Universitário Norte do Espírito Santo CEUNES Universidade

Leia mais

CIC Organização e Arquitetura de Computadores. Prof. Ricardo Jacobi Notas de Aula: Prof. Gerson Henrique Pfitscher

CIC Organização e Arquitetura de Computadores. Prof. Ricardo Jacobi Notas de Aula: Prof. Gerson Henrique Pfitscher CIC - 116394 Organização e Arquitetura de Computadores Prof. Ricardo Jacobi Notas de Aula: Prof. Gerson Henrique Pfitscher Entender o funcionamento interno dos computadores não é uma tarefa simples para

Leia mais

Multiprocessamento. 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 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 mais

Desafios do Mapeamento de Processos em Arquiteturas Many-Core

Desafios do Mapeamento de Processos em Arquiteturas Many-Core Desafios do Mapeamento de Processos em Arquiteturas Many-Core Professor: Philippe O. A. Navaux Instituto de Informática - UFRGS Escola Regional de Alto Desempenho São Paulo 1 Indíce Evolução dos Processadores

Leia mais

Intel Xeon Phi. Abilio. Funcionamento. Modelo de. Abilio. Linguagens Suportadas. Exemplos de Produtos no Mercado. 13 de agosto de / 22

Intel Xeon Phi. Abilio. Funcionamento. Modelo de. Abilio. Linguagens Suportadas. Exemplos de Produtos no Mercado. 13 de agosto de / 22 13 de agosto de 2013 1 / 22 Sumário 1 2 3 4 5 6 2 / 22 Baseado na tecnologia Intel Many Integrated Core Co-processador ou um Supercomputador em uma placa 61 cores 8 GB de memória DDR5 Apresenta-se ao sistema

Leia mais

Parallel Computing Paradigms

Parallel Computing Paradigms João Luís Ferreira Sobral www.di.uminho.pt/~jls jls@... Web: Elearning 1 At the end of the course, students should be able to: Design and optimise parallel applications that can efficiently run on a wide

Leia mais

Paralelização do Método de Jacobi em Memória Compartilhada 1

Paralelização do Método de Jacobi em Memória Compartilhada 1 Paralelização do Método de Jacobi em Memória Compartilhada 1 Claudio Schepke cschepke@inf.ufrgs.br 1 PPGC - Instituto de Informática - UFRGS Introdução ao Processamento Paralelo e Distribuído Professor

Leia mais

speedup aprimorado aprimorado Fração aprimorada speedup aprimorado Fração aprimorada speedup aprimorado Tempo original Fração aprimorada aprimorado

speedup aprimorado aprimorado Fração aprimorada speedup aprimorado Fração aprimorada speedup aprimorado Tempo original Fração aprimorada aprimorado Multiprocessadores - A evolução tecnológica dos processadores iria diminuir drasticamente. 2- O caminho para o aumento de desempenho é de unir mais de um processador para realizar a mesma tarefa em menos

Leia mais

PCS 2039 Modelagem e Simulação de Sistemas Computacionais

PCS 2039 Modelagem e Simulação de Sistemas Computacionais UNIVERSIDADE DE SÃO PAULO ESCOLA POLITÉCNICA Departamento de Engenharia de Computação e Sistemas Digitais PCS 2039 Modelagem e Simulação de Sistemas Computacionais Graduação em Engenharia de Computação

Leia mais

Sistemas Digitais INE 5406

Sistemas Digitais INE 5406 Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação Sistemas Digitais INE 5406 Aula 10-P Refinamento das especificações

Leia mais

Evolução da Computação de Alto Desempenho na Ótica da Lista. ou (Se um processador já é rápido, imaginem um sistema com 131.072 processadores :-)

Evolução da Computação de Alto Desempenho na Ótica da Lista. ou (Se um processador já é rápido, imaginem um sistema com 131.072 processadores :-) Evolução da Computação de Alto Desempenho na Ótica da Lista TOP500 ou (Se um processador já é rápido, imaginem um sistema com 131.072 processadores :-) MAC 412- Organizãção de Computadores - Siang W. Song

Leia mais

Desempenho. Sistemas de Computação

Desempenho. Sistemas de Computação Desempenho Definição Medidas de desempenho utilizadas Tempo de resposta ou tempo de execução: tempo decorrido entre o início da execução de um programa e o seu final Quantidade de trabalho realizada em

Leia mais

Bibliografia em processamento paralelo

Bibliografia em processamento paralelo Bibliografia em processamento paralelo Andrews, Concurrent Programming: Principles and Practice Foster, Designing and Building Parallel Programs Wolfe, High Performance Compilers for Parallel Computing

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIAS DEPARTAMENTO DE INFORMÁTICA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIAS DEPARTAMENTO DE INFORMÁTICA UNIVERSIDADE ESTADUAL DE PONTA GROSSA SETOR DE CIÊNCIAS AGRÁRIAS E DE TECNOLOGIAS DEPARTAMENTO DE INFORMÁTICA DAVID PATRICK ZAMPIER LUIS THIAGO PADILHA ARQUITETURA DE SUPERCOMPUTADORES PONTA GROSSA 2017

Leia mais

Computação paralela. Nielsen Castelo Damasceno

Computação paralela. Nielsen Castelo Damasceno Computação paralela Nielsen Castelo Damasceno Introdução. Motivação. Como é utilizado. Fundamentos. Programação paralela. Open MP. MPI GPU (Cuda). Aplicação prática. Considerações Finais Referências. Agenda

Leia mais

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES

DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES DESENVOLVIMENTO DE UM ALGORITMO PARALELO PARA APLICAÇÃO EM CLUSTER DE COMPUTADORES João Ricardo Kohler Abramoski (PAIC/FUNDAÇÃO ARAUCÁRIA), Sandra Mara Guse Scós Venske (Orientadora), e-mail: ssvenske@unicentro.br

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Instituto de Informática UFG 1o. Semestre / 2006 Adaptado do material do prof. Fábio Moreira Costa Programa e Introdução Assunto do curso

Leia mais

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3 Algoritmos e Estruturas de Dados I Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3 História da computação ENIAC (1946-1955) 5000 op/seg 30 toneladas; 18 mil válvulas; 140

Leia mais

ARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio

ARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio ARQUITETURA DE COMPUTADORES Organização de Sistemas Computacionais Prof.: Agostinho S. Riofrio Agenda 1. Unidade Central de Processamento 2. Organização da CPU 3. Interpretador 4. RISC x CISC 5. Principios

Leia mais

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 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

Leia mais

Atol Fortin, Bruno da Hora, Lucas Piva, Marcela Ortega, Natan Lima, Pedro Raphael, Ricardo Sider, Rogério Papetti. 28 de novembro de 2008

Atol Fortin, Bruno da Hora, Lucas Piva, Marcela Ortega, Natan Lima, Pedro Raphael, Ricardo Sider, Rogério Papetti. 28 de novembro de 2008 Reinventando a Computação Atol Fortin, Bruno da Hora, Lucas Piva, Marcela Ortega, Natan Lima, Pedro Raphael, Ricardo Sider, Rogério Papetti Universidade de São Paulo 28 de novembro de 2008 Introdução Dr.

Leia mais

Paralelismo em Computadores com Tecnologia Multicore

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

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella

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

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação POR QUE APRENDER CONCEITOS

Leia mais

Informática Aplicada. Introdução

Informática Aplicada. Introdução Informática Aplicada Introdução Breve histórico da computação moderna Principais eventos 1000ac - Ábaco 1614 - Logaritmos (John Napier) 1623 - Sistema Binário (Francis Bacon) 1642 - Máquina de Turing 1946

Leia mais

ENIAC Primeiro computador de Propósito Geral. William Stallings Computer Organization and Architecture 6 th Edition (2003)

ENIAC Primeiro computador de Propósito Geral. William Stallings Computer Organization and Architecture 6 th Edition (2003) William Stallings Computer Organization and Architecture 6 th Edition (2003) ENIAC Primeiro computador de Propósito Geral Electronic Numerical Integrator And Computer Chapter 2 Computer Evolution and Performance

Leia mais

Arquiteturas de Computadores. Programa de Pós-Graduação em Ciência da Computação. Plano da aula

Arquiteturas de Computadores. Programa de Pós-Graduação em Ciência da Computação. Plano da aula Arquiteturas de Computadores Programa de Pós-Graduação em Ciência da Computação Norian Marranghello Março/Junho de 2006 Plano da aula Informações gerais Provas e testes Programa da disciplina Informações

Leia mais

Arquiteturas de Sistemas de Processamento Paralelo. Introdução

Arquiteturas de Sistemas de Processamento Paralelo. Introdução Universidade Federal do Rio de Janeiro Pós-Graduação em Informática DCC/IM - NCE/UFRJ Arquiteturas de Sistemas de Processamento Paralelo Introdução Bibliografia Advanced Computer Architecture Dezsõ Sima,

Leia mais

Introdução aos Sistemas Distribuídos

Introdução aos Sistemas Distribuídos Introdução aos Sistemas Distribuídos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Ementa; Bibliografia Calendário Site Introdução Características http://sites.google.com/sitew/leonardobcampos

Leia mais

Arquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização

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

Leia mais

Decisões arquiteturais importantes. Projeto arquitetural x projeto de algoritmos. Decomposição de dados. Decomposição de dados

Decisões arquiteturais importantes. Projeto arquitetural x projeto de algoritmos. Decomposição de dados. Decomposição de dados Processamento Paralelo Técnicas de Decomposição de Problemas Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Decisões arquiteturais importantes 1. Divisão de responsabilidades entre partes (componentes)

Leia mais

Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.)

Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.) Arquitecturas Avançadas de Computadores MEEC (2008/09 2º Sem.) Sistemas de Armazenamento Prof. Nuno Cavaco Gomes Horta Universidade Técnica de Lisboa / Instituto Superior Técnico Computing Revolution (1960-1980)

Leia mais

SSC304 Introdução à Programação Para Engenharias

SSC304 Introdução à Programação Para Engenharias Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Estrutura de um Computador GE4 Bio GE4Bio Grupo de Estudos

Leia mais

Microprocessadores II - ELE 1084

Microprocessadores II - ELE 1084 Microprocessadores II - ELE 1084 CAPÍTULO III PROCESSADORES P5 3.1 Gerações de Processadores 3.1 Gerações de Processadores Quinta Geração (P5) Pentium (586) 32 bits; Instruções MMX; Concorrente K5 (AMD).

Leia mais

Arquitectura de Computadores II. Introdução

Arquitectura de Computadores II. Introdução Arquitectura de Computadores II LESI - 3º Ano Introdução João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Janeiro 2002 Objectivos da disciplina e relação com outras disciplinas

Leia mais

Uma Arquitetura Reconfigurável de Granularidade Grossa Para Multicore

Uma Arquitetura Reconfigurável de Granularidade Grossa Para Multicore Uma Arquitetura Reconfigurável de Granularidade Grossa Para Multicore Francisco Carlos Silva Junior 1, Ivan Saraiva Silva 1 1 Departamento de Computação Universidade Federal do Piauí (UFPI) Teresina PI

Leia mais

Processadores para computação de alto desempenho

Processadores para computação de alto desempenho Processadores para computação de alto desempenho Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Introdução Nesta aula apresentaremos características de processadores e como

Leia mais

SSC-0742 PROGRAMAÇÃO CONCORRENTE. Aula 01 Introdução à Programação Concorrente Prof. Jó Ueyama Créditos: Prof. Júlio C. Estrella

SSC-0742 PROGRAMAÇÃO CONCORRENTE. Aula 01 Introdução à Programação Concorrente Prof. Jó Ueyama Créditos: Prof. Júlio C. Estrella SSC-0742 PROGRAMAÇÃO CONCORRENTE Aula 01 Introdução à Programação Concorrente Prof. Jó Ueyama Créditos: Prof. Júlio C. Estrella Créditos Os slides integrantes deste material foram construídos a partr dos

Leia mais

Introdução à Computação: Sistemas de Computação

Introdução à Computação: Sistemas de Computação Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Infraestrutura de Hardware Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem

Leia mais

5 Unidades de Processamento Gráfico GPUs

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

Leia mais

PLANO DE ENSINO. Disciplina

PLANO DE ENSINO. Disciplina PLANO DE ENSINO PERÍODO LETIVO/ANO: 2007 ANO DO CURSO: 3 O. ano Curso:Ciência da Computação Modalidade:Bacharelado Centro: Engenharias e Ciências Exatas Campus: Foz do Iguaçu Turno:Integral Código Disciplina

Leia mais

Aula 1: Apresentação do Curso

Aula 1: Apresentação do Curso Aula 1: Apresentação do Curso Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Fernanda Passos (UFF) Apresentação do Curso FAC 1 / 30 Estrutura da Disciplina

Leia mais

Organização de Computadores I

Organização de Computadores I Organização de Computadores I Aula 2 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte2.pdf Organização de Computadores I Aula 2 1/29 Tópicos de Computação. de um Sistema de Computação..

Leia mais

O que é Arquitetura de Computadores?

O que é Arquitetura de Computadores? O que é Arquitetura de Computadores? Coordenação de um conjunto de níveis de abstração de um computador sobre um grande conjunto de forças de mudança Arquitetura de Computadores = Arquitetura de Conjuntos

Leia mais

Memory-level and Thread-level Parallelism Aware GPU Architecture Performance Analytical Model

Memory-level and Thread-level Parallelism Aware GPU Architecture Performance Analytical Model Memory-level and Thread-level Parallelism Aware GPU Architecture Performance Analytical Model Sunpyo Hong Hyesoon Kim ECE School of Computer Science Georgia Institute of Technology April 6, 2011 Visão

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE

SSC PROGRAMAÇÃO CONCORRENTE SSC- 0143 PROGRAMAÇÃO CONCORRENTE Aula 08 Avaliação de Desempenho de Programas Paralelos Prof. Jó Ueyama Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados

Leia mais

Arquitetura de Computadores. Processamento Paralelo

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

Leia mais

MONTAGEM E MANUTENÇÃO DE COMPUTADORES

MONTAGEM E MANUTENÇÃO DE COMPUTADORES Álvaro Elias Flôres alvaro.flores@sc.senai.br MONTAGEM E MANUTENÇÃO DE COMPUTADORES Introdução A atividade de um computador pode ser definida por um modelo simples: Introdução Na etapa de processamento

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Universidade Federal de Campina Grande Centro de Engenharia Elétrica e Informática Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de

Leia mais

Hardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização

Hardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização Hardware: Componentes Básicos Arquitetura dos Computadores Dispositivos de Entrada Processamento Dispositivos de Saída Armazenamento Marco Antonio Montebello Júnior marco.antonio@aes.edu.br Sistema de

Leia mais

Sistemas Operacionais. Conceitos de Hardware

Sistemas Operacionais. Conceitos de Hardware Sistemas Operacionais Conceitos de Hardware Sumário 1. Introdução 7. RISC e CISC 2. Processador 1. Operações de Processamento 2. Unidade de Controle 3. Ciclos de uma Instrução 3. Memória 1. Memória Principal

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Informações Gerais Objetivos principais: Homogeneizar Aprofundar Flexibilidade x rigidez Informações

Leia mais