Desempenho de Multicores

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

Download "Desempenho de Multicores"

Transcrição

1 Everyone knows Amdahl s Law but quickly forgets it Thomas Puzak, IBM, 2007 UFPR-CI,CI desempenho de multicores Desempenho de Multicores Proposta: Avaliar modelo simples de desempenho, baseado na Lei de Amdahl sob a nova Lei de Moore: dobrar paralelismo a cada dois anos modelo simples indica tendências e carências Conclusões: ) cores individuais necessitam bom desempenho contraintuitivo 2) sistemas assimétricos ou + cores maiores 3) sistemas dinâmicos alocação dinâmica de HW UFPR-CI,CI desempenho de multicores 2 Lei de Amdahl (i) Premissa: modelo simples de software argumento de limite fração f do tempo de execução é perfeitamente paralelizável sem custo adicional para (i) escalonamento (ii) comunicação (iii) sincronização fração f é completamente serial tempo de execução em core: ( f)/ + f/ = tempo de execução em n cores: ( f)/ + f/n UFPR-CI,CI desempenho de multicores 3

2 Lei de Amdahl (ii) premissas: G é cota superior fração paralela f infinitamente paralelizável, sem custos adicionais fração serial ( f) é totalmente sequencial corolários: f pequeno não compensa paralelizar n, G ( f) G(f,n) = T original T melhorado = 6 2 f=0999 f=099 f=0975 f=09 f=05 f + f n 2 6 # cores UFPR-CI,CI desempenho de multicores 39 6 PP é eficaz quando: speedup > costup speedup(p) = perf(p) perf() = /time(p) /time() = time() time(p) Ganho linear quando speedup(p) = p costup(p) = cost(p) cost() Processamento Paralelo é eficaz [maior produção] sempre que speedup(p) > costup(p) Wood & Hill, Cost-Effective Parallel Computing, Computer, fev95 UFPR-CI,CI desempenho de multicores 5 Lei de Amdahl na Era dos Multicore Idéia: estender Lei de Amdahl para acomodar três tipos de projetos de multicores (MCs): MC simétrico cores idênticos 6 x BCE x BCEs MC assimétrico cores distintos 2 x BCE + x BCEs MC dinâmico recursos alocados dinamicamente à fração serial Hill & Marty, Amdahl s Law in the Multicore Era, IEEE Computer, jul0 UFPR-CI,CI desempenho de multicores 6

3 Premissas embutidas no modelo modelo ignora caches, barramentos, controladores de memória e supõe que estes custos são constantes para as três organizações CI contém n basic core equivalents (BCEs) # recursos fixo BCE implementa um core básico (baseline) área, potência arquiteto consegue realocar recursos dos BCEs para implementar um core de maior desempenho que o core básico desempenho do core com BCE é ; (perf() = ) arquiteto pode dispender recursos de para obter desempenho sequencial perf(r) se perf(r)> r, րbces/core melhora desempenho seq e // se perf(r)< r, րbces/core melhora desempenho seq mas piora desempenho // modelo supõe que perf(r) = r LGrosh: x BCEs 2x perf UFPR-CI,CI desempenho de multicores 7 Lei de Amdahl MC simétrico (i) Lei de Amdahl diz que ganho cra core com -BCE depende (i) da fração paralela f (ii) do total de recursos em BCEs: n (iii)dos recursos para melhorar o desempenho de cada core r Executa sequencialmente num core com perf(r): ( f)/perf(r) e usa todos n/r cores em paralelo com desempenho perf(r) n/r: f/[perf(r) n/r] G(f,n,r) simétrico = f perf(r) + f r perf(r) n G é uma cota superior perf(r)= r UFPR-CI,CI desempenho de multicores Lei de Amdahl MC simétrico (ii) 6 f=09 cores, sp=67 x 6 cores básicos cores cores 2 cores core gde 2 6 G(f,n,r) simétrico = / [ f perf(r) + f r perf(r) n UFPR-CI,CI desempenho de multicores 9 ]

4 Lei de Amdahl MC simétrico, r = 6 6 cores, sp=67 x f=0999 f=099 f=0975 f=09 f=05 2 cores cores 2 cores core 2 6 f=09: G=67 com cores de 2 BCEs UFPR-CI,CI desempenho de multicores 0 Lei de Amdahl MC simétrico, r = 2 f=0999 f=099 f=0975 f=09 f= f=09: G=27 com 5 cores de 30 BCEs f=0975: G=5 com 365 cores de 7 BCEs f=099: G=0 com 53 cores de 3 BCEs UFPR-CI,CI desempenho de multicores Lei de Amdahl MC simétrico, r = f=0999 f=099 f=0975 f=09 f= f=09: G= 533 com 9 cores de 3 BCEs f=0975: G=025 com 39 cores de 26 BCEs f=099: G=6 com 02 cores de 0 BCEs UFPR-CI,CI desempenho de multicores 2

5 Lei de Amdahl MC simétrico, conclusões ) ganhos significativos somente se f encontrar paralelismo é importante sistema é eficaz sempre que speedup > costup f=0999 f=099 f=0975 f=09 f=05 2) usar BCE/core pode ser ótimo, mesmo se perf(r)= r deve-se melhorar desempenho dos cores, mesmo se for caro 3) em CIs mais densos, cores tendem a ser maiores deve-se projetar cores mais poderosos r ր, maxima UFPR-CI,CI desempenho de multicores 3 Terceira Lei de Moore? Lei de Moore dos Tecnologistas dobra # transistores/ci a cada dois anos não está diminuindo, nem parou Lei de Moore dos Microarquitetos mono-core dobra desempenho por core a cada dois anos diminuiu e/ou parou em 2000 Lei de Moore dos Multicores dobra # cores/ci a cada dois anos + dobra paralelismo nos programas a cada dois anos + ajudado por suporte à paralelismo na arquitetura = dobra desempenho por CI a cada dois anos iniciou em 2005 Software deve produzir ganhos de desempenho ao invés de consumir UFPR-CI,CI desempenho de multicores Lei de Amdahl MC assimétrico (i) Cada CI limitado em n BCEs, para todos cores um core com deixa n r BCES para os demais usa n para n r cores básicos CI com + n r cores para um CI com n = 6 BCEs MC simétrico cores idênticos x BCEs MC assimétrico cores distintos 2 x BCE + x BCEs UFPR-CI,CI desempenho de multicores 5

6 Lei de Amdahl MC assimétrico (ii) Lei de Amdahl diz que ganho cra core com -BCE depende da fração paralela f, dos recursos em BCEs n, dos recursos para melhorar o desempenho de um core com n r cores básicos executam em paralelo com core grande Programa executa fração serial num core com e perf(r) e fração paralela com n r cores com desempenho perf() = G(f,n,r) assim = f perf(r) + f r perf(r)+(n r) G é uma cota superior perf(r)= r UFPR-CI,CI desempenho de multicores 6 Lei de Amdahl MC assimétrico (iii) + n r cores: core c/ + n r cores bás 6x x2 + x x + 2x x + x x6 6 x 53 cores, sp=9 f=09 aprox contínua: x9 + 7x, etc 6 cores x2+x x+2x x+x x6 2 6 [ f G(f,n,r) assim = / perf(r) + f r perf(r) + (n r) UFPR-CI,CI desempenho de multicores 7 ] Lei de Amdahl MC assimétrico, r = 6 6 x 53 cores, sp=9 f=0999 f=099 f=0975 f=09 f=05 2 x2+x x+2x x+x x6 2 6 f=09: G=9 com core de 53 BCEs + 07 cores de BCE UFPR-CI,CI desempenho de multicores

7 Lei de Amdahl MC assimétrico, r = 2 f=0999 f=099 f=0975 f=09 f= f=09: G=656 com core de 20 BCEs + 36 cores de BCE f=0975: G=25 com core de 66 BCEs + 90 cores de BCE UFPR-CI,CI desempenho de multicores 9 Lei de Amdahl MC assimétrico, r = f=0999 f=099 f=0975 f=09 f= f=09: G=65 com core de 563 BCEs + 6 cores de BCE f=0975: G=3 com core de 35 BCEs cores de BCE UFPR-CI,CI desempenho de multicores 20 Lei de Amdahl MC assimétrico, conclusões ) ganhos maiores que com MCs simétricos investir em MC assimétricos é uma boa idéia especialmente tratar overheads de escalonamento f=0999 f=099 f=0975 f=09 f=05 5) em CIs mais densos, ganhos são maiores e o core grande é relativamente mais potente deve-se melhorar desempenho da fração serial mesmo que sejam usados muitos recursos r ր, maxima UFPR-CI,CI desempenho de multicores 2

8 Lei de Amdahl MC dinâmico (i) Combinar num core durante a fração serial empregar n cores na fração paralela Na fração serial f um core com executa com perf(r) e usa todos os n cores em paralelo com n perf() = n G(f,n,r) dinâmico = f perf(r) + f n G é uma cota superior perf(r)= r UFPR-CI,CI desempenho de multicores 22 Lei de Amdahl MC dinâmico (ii) 6 f=09 core, sp=2, x core com na fase sequencial 2 6 [ f G(f,n,r) assim = / perf(r) + f ] n UFPR-CI,CI desempenho de multicores 23 Lei de Amdahl MC dinâmico, r = core, sp=2, x f=0999 f=099 f=0975 f=09 f=05 f=09: G=2 com core de 6 BCEs, 0% do tempo f=0975: G=9 com core de 6 BCEs, 25% do tempo UFPR-CI,CI desempenho de multicores 2

9 Lei de Amdahl MC dinâmico, r = 2 f=0999 f=099 f=0975 f=09 f= f=09: G=02 com core de BCEs, 0% do tempo f=0975: G=6 com core de BCEs, 25% do tempo UFPR-CI,CI desempenho de multicores 25 Lei de Amdahl MC dinâmico, r = f=0999 f=099 f=0975 f=09 f= f=09: G=250 com core de 02 BCEs, 0% do tempo f=0975: G=577 com core de 02 BCEs, 25% do tempo UFPR-CI,CI desempenho de multicores 26 Lei de Amdahl MC dinâmico, conclusões (i) Pode ser impraticável usar n BCEs na fração serial contudo, quanto mais recursos alocados à fração serial, potencialmente maior o ganho de desempenho 2 6 dinâmico assimeétrico simétrico dinâmico assimétrico simétrico para f = 0975 f = 09 MC dinâmico com 37 BCEs 76 BCEs é melhor que MC assimétrico com 66 BCEs BCEs UFPR-CI,CI desempenho de multicores 27

10 Lei de Amdahl MC dinâmico, conclusões (ii) 6) MC dinâmicos tem ganhos nunca piores que MC assimétricos para mesma função perf(r) 2 isso depende da premissa de que todos os recursos podem ser usados na execução serial e na paralela 6 f=0999 f=099 f=0975 f=09 f= investir em métodos que aproximem o comportamento dinâmico thread-level speculation, helper threads métodos podem parecer ineficientes sob Lei de Amdahl, mas sw exibe (muitas) fases com paralelismo N UFPR-CI,CI desempenho de multicores 2 O lado do software Como fazer para: escalonar computação quando usar o core grande/realocar gerenciar localidade mover código/dados anula ganhos sincronizar cores assimétricos andam com velocidades s em que nível? programador de aplicação programador de biblioteca compilador runtime system SO hypervisor (VM monitor) hardware nível mais alto: usa mais informação nível mais baixo: maior o ganho (i) é difícil escrever SW para sistemas assimétricos (ii) não se sabe projetar HW para sistemas dinâmicos UFPR-CI,CI desempenho de multicores 29

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

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 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: diego.pereira@ifrn.edu.br Resumo:

Leia mais

Avaliação de Desempenho

Avaliação de Desempenho Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de

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

Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão

Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão MC3305 Algoritmos e Estruturas de Dados II Aula 01 Introdução Custo de um algoritmo, Funções de complexidad e Recursão Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2015 1 Custo de um algoritmo

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

Considerações de desempenho

Considerações de desempenho Considerações de desempenho Métricas de desempenho Escalabilidade Eliminação de atrasos Escalonamento eficiente 1 Métricas de Desempenho Speedup Eficiência Redundância Utilização Qualidade 2 Metricas Speedup

Leia mais

Avaliação de Desempenho

Avaliação de Desempenho Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de

Leia mais

Prof a Andréa Schwertner Charão DELC/CT/UFSM

Prof a Andréa Schwertner Charão DELC/CT/UFSM Modelos de Computadores Paralelos Prof a Andréa Schwertner Charão DELC/CT/UFSM Sumário Modelos de computadores paralelos Classificações "acadêmicas" Tendências de mercado TOP500 Impacto na programação

Leia mais

Sistemas de Tempo Real

Sistemas de Tempo Real Escola de Computação 2000 - IME-USP Sistemas de Tempo Real Jean-Marie Farines Joni da Silva Fraga Rômulo Silva de Oliveira LCMI - Laboratório de Controle e Microinformática DAS - Departamento de Automação

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

Microcontroladores e Microprocessadores. Conversão de Bases Prof. Samuel Cavalcante

Microcontroladores e Microprocessadores. Conversão de Bases Prof. Samuel Cavalcante Microcontroladores e Microprocessadores Conversão de Bases Prof. Samuel Cavalcante Conteúdo Conversão de Qualquer base para Decimal Decimal para Binário Hexadecimal para binário Componentes básicos de

Leia mais

Entrada e Saída Transmissão Serial e Paralela

Entrada e Saída Transmissão Serial e Paralela Infra-Estrutura de Hardware Entrada e Saída Transmissão Serial e Paralela Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Introdução Transmissões Serial (síncrona e assíncrona) e Paralela

Leia mais

Arquitectura interna de um computador

Arquitectura interna de um computador Arquitectura interna de um computador Trabalho elaborado por: Carla Ventura e Sandra Jacinto 1 Descrição de uma tarefa Fases de execução de uma tarefa Unidades de execução de uma tarefa Computador como

Leia mais

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS

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 max.santana@univasf.edu.br Colegiado de Engenharia de Computação PROGRAMAÇÃO PARALELA

Leia mais

PCC104 Projeto e Análise de Algoritmos

PCC104 Projeto e Análise de Algoritmos PCC104 Projeto e Análise de Algoritmos Joubert de Castro Lima joubertlima@gmail.com Professor Adjunto DECOM UFOP 2010/1 Figuras retiradas do livro Introduction to parallel Computing Programar em paralelo

Leia mais

Sistemas Distribuídos Capítulo 4 - Aula 5

Sistemas Distribuídos Capítulo 4 - Aula 5 Sistemas Distribuídos Capítulo 4 - Aula 5 Aula Passada Clusters de Servidores Migração de Código Comunicação (Cap. 4) Aula de hoje Chamada de Procedimento Remoto - RPC Fundamentos 1 Chamada de Procedimento

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 2018.1 Relembrando... Paralelismo Relembrando... Paralelismo Paralelismo em Instrução Relembrando... Paralelismo Paralelismo em Instrução Paralelismo em Aritmética Relembrando...

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

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

Requisitos de Software

Requisitos de Software Requisitos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 6 Slide 1 Objetivos Descrever requisitos funcionais e não funcionais Explicar como os requisitos de software podem

Leia mais

O Sistema de Computação

O Sistema de Computação O Sistema de Computação Professor: Alex Sandro Forghieri alex.forghieri@ifsc.edu.br O Sistema de Computação INTRODUÇÃO Introdução Sistemas Computacionais podem ser divididos em camadas: Aplicativos Sistema

Leia mais

O Sistema de Computação

O Sistema de Computação Departamento de Ciência da Computação - UFF O Sistema de Computação Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br O Sistema de Computação Capítulo 2 Livro do Mário Monteiro Componentes

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

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais

Sistema Operacional. Implementação de Processo e Threads. Prof. Dr. Márcio Andrey Teixeira Sistemas Operacionais Sistema Operacional Implementação de Processo e Threads O mecanismo básico para a criação de processos no UNIX é a chamada de sistema Fork(). A Figura a seguir ilustra como que o processo e implementado.

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

Medida de desempenho

Medida de desempenho Medida de desempenho Aceleração (Speedup) = (Tempo em 1 CPU) / (Tempo em p CPUs) O que devemos comparar? Programa paralelo em 1 CPU? Programa equivalente sequencial? Melhor programa sequencial? Fator de

Leia mais

Objetivos. Arquitetura x86. Evolução dos Microprocessadores com arquitetura x86. Universidade São Judas Tadeu. Introdução à Computação

Objetivos. Arquitetura x86. Evolução dos Microprocessadores com arquitetura x86. Universidade São Judas Tadeu. Introdução à Computação Universidade São Judas Tadeu Prof. André Luiz Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Microprocessadores e Arquitetura (2) - FEDELI, Ricardo D.; POLLONI, Enrico G.; PERES, Fernando E.

Leia mais

Processos O conceito de processos é fundamental para a implementação de um sistema multiprogramável. De uma maneira geral, um processo pode ser entend

Processos O conceito de processos é fundamental para a implementação de um sistema multiprogramável. De uma maneira geral, um processo pode ser entend Concorrência Nos sistemas Monoprogramáveis somente um programa pode estar em execução por vez, permanecendo o processador dedicado a esta única tarefa. Os recursos como memória, processador e dispositivos

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

Seguindo a análise de pensamento Estratégico, o gerenciamento de projetos

Seguindo a análise de pensamento Estratégico, o gerenciamento de projetos FUNDAMENTOS DA GESTÃO DE PROJETOS Mauro Lúcio Batista Cazarotti Aluno do Curso de Gerenciamentos de Projetos - FIJ/Rio de Janeiro é: Seguindo a análise de pensamento Estratégico, o gerenciamento de projetos

Leia mais

Figura 8: modelo de Von Neumann

Figura 8: modelo de Von Neumann 3. ORGANIZAÇÃO DE SISTEMA DE COMPUTADORES Olá, caro aluno! Neste capítulo vamos ver como são organizados os componentes que formam um sistema computacional. O conceito é histórico, mas é aplicado até os

Leia mais

1.1. Definição do Problema

1.1. Definição do Problema 13 1 Introdução Uma das principais preocupações de área de engenharia de software diz respeito à reutilização [1]. Isso porque a reutilização no contexto de desenvolvimetno de software pode contribuir

Leia mais

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads

Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo 6 - Threads Com o conceito de múltiplos threads (multithread) é possível

Leia mais

Fundamentos de Arquitetura e Organização de Computadores

Fundamentos de Arquitetura e Organização de Computadores Fundamentos de Arquitetura e Organização de Computadores Dois conceitos fundamentais no estudo dos sistemas de computação são o de Arquitetura e Organização de computadores. O termo arquitetura refere-se

Leia mais

Linux e Computação Científica

Linux e Computação Científica Linux e Computação Científica Sumário Motivação Noções de Sistemas Operacionais Ferramental Computação Científica Motivação Financeira Linux é livre Desempenho Linux gerencia melhor recursos de processdor,

Leia mais

Oganização e Arquitetura de Computadores

Oganização e Arquitetura de Computadores Oganização e Arquitetura de Computadores Capítulo 14 e 15 Unidade de Controle Parte I Operação da Unidade de Controle 1 Micro-Operações Um computador executa um programa Ciclo: Busca/Executa Cada ciclo

Leia mais

Introdução a Programação Aula 01

Introdução a Programação Aula 01 Introdução a Programação Aula 01 Prof. Bruno Crestani Calegaro Curso de Sistemas de Informação ELC1064 Lógica e Algoritmo 1 O que é um computador? Máquina programável genérica Constituído por: Processador

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

Construção de uma via de dados, abordagem monociclo, multiciclo e pipeline

Construção de uma via de dados, abordagem monociclo, multiciclo e pipeline INSTITUTO FEDERAL DO RIO GRANDE DO NORTE DIRETORIA ACADÊMICA DE GESTÃO E TECNOLOGIA DA INFORMAÇÃO CURSO SUPERIOR DE TECNOLOGIA EM REDES DE COMPUTADORES DISCIPLINA: ORGANIZAÇÃO DE COMPUTADORES Construção

Leia mais

Sistemas Distribuídos e Paralelos

Sistemas Distribuídos e Paralelos Sistemas Distribuídos e Paralelos Aula #6: Programação paralela em sistemas de memória compartilhada. ISUTIC - 2016 Eng. Alexander Rodríguez Bonet Aula de hoje Regiões paralelas. Cláusulas de âmbito. Partilha

Leia mais

Programação de Computadores I. Linguagem C Função

Programação de Computadores I. Linguagem C Função Linguagem C Função Prof. Edwar Saliba Júnior Fevereiro de 2011 Unidade 07 Função 1 Conceitos As técnicas de programação dizem que, sempre que possível, evite códigos extensos, separando o mesmo em funções,

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

Multiprogramação leve em arquiteturas multi-core

Multiprogramação leve em arquiteturas multi-core Multiprogramação leve em arquiteturas multi-core Prof. Dr. Departamento de Informática Universidade Federal de Pelotas Sumário Arquiteturas multi-core Programação multithread Ferramentas de programação

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 5 Comunicação em Sistemas Distribuídos Sumário Comunicaçã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

Microcontroladores e Microprocessadores

Microcontroladores e Microprocessadores Microcontroladores e Microprocessadores Prof. Alison Lins Microcontrolador Agenda - Histórico da Evolução da Eletrônica - Microprocessadores - Memórias - Microcontroladores - Microcontrolador x Microprocessador

Leia mais

Modelo CMMI em Fábrica de Software

Modelo CMMI em Fábrica de Software Modelo CMMI em Fábrica de Software Carol Passos Gerente de Conhecimento - BRAXIS Março/2007 Assuntos Motivação Modelo CMMI Melhoria de Processo de Software Fábrica de Software Processo de Produção de Software

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 2018.1 Computador O computador é uma máquina que realiza processamento de dados automaticamente. Ela é formada por um hardware e um software. O Engenho Analítico é o primeiro

Leia mais

Introdução OpenMP. Nielsen Castelo Damasceno

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

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Evolução e Desempenho dos Computadores Slide 1 Conceitos Arquitetura do Computador Refere-se aos atributos que são visíveis para o programador. Ex: conjunto

Leia mais

cuja distribuição é t de Student com n 1 graus de liberdade.

cuja distribuição é t de Student com n 1 graus de liberdade. Aula 13 Teste de hipótese sobre a média de uma população normal σ 2 desconhecida Objetivos: Nesta aula você completará seu estudo básico sobre testes de hipóteses, analisando a situação relativa a uma

Leia mais

Introdução à OpenMP (Dia 1) Prof. Guido Araujo

Introdução à OpenMP (Dia 1) Prof. Guido Araujo Introdução à OpenMP (Dia ) Prof. Guido Araujo www.ic.unicamp.br/~guido Roteiro Escrevendo programas usando OpenMP Usando OpenMP para paralelizar laços seriais com pequenas mudanças no código fonte Explorar

Leia mais

Tipos de Software e Ambientes de Processamento

Tipos de Software e Ambientes de Processamento Universidade São Judas Tadeu Prof. André Luis Ribeiro Prof. Jorge Luis Pirolla Introdução à Computação Tipos de Software e Ambientes de Processamento Tópicos Formas de Processamento de Dados Sistema de

Leia mais

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES Adão de Melo Neto 1 INTRODUÇÃO Desde 1950, houveram poucas inovações significativas nas áreas de arquitetura e organização de computadores. As principais

Leia mais

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br

- Campus Salto. Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Disciplina: Sistemas de Arquivos Docente: Fernando Santorsula E-mail: fernandohs@ifsp.edu.br Sistemas de Arquivos- Parte 2 Pontos importantes de um sistema de arquivos Vários problemas importantes devem

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

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto;

Proporcionar a modelagem de sistemas utilizando todos os conceitos da orientação a objeto; Módulo 7 UML Na disciplina de Estrutura de Sistemas de Informação, fizemos uma rápida passagem sobre a UML onde falamos da sua importância na modelagem dos sistemas de informação. Neste capítulo, nos aprofundaremos

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

http://www.ic.uff.br/~debora/fac! 1 Conceito de família IBM System/360 1964 DEC PDP-8 Separa arquitetura de implementação Unidade de controle microprogramada Idéia de Wilkes 1951 Produzida pela IBM S/360

Leia mais

Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional. Professor: Francisco Ary

Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional. Professor: Francisco Ary Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional Professor: Francisco Ary Computação Paralela Capacidade de um sistema computacional executar

Leia mais

Processamento Paralelo

Processamento Paralelo Processamento Paralelo por Helcio Wagner da Silva Introdução Tradicionalmente, o computador tem sido visto como uma máquina seqüencial Esta visão nunca foi completamente verdadeira No nível das µo, vários

Leia mais

Organização de Computadores Sistema de entrada e saída (I/O) e computação paralela. Professor: Francisco Ary

Organização de Computadores Sistema de entrada e saída (I/O) e computação paralela. Professor: Francisco Ary Organização de Computadores Sistema de entrada e saída (I/O) e computação paralela Professor: Francisco Ary Computação Paralela Capacidade de um sistema computacional ser executado de forma simultânea,

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

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

Planejamento da Disciplina Controle e Servomecanismos II

Planejamento da Disciplina Controle e Servomecanismos II Planejamento da Disciplina Controle e Servomecanismos II Esta versão utiliza a 3 a edição do livro [1] e não mais será atualizada Identificação UERJ Faculdade de Engenharia Departamento de Eletrônica e

Leia mais

Resumo. l Hierarquia de Armazenamento l Discos Magnéticos l Mapeamento de Endereços l Tempos de Acesso l Exemplos l Referências

Resumo. l Hierarquia de Armazenamento l Discos Magnéticos l Mapeamento de Endereços l Tempos de Acesso l Exemplos l Referências Bancos de Dados I 2013/02 Conceitos de Memória Secundária Prof. Altigran Soares da Silva Resumo l Hierarquia de l Discos Magnéticos l Mapeamento de Endereços l Tempos de Acesso l Exemplos l Referências

Leia mais

Modelos Computacionais. Jorge Barbosa

Modelos Computacionais. Jorge Barbosa Modelos Computacionais Jorge Barbosa Modelos Computacionais Modelo de Computação: corresponde a uma função de custo da execução de um algoritmo numa determinada máquina. O modelo deve representar o custo

Leia mais

Aula 2 Projetos Mecatrônicos Visão Geral. Prof a. Michelle Mendes Santos

Aula 2 Projetos Mecatrônicos Visão Geral. Prof a. Michelle Mendes Santos Aula 2 Projetos Mecatrônicos Visão Geral Prof a. Michelle Mendes Santos A mecatrônica é uma filosofia de projeto integrada; É o ambiente ideal para a sinergia entre diferentes disciplinas; Torna o produto

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

Introdução à Ciência da Informação

Introdução à Ciência da Informação Introdução à Ciência da Informação Prof. Edberto Ferneda Software 1 Software Níveis de Software Hardware Software Aplicativos Software Tipos de Software Softwares Aplicativos de Sistema (Utilitários) Finalidades

Leia mais

Introdução à Informática. Alexandre Meslin

Introdução à Informática. Alexandre Meslin Introdução à Informática Alexandre Meslin (meslin@nce.ufrj.br) Organização da Memória Conceito de hierarquia de memória Memória principal e memórias secundárias Projeto lógico da memória principal Memórias

Leia mais

SSC0640 Sistemas Operacionais I

SSC0640 Sistemas Operacionais I SSC0640 Sistemas Operacionais I 11ª Aula Threads Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano baseados no livro

Leia mais

Thread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ fevereiro, / 41

Thread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ   fevereiro, / 41 Thread Sistemas Operacionais Leonard B. Moreira UNIVERSIDADE ESTÁCIO DE SÁ e-mail: leonardbarreto@gmail.com.br fevereiro, 2013 1 / 41 Sumário 1 Introdução 2 Ambientes Monothread 3 Ambientes Multithread

Leia mais

Gerenciamento de projetos (Project Management).

Gerenciamento de projetos (Project Management). Gerenciamento de projetos (Project Management). A gestão de projetos é uma das áreas fundamentais de qualquer departamento de sistemas de informação, estando hoje em dia amplamente difundido dentro das

Leia mais

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional Sistemas Operacionais Prof. Pedro Luís Antonelli Anhanguera Educacional ARQUITETURA E IMPLEMENTAÇÃO Pacote de Threads Conjunto de rotinas disponíveis para que uma aplicação utilize as facilidades dos threads.

Leia mais

Suporte à Execução Eficiente de Aplicações em Plataformas com Paralelismo Multi-Nível

Suporte à Execução Eficiente de Aplicações em Plataformas com Paralelismo Multi-Nível Suporte à Execução Eficiente de Aplicações em Plataformas com Paralelismo Multi-Nível Vinícius Garcia Pinto Lucas Mello Schnorr Nicolas Maillard Grupo de Processamento Paralelo e Distribuído (GPPD) Instituto

Leia mais

OpenMP. Slides baseados em tutorial de Tim Mattson da Intel

OpenMP. Slides baseados em tutorial de Tim Mattson da Intel OpenMP Slides baseados em tutorial de Tim Mattson da Intel O que é OpenMP? Uma especificação para um conjunto de diretivas de compilação, rotinas de biblioteca e variáveis de sistema que podem ser utilizadas

Leia mais

Sistemas Embarcados:

Sistemas Embarcados: Sistemas Embarcados: Microcontroladores Prof. Protásio Laboratório de Microengenharia/DEE/CEAR/UFPB Processadores Embarcados Todo sistema embarcado necessita ter incorporado um dispositivo de processamento

Leia mais

UM ESTUDO COMPARATIVO DE DESEMPENHO UTILIZANDO PROGRAMAÇÃO SEQUENCIAL VS PARALELA APLICADO EM ALGORITMOS GENÉTICOS 1

UM ESTUDO COMPARATIVO DE DESEMPENHO UTILIZANDO PROGRAMAÇÃO SEQUENCIAL VS PARALELA APLICADO EM ALGORITMOS GENÉTICOS 1 UM ESTUDO COMPARATIVO DE DESEMPENHO UTILIZANDO PROGRAMAÇÃO SEQUENCIAL VS PARALELA APLICADO EM ALGORITMOS GENÉTICOS 1 Eldair F. Dornelles 2, Henrique A. Richter 3, Miquéias F. M. Trennepohl 4, Taís T. Siqueira

Leia mais

3 Modelos de Simulação

3 Modelos de Simulação 43 3 Modelos de Simulação 3.1 Simulação de Monte Carlo O método de Monte Carlo foi concebido com este nome nos anos 40 por John Von Neumann, Stanislaw Ulam e Nicholas Metropolis durante o projeto de pesquisa

Leia mais

Programação de Alto Desempenho - 2. Prof: Carla Osthoff

Programação de Alto Desempenho - 2. Prof: Carla Osthoff Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: osthoff@lncc.br 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda

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

28 de fevereiro de 2016

28 de fevereiro de 2016 Ítalo Mendes da Silva Ribeiro UESPI 28 de fevereiro de 2016 1 / 72 Súmario Breve 2 / 72 Súmario Breve 3 / 72 Por que estudar Arquitetura e Organização de Computadores? Conhecimento do funcionamento interno

Leia mais

Projeto de Desenvolvimento de Software

Projeto de Desenvolvimento de Software Projeto de Desenvolvimento de Software Introdução a Engenharia de Software (continuação) Msc. Eliezio Soares eliezio.soares@ifrn.edu.br http://docente.ifrn.edu.br/elieziosoares Engenharia de Software Definição

Leia mais

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas

Engenharia de Software. Ciclos de Vida do Software. 1. Sistemas Engenharia de Software Profa. Dra. Lúcia Filgueiras Profa. Dra. Selma S. S. Melnikoff Ciclos de Vida do Software 1. Sistemas 2. Crise do software 3. Caracterização do software 4. Ciclos de vida do software

Leia mais

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis!

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis! http://www.ic.uff.br/~boeres/fac.html! 1 Conteúdos: Debora, Edcarllos, livros! slides disponíveis! Unidade central de Processamento realiza operações básicas codificadas em 0s e 1s instrução contém código

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Slides adaptados de Prof. Dr. Marcos José Santana, Prof. Dra. Regina Helena Carlucci Santana e Sarita Mazzini Bruschi baseados no livro Sistemas Operacionais Modernos de A. Tanenbaum

Leia mais

Parte I Multiprocessamento

Parte I Multiprocessamento Sistemas Operacionais I Estrutura dos SO Prof. Gregorio Perez gregorio@uninove.br 2004 Parte I Multiprocessamento Roteiro 1 Multiprocessadores em Sistemas Fortemente Acoplados 1.1 1.2 1.3 Processamento

Leia mais

Algoritmos e Estruturas de Dados I. Variáveis Indexadas. Pedro O.S. Vaz de Melo

Algoritmos e Estruturas de Dados I. Variáveis Indexadas. Pedro O.S. Vaz de Melo Algoritmos e Estruturas de Dados I Variáveis Indexadas Pedro O.S. Vaz de Melo Por que índices são importantes? Como uma loja de sapatos artesanais deve guardar os seus produtos? 1 2 3 4 Tamanhos entre

Leia mais

Administração Central Unidade de Ensino Médio e Técnico - CETEC. Plano de Trabalho Docente 2012

Administração Central Unidade de Ensino Médio e Técnico - CETEC. Plano de Trabalho Docente 2012 Plano de Trabalho Docente 2012 ETEC Monsenhor Antônio Magliano Ensino Técnico Código: 088 Município: Garça Eixo Tecnológico: Informação e Comunicação Habilitação Profissional: Técnica de Nível Médio de

Leia mais

Arquiteturas RISC e CISC. Adão de Melo Neto

Arquiteturas RISC e CISC. Adão de Melo Neto Arquiteturas RISC e CISC Adão de Melo Neto 1 Arquitetura RISC Arquitetura RISC. É um das inovações mais importantes e interessantes. RISC significa uma arquitetura com um conjunto reduzido de instruções

Leia mais

SO: Escalonamento. Sistemas Operacionais Flavio Figueiredo (http://flaviovdf.github.io)

SO: Escalonamento. Sistemas Operacionais Flavio Figueiredo (http://flaviovdf.github.io) SO: Escalonamento Sistemas Operacionais 2017-1 Flavio Figueiredo (http://flaviovdf.github.io) 1 Aonde Estamos Processos Chapt 3 Threads Chapt 4 Vamos pular o Chapt 5 brevemente Sincronização e comunicação

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Interconexão do Computador Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes -

Leia mais

Exemplo Amdahl. O speedup total é dado por:

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

Leia mais

Avaliação e Desempenho Aula 1 - Simulação

Avaliação e Desempenho Aula 1 - Simulação Avaliação e Desempenho Aula 1 - Simulação Introdução à simulação Geração de números aleatórios Lei dos grandes números Geração de variáveis aleatórias O Ciclo de Modelagem Sistema real Criação do Modelo

Leia mais

Oficina de Informática e Telemática

Oficina de Informática e Telemática UNIVERSIDADE ESTADUAL DE SANTA CRUZ (UESC) Criada pela Lei 6.344, de 05.12.1991, e reorganizada pela Lei 6.898, de 18.08.1995 e pela Lei 7.176, de 10.09.1997 Oficina de Informática e Telemática Prof. Dr.

Leia mais

APRESENTAÇÃO. Slides baseados no material de Marco A. Zanata Alves - UFPR (2016) Curso: CI316 Programação Paralela INTEL MODERN CODE PARTNER 1

APRESENTAÇÃO. Slides baseados no material de Marco A. Zanata Alves - UFPR (2016) Curso: CI316 Programação Paralela INTEL MODERN CODE PARTNER 1 INTEL MODERN CODE PARTNER APRESENTAÇÃO Slides baseados no material de Marco A. Zanata Alves - UFPR (2016) Curso: CI316 Programação Paralela INTEL MODERN CODE PARTNER 1 O QUE ESPERAR DESSE WORKSHOP? INTEL

Leia mais

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW 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 08 Arquiteturas VLIW 1. Introdução VLIW é Very

Leia mais