Processamento Paralelo

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

Download "Processamento Paralelo"

Transcrição

1 Processamento Paralelo Hardware Paralelo Universidade Estadual de Santa Cruz Bacharelado em Ciência da Computação Prof. Esbel Tomás Valero Orellana

2 Portabilidade O principal problema das primeiras maquinas paralelas foi a enorme dificuldade para escrever programas portáveis. Os programas escritos para uma arquitetura não podiam ser executados satisfatoriamente em uma arquitetura diferente. Felizmente, essa situação tem mudado drasticamente, devido ao trabalho de grupos de pessoas em desenvolver padrões para maquinas paralelas (HPF, MPI, ARB).

3 Portabilidade High Performance Fortran (HPF) Forum Tem desenvolvido um grupo de extensões do Fortran 90, que permitem aos programadores escrever facilmente programas paralelos, O mecanismo principal para alcançar o paralelismo é a divisão dos dados ou paralelismo de dados, O domínio de dados é dividido entre vários processadores e cada um deles realiza as operações sobre o subdomínio de dados correspondente,

4 Portabilidade High Performance Fortran (HPF) Forum HPF, fornece um conjunto de funções primitivas que permitem distribuir vetores e matrizes convenientemente e operar eles em paralelo, A principal deficiência do HPF, é que muitos algoritmos paralelos não podem ser convertidos em programas eficientes (linguagem de máquina) pelos compiladores atuais.

5 Portabilidade Message Passing Interface (MPI) Forum Um enfoque completamente inovador na criação de padrões para maquinas paralelas, Não é criada uma nova linguagem, e sem uma biblioteca de funções que podem ser chamadas desde programas em C ou Fortran*, As bases desta biblioteca é um grupo de funções que permitem alcançar o paralelismo através do intercambio de mensagens,

6 Portabilidade Message Passing Interface (MPI) Forum Intercambio de mensagens é um método poderoso e geral de expressar o paralelismo, A principal deficiência do paradigma MPI é que força ao programador dificultando o a lidar com desenvolvimento, muitos detalhes, (linguagem de montagem para computadores paralelos), Maiores detalhes sobre MPI serão vistos ao longo do curso.

7 Portabilidade Architecture Review Board - ARB Grupo formado pelos principais fabricantes de hardware (SUN Microsystems, SGI, IBM, Intel); Desenvolveram um padrão aberto (domínio público) para maquinas de memória compartilhada; Application Programming Interfase (API) + diretivas de compilação; A maioria dos detalhes da implementação paralela são deixados ao compilador; Padrão OpenMP, será visto no curso.

8 Taxonomia de Flynn Existe uma enorme variedade de arquiteturas para máquinas paralelas, tentar classificá-las seguindo um padrão lógico é extremamente difícil, A classificação original para máquinas paralelas, vem dos primórdios de teoria da computação e o conhecida como taxonomia de Flynn, Em 1966 Flynn classificou os sistemas de acordo com o número de fluxos de instruções e o número de fluxos de dados, que estivessem sendo processados simultaneamente.

9 Taxonomia de Flynn SISD Single Instruction Single Data, um fluxo de instruções e um fluxo de dados, Ex: arquitetura convencional de von Neumann, SIMD Single Instruction Multiple Data, um fluxo de instruções vários fluxos de dados, MISD Multiple Instruction Single Data, vários fluxos de instruções um fluxo de dados, MIMD Multiple Instruction Multiple Data, vários fluxos de instruções vários fluxos de dados, uma coleção de processos autônomos com seus próprios dados.

10 Taxonomia de Flynn Sistemas SISD Arquitetura de Neumann

11 Taxonomia de Flynn Sistemas SISD Arquitetura de Neumann O gargalho na arquitetura de Neumann é a transferência de dados entre a memória e a CPU, Não importa quanto aumentarmos a velocidade de execução do processador, a velocidade de execução do programa é limitada pela velocidade do fluxo de informações entre a memória e a CPU, Na atualidade não existem máquinas estritamente von Neumann, algumas mudanças tem sido introduzidas na arquitetura,

12 Taxonomia de Flynn Sistemas SISD Arquitetura de Neumann Aprimoramentos á arquitetura de Neumann utilização de uma hierarquia de memórias, utilização de memórias cachê, utilização de vários bancos de memórias, uso de pipeline adicionar instruções vetoriais ao conjunto de instruções do processador, (realizam operações com vetores)

13 Taxonomia de Flynn Sistemas MISD Neumann Modificado Exemplo de Instruções Vetoriais a instrução precisa ser carregada e decodificada 100 vezes, o vetor é processado elemento a elemento FORTRAN 77 do 100 i=1,100 z[i] = x[i] + y[i] 100 continue FORTRAN 90 z[1:100] = x[1:100] + y[1:100] a instrução é carregada e decodificada 1 vez, o vetor é processado como uma entidade

14 Taxonomia de Flynn Sistemas MISD Neumann Modificado os processadores vetoriais e com pipeline, foram muito populares na busca de um maior poder de computo, a arquitetura deste tipo de processadores tem sido muito estudada e existem compiladores excelentes, entretanto, eles apresentam algumas desvantagens,

15 Taxonomia de Flynn Sistemas MISD Neumann Modificado Desvantagens: os princípios de vetorização e pipeline não funcionam adequadamente para algoritmos com estruturas de dados irregulares ou programas com grandes quantidades de desvios, na atualidade é impossível escalar estes processadores para aumentar o desempenho, aumentar o tamanho do pipeline??? incrementar as operações vetoriais???,

16 Taxonomia de Flynn Sistemas SIMD um sistema SIMD puro é composto por: um processador de alto padrão dedicado exclusivamente a funções de controle, uma coleção de processadores mais simples (ULA + memória) subordinados ao processador principal durante um ciclo de instrução, o processador principal envia uma instrução a cada um dos processadores subordinados (broadcast), cada um dos processadores executa a instrução ou permanece inativo,

17 Taxonomia de Flynn Sistemas SIMD Programa P. CONTROLE Instruções Processador Dados Processador Dados. Processador Dados

18 Taxonomia de Flynn Sistemas SIMD Exemplo x, y, z arrays distribuídos em i processadores, de forma que o processador i contem o i-esimo elemento de cada array, a máquina paralela vai a executar o seguinte código: for (i=0; i<n; i++) if (y[i]!=0) z[i] = x[i]/y[i]; else z[i] = x[i]

19 Taxonomia de Flynn Sistemas SIMD Exemplo os processos subordinados executam a seguinte seqüência de operações: CICLO 1 testar se local_y!=0 CICLO 2 se local_y diferente de zero local_z = local_x/local_y se local_y igual a zero INACTIVO CICLO 3 se local_y diferente de zero INACTIVO se local_y igual a zero local_z = local_x

20 Taxonomia de Flynn Sistemas SIMD O processo de execução das instruções é síncrono; Em um ciclo de instrução determinado, um processador estará ativo e executando a mesma instrução que os outros processadores ativos, ou ele estará inativo; A principal deficiência de sistemas SIMD, é que para programas com muitos desvios, muitos processadores subordinados podem ficar inativos por longos períodos de tempo;

21 Taxonomia de Flynn Sistemas SIMD Entretanto, máquinas SIMD são muito fácies de serem programadas para algoritmos simples que utilizem estruturas de dados regulares; Outra vantagem, é que elas podem ser escaladas facilmente; Os exemplos mais bem sucedidos de máquinas SIMD são: CM1 e CM2 produzidas por Thinking Machines MP2 produzida pela MASPAR

22 Taxonomia de Flynn Sistemas MIMD A diferença fundamental entre um sistema SIMD e um sistema MIMD, é que nos sistemas MIMD os processadores são autônomos, Cada processador conta com a unidade de controle, ULA e registros, porém cada processador executa seu próprio programa, Sistemas MIMD são máquinas assíncronas não existe um ciclo de instruções global, Os processadores devem ser instruídos pelo programa para fazerem as tarefas de sincronização,

23 Taxonomia de Flynn Sistemas MIMD Para um instante de tempo dado os processadores podem estar executando instruções diferentes mesmo que eles estivessem executando o mesmo programa, Sistemas multiprocessados de propósito geral; Cada processo tem um programa próprio que geram fluxos de instruções diferentes; Cada processador trabalha com dados diferentes;

24 Taxonomia de Flynn Sistemas MIMD Programa Instruções Processador Dados Programa. Programa Instruções Instruções Processador. Dados Dados

25 Taxonomia de Flynn Sistemas MIMD As máquinas MIMD podem ser classificadas como: 1. sistemas de memória compartilhada, multiprocessadores, ou ambientes fortemente acoplados; 2. sistemas de memória distribuída, multicomputadores, ou ambientes fracamente acoplados.

26 Taxonomia de Flynn SIMPLES MULTIPLAS SIMPLES MULTIPLOS SISD SIMD Von Neuman array MISD MIMD Pipeline Máquinas paralelas

27 MIMD Memória Compartilhada Uma coleção de processadores e módulos de memória interconectados por uma rede CPU... CPU CPU REDE DE INTERCONEXÃO MEMÓRIA... MEMÓRIA MEMÓRIA A velocidade de acesso de um processador a um módulo de memória independe do módulo de memória a ser acessado,

28 MIMD Memória Compartilhada A arquitetura mais simples para implementar uma máquina de memória compartilhada é utilizar como rede de interconexão um BUS de dados, CACHE... CPU CPU CPU CACHE CACHE BUS Se vários processadores tentarem acessar a memória simultaneamente, o BUS pode ficar saturado, provocando atrasos na transferência de dados,

29 MIMD Memória Compartilhada BUS de dados Para minimizar a saturação do BUS a cada processador se acopla uma memória cache de grande capacidade, Devido ao limite de amplitude de banda do BUS, esta arquitetura não pode ser utilizada para um número de processadores muito grande, Ex: SGI Challenge XL 36 processadores. (http://en.wikipedia.org/wiki/sgi_challenge)

30 MIMD Memória Compartilhada Interruptores A maioria das máquinas de memória compartilhada utilizam uma rede de interconexão baseada em interruptores, A rede de interconexão pode ser interpretada como uma grade retangular de cabos, com interruptores em seus pontos de interseção, Os interruptores permitem transmitir sinais na direção vertical e horizontal simultaneamente ademais um sinal pode ser redirecionado da vertical a horizontal ou vice-versa,

31 MIMD Memória Compartilhada Interruptores BuildingLinuxClusters,DavidH.M.Spector,O'ReillyMedia

32 MIMD Memória Compartilhada Interruptores A comunicação entre dois unidades (CPU-memória) não interfere na comunicação entre outras dois unidades, A rede de interconexão usando interruptores tende a ser muito cara e não pode ser utilizada para um número alto de processadores. HP/ConvexSPP1200

33 MIMD Memória Compartilhada Multicore Porque surgiram os processadores multicore? Diminuir o consumo de energia, Aumentar a capacidade de processamento sem aumentar a liberação de calor no chip. Colocam em um único chip vários cores de processamento, Cada um destes cores funciona como um processador independente; Fornecem alto poder de processamento a baixo custo.

34 MIMD Memória Compartilhada Multicore Primeira geração

35 MIMD Memória Compartilhada Multicore Segunda geração Aparece a cache L2 compartilhada; Executam eficientemente processos independentes; Novos desafios em processamento paralelo.

36 MIMD Memória Compartilhada Memoria Cache Um problema que encontramos em qualquer arquitetura de memória compartilhada que utilize memórias cache, é a coerência da cache. Se o processador acessar a uma variável que esta na memória cache como sabemos que o valor da variável é valido? Existem vários protocolos de coerência da cache, eles variam consideravelmente em complexidade.

37 MIMD Memória Compartilhada Memoria Cache Protocolo Snoopy: é o protocolo de coerência de cache mais simples, apropriado para máquinas que usam BUS como rede de interconexão. Protocolo Snoopy: a cada CPU é adicionado um controlador de cache, o controlador monitora o trafego de dados no BUS, quando um processador atualiza uma variável na cache, o controlador atualiza seu valor na memória principal, os outros controladores atualizam o valor na cache dos outros processadores.

38 MIMD Memória Compartilhada Memoria Cache Resolver a coerência da cachê implica uma sobrecarga ao sistema. Existem protocolos mais avançados para resolver a coherencia da memória cachê: MSI: Modified Shared Invalid; MESI: Modified Exclusive Shared Invalid; MOESI: Modified Owned Exclusive Shared Invalid; Firefly: DEC Workstations; Dragon: Xerox Workstations.

39 MIMD Memória Compartilhada UMA vs NUMA Frequentemente as máquinas de MC são classificadas segundo a velocidade de acesso dos processadores à memória; UMA (Uniform Memory Access) O tempo de acesso aos dados localizados em qualquer posição de memória é o mesmo em todos os processadores; Um único barramento de memória; Máquinas de pequeno e médio porte.

40 MIMD Memória Compartilhada UMA vs NUMA NUMA (Non-Uniform Memory Access) O tempo de acesso aos dados da memória depende da posição relativa entre o bloco de memória e o processador; O acesso do processador aos blocos mais próximos é maior que aos blocos mais distantes; Vários barramentos de memória; Máquinas de grande porte. Recentemente as máquinas de memória compartilhada estão sendo chamadas de SMPs (Symetric Multi Processors).

41 MIMD Memória Distribuída Em um sistema de memória distribuída cada processador tem seu próprio módulo de memória, Um módulo de memória somente pode ser acessado pelo processador associado a ele, MEMÓRIA CPU MEMÓRIA MEMÓRIA... CPU REDE DE INTERCONEXÃO CPU

42 MIMD Memória Distribuída Podemos interpretar um sistema de memória distribuída como um grafo (arestas e vértices), Arestas se correspondem com os cabos de conexão, Nodos se correspondem com um conjunto de processador e módulo de memória, Podemos ter então dois tipos de sistemas de interconexão: sistemas estáticos e sistemas dinâmicos.

43 MIMD Memória Distribuída MD Sistema Estático Cada vértice corresponde a um nodo, Não são necessários dispositivos adicionais, Podem ocorrer problemas na comunicação.

44 MIMD Memória Distribuída MD Sistema Dinâmico Cada vértice corresponde a um nodo, Não são necessários dispositivos adicionais, Podem ocorrer problemas na comunicação.

45 MIMD Memória Distribuída MD Sistemas Completamente Conectados Considerando o desempenho e a facilidade de programação, o sistema de interconexão ideal, é uma rede completamente conectada, i.e., cada nodo esta diretamente ligado a todos os outros nodos,

46 MIMD Memória Distribuída MD Sistemas Completamente Conectados cada nodo pode comunicar-se diretamente com qualquer outro nodo, a comunicação não envolve nenhum atraso (delay), a comunicação entre dois nodos não interfere na comunicação entre outros dois nodos, o alto custo deste tipo de rede de interconexão, impossibilita sua construção para máquinas paralelas com muitos nodos.

47 MIMD Memória Distribuída MD Redes de interconexão dinâmica Na pratica o mais perto que podemos alcançar de um sistema completamente conectado é uma grade de interruptores onde cada processador é conectado aos lados direto e esquerdo de uma linha de interruptores

48 MIMD Memória Distribuída MD Redes de interconexão dinâmica Nesta configuração o único atraso que pode existir na comunicação, e o tempo necessário para selecionar o interruptor correspondente, Todos os processadores simultaneamente, podem comunicar-se Esta configuração é custosa (p2 interruptores), Incomum para mais de 16 processadores, Uma alternativa menos custosa é a utilização de redes de interconexão com interruptores de múltiplos estados,

49 MIMD Memória Distribuída MD Redes de interconexão dinâmica Exemplo: rede de interconexão OMEGA p processadores (p/2)log2p interruptores

50 MIMD Memória Distribuída MD Redes de interconexão dinâmica Redes de interconexão OMEGA... cada processador pode comunicar-se diretamente com outro processador, podem existir interferências na comunicação e conseqüentemente atrasos, existem máquinas com esta rede de interconexão de até 512 processadores.

51 MIMD Memória Distribuída MD Redes de interconexão estática O extremo oposto a um sistema completamente conectado é um arranjo linear, Podemos melhorar esta configuração conectando os nodos dos extremos e teremos um anel,......

52 MIMD Memória Distribuída MD Redes de interconexão estática Vantagens: Configuração muito barata (apenas p-1 cabos) Facilmente escalável, Desvantagens: O número de canais de comunicação é extremamente limitado, Apenas podem comunicar-se dois nodos ao mesmo tempo, A rede de interconexão estática que mais se aproxima de um sistema completamente conectado é o hipercubo.

53 MIMD Memória Distribuída MD Redes de interconexão estática O hipercubo: O hipercubo de dimensão zero consiste de um único nodo, Para construir um hipercubo de dimensão d>0, tomamos dois hipercubos de dimensão d-1 e unimos seus nodos correspondentes, d = 3 d = 1 d = 2

54 MIMD Memória Distribuída O hipercubo: d = 4

55 MIMD Memória Distribuída MD Redes de interconexão estática O hipercubo: cada vez que incrementarmos uma dimensão, duplicamos o numero de nodos, um hipercubo de dimensão d contem p=2d processadores cada nodo é diretamente conectado a d nodos, na configuração hipercubo é possível organizar as comunicações entre os nodos para minimizar os atrasos.

56 MIMD Memória Distribuída MD Redes de interconexão estática O hipercubo: a principal desvantagem desta configuração é a dificuldade de escalar o sistema (sempre devemos duplicar o número de nodos), Ex: ncube 10 (1024 nodos), Os hipercubos foram muito populares nos anos 80. Entre os hipercubos e os conjuntos lineares (array ou anel) podemos encontrar a configuração de grade e a configuração de toróide

57 MIMD Memória Distribuída MD Redes de interconexão estática Configuração de grade: É obtida aumentando a dimensão do array linear 2D e 3D

58 MIMD Memória Distribuída MD Redes de interconexão estática Configuração de toróide: É obtida aumentando a dimensão do anel

59 MIMD Memória Distribuída MD Redes de interconexão estática Nas configurações de grade e toróide na medida que aumentamos a dimensão, aumenta o número de rotas entre nodos e conseqüentemente diminuem as interferências, Ambas configurações são muito populares e tem sido escaladas a miles de nodos.

60 MIMD Memória Distribuída MD Redes de interconexão estática Sistemas de interconexão baseados em Ethernet: é o sistema de interconexão mais simples e de menor custo, um CLUSTER é o exemplo clássico deste tipo de sistemas, a rede de interconexão é extremamente lenta e freqüentemente fica saturada pela comunicação de uns poucos nodos, entretanto, por sua simplicidade, baixos custos e aprimoramentos na tecnologia tem-se popularizados nos últimos anos,

61 MIMD Memória Distribuída MD Cluster Beowulf É uma denominação para Cluster de baixo custo; Baseados em hardware de computadores pessoais; A tecnologia de conexão é Ethernet, TCP-IP, LAN; Elementos de software livres e de código aberto (Sistema Operacional: Linux, MPI, FORTRAN, C) Este tipo de hardware têm-se convertido no carro chefe das máquinas paralelas nos últimos anos.

62 MIMD Memória Distribuída MD Cluster Beowulf Vantagens: Podem ser construídas maquinas de alto desempenho a baixo custo; Processadores mais potentes podem ser incorporados a estas maquinas assim estejam disponíveis; Os softwares deste tipo de maquinas são continuamente atualizados e melhorados; Rede de interconexão aprimoradas: Ethernet para Gigabit Ethernet.

63 MIMD Memória Distribuída MD Cluster Beowulf

64 MIMD Memória Distribuída MD Comunicação e Roteamento Uma questão que deve ser estudada ao analisar as comunicações em sistemas de memória distribuída é o roteamento, Se dois nodos estiverem diretamente conectados, como os dados serão transmitidos entre eles? O problema do roteamento pode ser dividido em: Se existirem múltiplas rotas para unir dois nodos qual rota será escolhida? Como os nodos intermédios encaminharam as mensagens?

65 MIMD Memória Distribuída MD Seleção da rota O processo de seleção de rotas utiliza algoritmos de otimização visando escolher a rota mais curta, A maioria dos sistemas utilizam algoritmos determinísticos de seleção de rotas, i. e., se o nodo A se comunica com o nodo B então a rota de comunicação será sempre a mesma, e será aquela que utiliza menos linhas de conexão.

66 MIMD Memória Distribuída MD Encaminhamento de mensagens O nodo A envia uma mensagem ao nodo C, e o nodo B se encontra entre eles dois, Existem dois enfoques básicos: store and forward (sf): o nodo B recebe a mensagem inteira e então encaminha ao nodo C. cut through (ct): cada vez que o nodo B recebe uma peça da mensagem (pacote) a encaminha ao nodo C.

67 MIMD Memória Distribuída MD Encaminhamento de mensagens Store and forward Tempo Nodo A Nodo B Nodo c 0 z y x w 1 z y x w 2 z y x w 3 z y x w 4 z y x w 5 z y x w 6 z y x w 7 z y x w 8 z y x w

68 MIMD Memória Distribuída MD Encaminhamento de mensagens Store and forward A mensagem demora o dobro do tempo que demoraria se os nodos fossem adjacentes, Maior consumo de memória nos nodos intermédios, Pacotes mais pequenos, os pacotes intermédios não contem informação de endereçamento.

69 MIMD Memória Distribuída MD Encaminhamento de mensagens Cut through Tempo Nodo A Nodo B 0 z y x w 1 z y x w 2 z y x w 3 z y x w z y x w 4 5 Nodo c z y x w

70 MIMD Memória Distribuída MD Encaminhamento de mensagens Cut through a mensagem demora praticamente o mesmo tempo que se os nodos fossem adjacentes (mais o tempo de enviar um pacote), não precisa de memória nos nodos intermédios, pacotes mais grandes, todos os pacotes devem carregar informação de endereçamento. A maioria dos sistemas utiliza alguma variante ct para o encaminhamento de mensagens.

71 Distribuída vs Compartilhada Escabalabilidade Coerência de Memória Comunicação e Roteamento Memória Compartilhada Memória Distribuída Difícil Fácil Problema - - Problema

72 MIMD Memória Distribuída Memória Compartilhada UMA SMPs NUMA Dinâmicas Omega Estáticas Linear, Grade Anel, Toroide Multicore Hipercubo Clusters FUTURO MIMD Híbridas MC + MD Clusters Multicore

73 MD- Grids Computacionais O que são Grids Computacionais Um modelo computacional emergente, baseado em criar uma máquina paralela virtual com alta taxa de processamento, a partir de várias máquinas interconectadas numa rede local ou de longa distância; Surgiram em meados da década de 90 com a promessa de viabilizar a execução de aplicações paralelas em recursos geograficamente dispersos e pertencentes a múltiplas organizações;

74 MD- Grids Computacionais O que são Grids Computacionais De forma geral os Grids potencializam a utilização dos recursos inativos, ou seja ciclos de CPU e/ou armazenamento em disco, de um grande número de computadores, como por exemplo computadores de escritório, Os Grids computacionais objetivam transformar estes computadores num cluster virtual embebido em uma infra-estrutura de comunicações.

75 MD- Grids Computacionais Objetivos dos Grids Computacionais 1. Fornecer uma plataforma muito mais barata para execução de aplicações distribuídas, (mais barata que os supercomputadores paralelos por exemplo) 2. Possibilitar (através da aglomeração de recursos dispersos) a execução de aplicações paralelas em uma escala simplesmente impossível em um único supercomputador 3. Aproveitar a grande quantidade de recursos computacionais disponíveis.

76 MD- Grids Computacionais os Grids são mais distribuídos, diversos e complexos que outras plataformas. Características de Grids: Heterogeneidade: Os componentes que formam a infraestrutura tendem ser extremamente heterogêneos (hardaware e software) Alta dispersão geográfica: Essa característica se refere a escala que um Grid pode atingir (escala global)

77 MD- Grids Computacionais Características de Grids... Compartilhamento: informação, armazenamento, processador,... aplicações, Múltiplos domínios administrativos: Grids congregam recursos de várias instituições (diferentes políticas de acesso e uso de serviços) Controle distribuído: Tipicamente não há uma única entidade que tenha poder sobre todo o Grid.

78 MD- Grids Computacionais A utilização de Grids introduz os seguintes problemas: recursos computacionais não são administrados centralmente, dificuldade no gerenciamento de usuários, necessidade de acesso remoto aos recursos, diversidade operacionais, de arquiteturas e dificuldades qualidade. em proporcionar serviços sistemas de

79 MD- Grids Computacionais Principais middlewares de computação em grid: Globus (http://www.globus.org/ ): conjunto de serviços que permitem a submissão e controle de aplicações, descoberta de recursos, movimentação de dados e segurança no ambiente do grid. Tendo sido a solução de maior impacto na comunidade da computação de alto desempenho, o Globus e os protocolos definidos em sua arquitetura tornaram-se um padrão como infra-estrutura para computação em grid (escopo amplio).

80 MD- Grids Computacionais Principais middlewares de computação em grid: MyGrid (http://www.mygrid.org.uk/): uma plataforma simples, completa e segura; um intento de popularizar o uso de grids para executar aplicações paralelas leves, chamadas bag-of-tasks (aplicações cujas tarefas são independentes, podendo ser executadas em qualquer ordem) ; aplicações bag-of-task se adéquam melhor a ampla distribuição, heterogeneidade e dinamicidade do Grid, e resolvem vários problemas importantes, tais como mineração de dados, processamento genômico, pesquisa massiva (como quebra de chaves criptográficas), simulações Monte Carlo, e manipulação de imagem (como tomografia).

81 MD- Grids Computacionais Principais middlewares de computação em grid: Condor(http://www.cs.wisc.edu/condor/): é um middleware de aproveitamento dos ciclos ociosos de um conjunto de estações de trabalho em uma rede institucional (Condor pool), Com a utilização desses pools em diversas instituições, surgiram diversos mecanismos para o compartilhamento de recursos disponíveis em diferentes instituições e domínios, antes mesmo do surgimento do conceito de computação em grid; Tendo sido um esforço pioneiro (1984) e se adaptado à evolução das perspectivas da computação de alta performance para a computação em grid, o projeto Condor tem, em sua história, uma série de lições sobre os problemas gerenciais e operacionais da criação e utilização de grids computacionais.

82 MD- Grids Computacionais Principais middlewares de computação em grid: Entropia e distributed.net São exemplos de soluções que utilizam middlewares próprios para formar um grid proprietário, Através da instalação voluntária do middleware em máquinas ao redor do globo, o sistema ganha acesso ao seu poder computacional ocioso,

83 MD- Grids Computacionais Principais middlewares de computação em grid: Entropia e distributed.net o controle do acesso ao grid é centralizado na figura de uma instituição que possui o grid. Apenas aplicações submetidas pelos proprietários do grid têm acesso aos recursos, Principalmente dedicados a aplicações científicas, O projeto reune 6 milhões de computadores em tarefas de analise de dados para busca de vida extraterrestre.

84 MD- Grids Computacionais Principais middlewares de computação em grid:

Arquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França

Arquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França Arquitetura NUMA 1 Daniel de Angelis Cordeiro INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França 6 de Outubro de 2010 1 Baseado em slides feitos por Christiane Pousa

Leia mais

Introdução às arquiteturas paralelas e taxonomia de Flynn

Introdução às arquiteturas paralelas e taxonomia de Flynn Introdução às arquiteturas paralelas e taxonomia de Flynn OBJETIVO: definir computação paralela; o modelo de computação paralela desempenhada por computadores paralelos; e exemplos de uso da arquitetura

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização Básica B de (Parte V, Complementar)

Leia mais

Capítulo 8 Arquitetura de Computadores Paralelos

Capítulo 8 Arquitetura de Computadores Paralelos Capítulo 8 Arquitetura de Computadores Paralelos Necessidade de máquinas com alta capacidade de computação Aumento do clock => alta dissipação de calor Velocidade limitada dos circuitos => velocidade da

Leia mais

Sistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN

Sistemas Paralelos e Distribuídos. Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN Sistemas Paralelos e Distribuídos Prof. Jorge Dantas de Melo Depto. Eng. Comp. e Automação CT - UFRN Conceitos preliminares Paralelismo refere-se a ocorrência simultânea de eventos em um computador Processamento

Leia mais

Programação em Memória Compartilhada com OpenMP

Programação em Memória Compartilhada com OpenMP Programação em Memória Compartilhada com OpenMP Esbel Tomás Valero Orellana Bacharelado em Ciência da Computação Departamento de Ciências Exatas e Tecnológicas Universidade Estadual de Santa Cruz evalero@uesc.br

Leia mais

CAPÍTULO 2 ORGANIZAÇÃO DE COMPUTADORES

CAPÍTULO 2 ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 2 ORGANIZAÇÃO DE COMPUTADORES 2.1 Organização de um Computador Típico : Armazena dados e programas. Processador (CPU - Central Processing Unit): Executa programas armazenados na memória, interpretando

Leia mais

ALGORÍTMOS PARALELOS (Aula 2) LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES

ALGORÍTMOS PARALELOS (Aula 2) LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES ALGORÍTMOS PARALELOS (Aula 2) Neyval C. Reis Jr. OUTUBRO/2004 LCAD Laboratório de Computação de Alto Desempenho DI/UFES Programa do Curso LCAD 1. Introdução 2. Arquitetura de Computadores 3. Arquiteturas

Leia mais

Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware

Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware Sistemas Distribuídos: Conceitos e Projeto Classificação de Sistemas Distribuídos e Middleware Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA

Leia mais

Máquinas Multiníveis

Máquinas Multiníveis Infra-Estrutura de Hardware Máquinas Multiníveis Prof. Edilberto Silva www.edilms.eti.br edilms@yahoo.com Sumário Conceitos básicos Classificação de arquiteturas Tendências da tecnologia Família Pentium

Leia mais

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede Prof. Samuel Souza } Monolíticas Aplicações em um computador centralizado } Em Rede Aplicações com comunicação em rede } Distribuídas Comunicação e cooperação em rede } Aplicações que são funcionalmente

Leia mais

Sistemas Distribuídos Conceitos HW e SW. Edeyson Andrade Gomes www.edeyson.com.br

Sistemas Distribuídos Conceitos HW e SW. Edeyson Andrade Gomes www.edeyson.com.br Sistemas Distribuídos Conceitos HW e SW Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Roteiro da Aula Conceitos de Hardware Conceitos de Software Combinações de SW e HW 3 Sistemas Distribuídos

Leia mais

Projetos I Resumo de TCC. Luiz Rogério Batista De Pieri Mat: 0413829 5

Projetos I Resumo de TCC. Luiz Rogério Batista De Pieri Mat: 0413829 5 Projetos I Resumo de TCC Luiz Rogério Batista De Pieri Mat: 0413829 5 MAD RSSF: Uma Infra estrutura de Monitoração Integrando Redes de Sensores Ad Hoc e uma Configuração de Cluster Computacional (Denise

Leia mais

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução

Resumo. Introdução Cluster Cluster Beowulf Curiosidades Conclução Cluster Resumo Introdução Cluster Cluster Beowulf Curiosidades Conclução Introdução Sua empresa esta precisando fazer um grande processamento; As Nuvens existentes não são suficientes para sua empresa;

Leia mais

Desenvolvimento de Programas Paralelos para Máquinas NUMA: Conceitos e Ferramentas

Desenvolvimento de Programas Paralelos para Máquinas NUMA: Conceitos e Ferramentas 1 Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação em Ciência da Computação Desenvolvimento de Programas Paralelos para Máquinas NUMA: Conceitos

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES 1 ARQUITETURA DE COMPUTADORES U C P Prof. Leandro Coelho Plano de Aula 2 Aula Passada Definição Evolução dos Computadores Histórico Modelo de Von-Neumann Básico CPU Mémoria E/S Barramentos Plano de Aula

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais SISTEMAS COM MÚLTIPLOS PROCESSADORES LIVRO TEXTO: CAPÍTULO 13, PÁGINA 243 Prof. Pedro Luís Antonelli Anhanguera Educacional INTRODUÇÃO Arquiteturas que possuem duas ou mais CPUs interligadas

Leia mais

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas:

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas: Computadores de alto-desempenho são utilizados em diversas áreas: - análise estrutural; - previsão de tempo; - exploração de petróleo; - pesquisa em fusão de energia; - diagnóstico médico; - simulações

Leia mais

Comparação SDs X Scs

Comparação SDs X Scs Prof. Alexandre Lima Sistemas Distribuídos Cap 9 1/7 Comparação SDs X Scs Distribuição inerente Economia Velocidade Confiabilidade Crescimento incremental Descrição Algumas aplicações envolvem máquinas

Leia mais

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas MIMD. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas MIMD Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Arquiteturas Paralelas (SISD) Single Instruction Stream, Single Data Stream: Monoprocessador

Leia mais

slide 0 Algoritmos Paralelos

slide 0 Algoritmos Paralelos slide 0 Algoritmos Paralelos Slide 2 Demanda por Velocidade Computational Demanda contínua por maior rapidez computational das máquinas que as atualmente disponíveis. As áreas que exigem maior rapidez

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano 2012-1

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano 2012-1 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES Prof. Dr. Daniel Caetano 2012-1 Lembretes Compreender o funcionamento da Arquitetura Superpipeline Compreender

Leia mais

Organização de Computadores 1. Prof. Luiz Gustavo A. Martins

Organização de Computadores 1. Prof. Luiz Gustavo A. Martins Organização de Computadores 1 1 - INTRODUÇÃO Prof. Luiz Gustavo A. Martins Arquitetura Define os elementos que impactuam diretamente na execução lógica do programa. Corresponde aos atributos visíveis veis

Leia mais

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro Introdução Sistemas Operacionais 1 Sistema Operacional: Um conjunto de programas, executado pelo computador como os outros programas. Função: Controlar o funcionamento do computador, disponibilizando seus

Leia mais

Professores: Aula 10. Lúcia M. A. Drummond Simone de Lima Martins. Conteúdo: Arquiteturas Avançadas. - Arquiteturas RISC - Processamento Paralelo

Professores: Aula 10. Lúcia M. A. Drummond Simone de Lima Martins. Conteúdo: Arquiteturas Avançadas. - Arquiteturas RISC - Processamento Paralelo 1 Professores: Aula 10 Lúcia M. A. Drummond Simone de Lima Martins Conteúdo: Arquiteturas Avançadas - Arquiteturas RISC - Processamento Paralelo 2 Arquiteturas RISC Reduced Instruction Set Computer se

Leia mais

Aspectos de Programação Paralela em Máquinas NUMA

Aspectos de Programação Paralela em Máquinas NUMA Aspectos de Programação Paralela em Máquinas NUMA Alexandre Carissimi 1 Fabrice Dupros 2 Jean-François Méhaut 3 Rafael Vanoni Polanczyk 1 1 Instituto de Informática UFRGS Caixa Postal 15.064 Porto Alegre

Leia mais

4 Computação Paralela 4.1. Introdução

4 Computação Paralela 4.1. Introdução 4 Computação Paralela 4.1. Introdução Nos últimos anos observa-se uma tendência cada vez maior do aumento da demanda computacional na resolução de grandes problemas. Exemplos de aplicações que exigem alto

Leia mais

2. NÍVEL DE SISTEMA OPERACIONAL

2. NÍVEL DE SISTEMA OPERACIONAL 2. NÍVEL DE SISTEMA OPERACIONAL Nos períodos anteriores foram mostrados os níveis iniciais da organização de um computador, quando vimos em Circuitos Digitais os detalhes do Nível 0 (zero) de Lógica Digital.

Leia mais

Multicomputadores. Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação CECOMP

Multicomputadores. Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação CECOMP Multicomputadores Introdução Vimos que existem dois tipos de processadores paralelos MIMD: Multiprocessadores. Multicomputadores. Nos multiprocessadores, existe uma memória compartilhada que pode ser acessada

Leia mais

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software. Prof. MSc.

Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software. Prof. MSc. Sistemas Operacionais Arquitetura e organização de sistemas operacionais: Uma visão estrutural hardware & software Prof. MSc. Hugo Souza Continuando nossas aulas relativas ao Módulo 1, veremos a seguir

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos onteúdo Sistemas Distribuídos material baseado em slides dos Profs. Avelino Zorzo, elso osta, Fernando Dotti e Luiz Gustavo Fernandes e no livro: Distributed Operating Systems - oncepts and Design - Pradeep

Leia mais

hvbacellar@gmail.com Palavras-chave Cluster; Beowulf; OpenMosix; MPI; PVM.

hvbacellar@gmail.com Palavras-chave Cluster; Beowulf; OpenMosix; MPI; PVM. Cluster: Computação de Alto Desempenho Hilário Viana Bacellar Instituto de Computação, Universidade Estadual de Campinas Av. Albert Einstein 1251, Cidade Universitária, CEP 13083-970 Campinas, SP, Brasil

Leia mais

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

Ricardo Gonçalves 2013/2014. Arquitecturas Multicore

Ricardo Gonçalves 2013/2014. Arquitecturas Multicore Ricardo Gonçalves 2013/2014 Arquitecturas Multicore Outline Introdução Processador Multi-core: o que é? Do multi-processador ao multi-core Evolução dos processadores multi-core Arquitecturas multi-core

Leia mais

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados Organização de um Computador Típico Memória: Armazena dados e programas. Processador (CPU - Central Processing

Leia mais

REDES DE COMPUTADORES HISTÓRICO E CONCEITOS

REDES DE COMPUTADORES HISTÓRICO E CONCEITOS REDES DE COMPUTADORES HISTÓRICO E CONCEITOS BREVE HISTÓRICO A década de 60 Surgiram os primeiros terminais interativos, e os usuários podiam acessar o computador central através de linhas de comunicação.

Leia mais

Computador Digital Circuitos de um computador (Hardware)

Computador Digital Circuitos de um computador (Hardware) Computador Digital SIS17 - Arquitetura de Computadores (Parte I) Máquina que pode resolver problemas executando uma série de instruções que lhe são fornecidas. Executa Programas conjunto de instruções

Leia mais

Unidade 13: Paralelismo:

Unidade 13: Paralelismo: Arquitetura e Organização de Computadores 1 Unidade 13: Paralelismo: SMP e Processamento Vetorial Prof. Daniel Caetano Objetivo: Apresentar os conceitos fundamentais da arquitetura SMP e alguns detalhes

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Índice 1- Introdução 3- Memórias 4- Dispositivos

Leia mais

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2) Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema

Leia mais

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01 Unidade Central de Processamento (CPU) Processador Renan Manola Introdução ao Computador 2010/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória Principal

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 SISTEMA DE INTERCONEXÃO (BARRAMENTOS) Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Componentes estruturais: Memória Principal Unidade de Processamento Central

Leia mais

O que é Grid Computing

O que é Grid Computing Grid Computing Agenda O que é Grid Computing Grid vs Cluster Benefícios Tipos de Grid Aplicações Ferramentas e padrões Exemplos no mundo Exemplos no Brasil Grid no mundo dos negócios Futuro O que é Grid

Leia mais

Aula 26: Arquiteturas RISC vs. CISC

Aula 26: Arquiteturas RISC vs. CISC Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos

Leia mais

Memória compartilhada (shared memory): - o espaço de endereçamento é único; - comunicação através de load e store nos endereços de memória.

Memória compartilhada (shared memory): - o espaço de endereçamento é único; - comunicação através de load e store nos endereços de memória. 4. Arquiteturas ID áquinas ID (ultiple Instruction ultiple Data) são arquiteturas caracterizadas pela execução simultânea de múltiplos fluxos de instruções. Essa capacidade deve-se ao fato de que são construídas

Leia mais

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS

Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS Prof. Marcelo de Sá Barbosa SISTEMAS DISTRIBUIDOS 1. Introdução a supercomputação 2. Visão geral de Mainframe 3. Cluster de computadores 4. Cluster Beowulf considerações de projeto 5. Cluster x Grid 6.

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,

Leia mais

Supercomputadores dominavam o mercado

Supercomputadores dominavam o mercado Clusters e Grids Introdução Supercomputadores dominavam o mercado Alto custo Requerem mão de obra muito especializada Desenvolvimento de microprocessadores poderosos a um baixo custo Desenvolvimento de

Leia mais

Introdução. Capítulo 1

Introdução. Capítulo 1 Introdução Capítulo 1 Sistemas Distribuídos : Definição (1) Sistema distribuído consiste de uma coleção de computadores independentes ligados por algum tipo de meio de comunicação e equipados com software

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

Edeyson Andrade Gomes. www.edeyson.com.br

Edeyson Andrade Gomes. www.edeyson.com.br Sistemas Operacionais Histórico e Estruturas Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Histórico de SOs Tipos de SOs Estruturas de SOs 2 Histórico de SOs Baseado em Francis Machado e Luiz

Leia mais

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 3 - ARQUITETURA DE SISTEMAS DISTRIBUÍDOS 1 INTRODUÇÃO Considerando que os Sistemas Distribuídos são constituídos de vários processadores, existem diversas formas de organizar o hardware de tais

Leia mais

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto

Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Disciplina: Sistemas Operacionais - CAFW-UFSM Professor: Roberto Franciscatto Introdução É preciso conhecer a estrutura de um sistema de computação antes que possamos explorar os detalhes de sua operação.

Leia mais

Classificação Quanto. Sistemas de Lotes (2) Sistemas de Lotes (3)

Classificação Quanto. Sistemas de Lotes (2) Sistemas de Lotes (3) 1 Mono e multiprogramação Introdução Classificação (Aula 2) Recap Sistemas Máquina Profa. Patrícia Gerenciador D. CostaLPRM/DI/UFES Provê Fornece Compartilhamento programador máquina justa recursos Operacionais

Leia mais

1.2 Tipos de Sistemas Operacionais

1.2 Tipos de Sistemas Operacionais 1.2 Tipos de Operacionais Tipos de Operacionais Monoprogramáveis/ Monotarefa Multiprogramáveis/ Multitarefa Com Múltiplos Processadores 1.2.1 Monoprogramáveis/Monotarefa Os primeiros sistemas operacionais

Leia mais

RISC X CISC - Pipeline

RISC X CISC - Pipeline RISC X CISC - Pipeline IFBA Instituto Federal de Educ. Ciencia e Tec Bahia Curso de Analise e Desenvolvimento de Sistemas Arquitetura de Computadores 25 e 26/30 Prof. Msc. Antonio Carlos Souza Referências

Leia mais

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01 Introdução à Arquitetura de Computadores Renan Manola Introdução ao Computador 2010/01 Introdução Conceitos (1) Computador Digital É uma máquina que pode resolver problemas executando uma série de instruções

Leia mais

Programação Paralela

Programação Paralela rogramação aralela FEU 2. Arquitecturas de omputadores e rogramação aralela Arquitecturas de omputadores Taxonomia de Flynn (extra livro recomendado) Base da Taxonomia: D: data stream (fluxo de acesso

Leia mais

Caracterização de desempenho em programas paralelos

Caracterização de desempenho em programas paralelos Caracterização de desempenho em programas paralelos Esbel Tomás Valero Orellana Bacharelado em Ciência da Computação Departamento de Ciências Exatas e Tecnológicas Universidade Estadual de Santa Cruz evalero@uesc.br

Leia mais

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Conceitos e Arquitetura Vantagens das Arquiteturas C/S (em relação

Leia mais

PROCESSADOR. Montagem e Manutenção de Microcomputadores (MMM).

PROCESSADOR. Montagem e Manutenção de Microcomputadores (MMM). PROCESSADOR Montagem e Manutenção de Microcomputadores (MMM). INTRODUÇÃO O processador é o C.I. mais importante do computador. Ele é considerado o cérebro do computador, também conhecido como uma UCP -

Leia mais

Multiprocessamento. Multiprocessadores com memória distribuída (multicomputador)

Multiprocessamento. Multiprocessadores com memória distribuída (multicomputador) Multiprocessamento Multiprocessadores com memória distribuída (multicomputador) Conjunto de processadores, cada qual com sua memória local Processadores se comunicam por troca de mensagens, via rede de

Leia mais

Arquitetura de Von Neumann e os Computadores Modernos

Arquitetura de Von Neumann e os Computadores Modernos Arquitetura de Von Neumann e os Computadores Modernos Arquitetura de Computadores e Software Básico Aula 5 Flávia Maristela (flaviamsn@ifba.edu.br) Arquitetura de Von Neumann e as máquinas modernas Onde

Leia mais

Profs. Deja e Andrei

Profs. Deja e Andrei Disciplina Sistemas Distribuídos e de Tempo Real Profs. Deja e Andrei Sistemas Distribuídos 1 Conceitos e Projetos de Sistemas Distribuídos Objetivos: Apresentar uma visão geral de processamento distribuído,

Leia mais

Fesp - Tópicos Avançados II - Switching

Fesp - Tópicos Avançados II - Switching SWITCHING Quando o ethernet foi originalmente desenhado, os computadores eram lentos e as redes eram pequenas. Portanto, uma rede rodando a 10 mbps era mais que suficiente para qualquer aplicação. Atualmente,

Leia mais

SIS17 - Arquitetura de Computadores

SIS17 - Arquitetura de Computadores SIS17 - Arquitetura de Computadores Organização Básica B de Computadores (Parte I) Organização Básica B de Computadores Composição básica b de um Computador eletrônico digital Processador Memória Memória

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Curso de Tecnologia em Redes de Computadores Disciplina: Redes I Fundamentos - 1º Período Professor: José Maurício S. Pinheiro AULA 6: Switching Uma rede corporativa

Leia mais

Arquitetura de Computadores. Professor: Vilson Heck Junior

Arquitetura de Computadores. Professor: Vilson Heck Junior Arquitetura de Computadores Professor: Vilson Heck Junior Agenda Conceitos Estrutura Funcionamento Arquitetura Tipos Atividades Barramentos Conceitos Como já discutimos, os principais componentes de um

Leia mais

Introdução a Computação

Introdução a Computação O que é um SO? Introdução a Computação Sistemas Operacionais PII Consiste em: Hardware Programas de Sistema Programas de Aplicativos 1 2 O que é um SO? Hardware não proporciona controle de alto nível disponível

Leia mais

Nível do Sistema Operacional

Nível do Sistema Operacional Nível do Sistema Operacional (Aula 14) Introdução a Sistemas Operacionais Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/1 Introdução Hardware Provê os recursos básicos

Leia mais

Topologia de rede Ligação Ponto-a-Ponto

Topologia de rede Ligação Ponto-a-Ponto TIPOS DE REDE Tipos de Redes Locais (LAN - Local Area Network), Redes Metropolitanas (MAN - Metropolitan Area Network) e Redes Remotas (WAN - Wide Area Network). Redes que ocupam um pequeno espaço geográfico

Leia mais

Multi-processamento. Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores

Multi-processamento. Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores Multi-processamento Arquitecturas MIMD de memória partilhada Multi-cores heterogéneos Multi-processadores Arquitecturas MIMD de memória distribuída Massive Parallel Computers Sistemas distribuídos Ainda

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 4 - CLUSTER DE COMPUTADORES 1. INTRODUÇÃO Grande parte do tempo, os computadores que utilizamos encontram-se ociosos, ou seja, sem nada para processar. Isso se deve, em grande parte, pelas aplicações

Leia mais

Capítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos

Capítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos Capítulo 8 Sistemas com Múltiplos Processadores 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos 1 Sistemas Multiprocessadores Necessidade contínua de computadores mais rápidos modelo

Leia mais

Estrutura de um Rede de Comunicações. Redes de comunicação. de Dados. Network) Area. PAN (Personal( Redes de. de dados

Estrutura de um Rede de Comunicações. Redes de comunicação. de Dados. Network) Area. PAN (Personal( Redes de. de dados Fundamentos de Estrutura de um Rede de Comunicações Profa.. Cristina Moreira Nunes Tarefas realizadas pelo sistema de comunicação Utilização do sistema de transmissão Geração de sinal Sincronização Formatação

Leia mais

Introdução Evolução dos Sistemas de Computação Redes de Computadores Parâmetros de Comparação de Redes Linhas de Comunicação Topologias

Introdução Evolução dos Sistemas de Computação Redes de Computadores Parâmetros de Comparação de Redes Linhas de Comunicação Topologias Isac Ferreira Introdução Evolução dos Sistemas de Computação Redes de Computadores Parâmetros de Comparação de Redes Linhas de Comunicação Topologias 1950 Sistemas em batch 1960 Sistemas de tempo compartilhado

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:

Leia mais

Algoritmos e Programação Aula 01 Introdução a Computação

Algoritmos e Programação Aula 01 Introdução a Computação Algoritmos e Programação Aula 01 Introdução a Computação Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com Baseado no material do Prof. Luis Otavio Alvares e do Prof. Dr. Rodrigo Fernandes de Mello

Leia mais

Computação de Alta Perfomance com Software Livre (Clusters)

Computação de Alta Perfomance com Software Livre (Clusters) Computação de Alta Perfomance com Software Livre (Clusters) 3º Seminário de Tecnologia da Informação UCSal Marcelo Soares Souza (marcelo@cebacad.net) CEBACAD Centro Baiano de Computação de alto Desempenho

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

Banco de Dados Orientado a Objetos

Banco de Dados Orientado a Objetos Banco de Dados Orientado a Objetos MODELAGEM, ANÁLISE, PROJETO e CLASSIFICAÇÃO Interação combinando lógica, através de objetos que contém os dados. Estes divididos conforme seus tipos e métodos (classe),

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

Leia mais

Introdução à Engenharia de Computação

Introdução à Engenharia de Computação Introdução à Engenharia de Computação Tópico: O Computador como uma Máquina Multinível (cont.) José Gonçalves - LPRM/DI/UFES Introdução à Engenharia de Computação Máquina Multinível Moderna Figura 1 Máquina

Leia mais

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres

Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres Linguagem de Programação Orientada a Objeto Introdução a Orientação a Objetos Professora Sheila Cáceres Introdução a Orientação a Objetos No mundo real, tudo é objeto!; Os objetos se relacionam entre si

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Referências Caracterização de Sistemas Distribuídos Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Capítulo 9 Seções 9.1 a 9.3 Distributed Systems: concept

Leia mais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES Prof. Ms. Carlos José Giudice dos Santos cpgcarlos@yahoo.com.br www.oficinadapesquisa.com.br ESQUEMA DE UM COMPUTADOR Uma Unidade Central de

Leia mais

7 Processamento Paralelo

7 Processamento Paralelo 7 Processamento Paralelo Yes, of course, who has time? Who has time? But then if we do not ever take time, how can we ever have time? (The Matrix) 7.1 Introdução Classificação de Sistemas Paralelos Diversas

Leia mais

COMPUTAÇÃO PARALELA. uma visão geral. Guilherme Galante. v.2.0

COMPUTAÇÃO PARALELA. uma visão geral. Guilherme Galante. v.2.0 COMPUTAÇÃO PARALELA uma visão geral Guilherme Galante v.2.0 Guilherme Galante Bacharel em Informática Unioeste (2003) Mestre em Ciência da Computação UFRGS (2006) Professor Assistente do curso de Informática/Ciência

Leia mais

ALGORÍTMOS PARALELOS LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES

ALGORÍTMOS PARALELOS LCAD. Neyval C. Reis Jr. OUTUBRO/2004. Laboratório de Computação de Alto Desempenho DI/UFES ALGORÍTMOS PARALELOS Neyval C. Reis Jr. OUTUBRO/2004 LCAD Laboratório de Computação de Alto Desempenho DI/UFES Programa do Curso LCAD 1. Introdução 2. Arquitetura de Computadores 3. Arquiteturas de Sistemas

Leia mais

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 6 - ARQUITETURAS AVANÇADAS DE COMPUTADORES 1. INTRODUÇÃO As arquiteturas dos processadores têm evoluído ao longo dos anos, e junto com ela o conceito de arquitetura avançada tem se modificado. Nos

Leia mais

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº

Turno/Horário Noturno PROFESSOR : Salomão Dantas Soares AULA Apostila nº UNIDADE 1I: SISTEMA COMPITACIONAL Elementos hardware e periféricos Um sistema computacional consiste num conjunto de dispositivos eletrônicos (hardware) capazes de processar informações de acordo com um

Leia mais

11- Tornar transparente para o processador os detalhes de operação e controle dos dispositivos periféricos.

11- Tornar transparente para o processador os detalhes de operação e controle dos dispositivos periféricos. 1- O componente principal e chamado de célula de bit. 2- A célula de bit é um circuito eletrônico que armazena um bit de informação. 3- O menor conjunto de células de bits que é acessado pelo processador

Leia mais

IBM FlashSystem Atendendo ao pedido de desempenho no setor de telecomunicações

IBM FlashSystem Atendendo ao pedido de desempenho no setor de telecomunicações IBM Systems and Technology Group Abril de 2013 White Paper de Liderança em Ideias Inovadoras IBM FlashSystem Atendendo ao pedido de desempenho no setor de telecomunicações 2 IBM FlashSystem Atendendo ao

Leia mais

Grades Computacionais: Uma Introdução Prática

Grades Computacionais: Uma Introdução Prática Grades Computacionais: Uma Introdução Prática Raphael Y. de Camargo Ricardo Andrade Departamento de Ciência da Computação Instituto de Matemática e Estatística Universidade de São Paulo, Brasil São Paulo,

Leia mais

Comunicação Dados: Conceitos e Evolução Prof. Valderi Leithardt www.inf.ufrgs.br/~vrqleithardt. Ulbra Canoas - 2012-2

Comunicação Dados: Conceitos e Evolução Prof. Valderi Leithardt www.inf.ufrgs.br/~vrqleithardt. Ulbra Canoas - 2012-2 Comunicação Dados: Conceitos e Evolução Prof. Valderi Leithardt www.inf.ufrgs.br/~vrqleithardt Ulbra Canoas - 2012-2 Apresentação Professor: Dissertação de Mestrado: Uma Plataforma para Integrar Dispositivos

Leia mais

ESCOLA SUPERIOR ABERTA DO BRASIL ESAB CURSO DE ESPECIALIZAÇÃO EM REDES DE COMPUTADORES DANIEL VAHID LIMA TOLOUEI

ESCOLA SUPERIOR ABERTA DO BRASIL ESAB CURSO DE ESPECIALIZAÇÃO EM REDES DE COMPUTADORES DANIEL VAHID LIMA TOLOUEI ESCOLA SUPERIOR ABERTA DO BRASIL ESAB CURSO DE ESPECIALIZAÇÃO EM REDES DE COMPUTADORES DANIEL VAHID LIMA TOLOUEI CLUSTERS COMPUTACIONAIS DE ALTO DESEMPENHO VILA VELHA - ES 2010 DANIEL VAHID LIMA TOLOUEI

Leia mais

8 Threads. 8.1 Introdução

8 Threads. 8.1 Introdução 1 8 Threads 8.1 Introdução Uma thread, também chamada de tarefa, pode ser definida como uma parte ou rotina de um processo em execução que compartilha o mesmo espaço de endereçamento, mas tem seu próprio

Leia mais

IDENTIFICAÇÃO MANUTENÇÃO

IDENTIFICAÇÃO MANUTENÇÃO IDENTIFICAÇÃO MANUTENÇÃO ESTRUTURA DOS MICROS PADRÃO PC AULA 01 Sobre aula 1 Números binários e hexadecimais Dispositivos digitais e analógicos Circuitos integrados Estrutura dos micros padrão PC Micros

Leia mais