Escolar Documentos
Profissional Documentos
Cultura Documentos
PROCESSA |
PROCESSA | || ||
MULTIPROCESSADOR
.MEMORIA COMPARTILHADA
.FORTEMENTE ACOPLADO
.REDE INTERCONECTADA
.LEITURA E ESCRITA NA MEMORIA
.MESMO SISTEMA OPERACIONAL
.TODOS OS PROCESSADORES ACESSAM TODOS OS DADOS
UMA
.UNIFORM MEMORY ACCES
.ACCESSO UNIFORME A MEMÓRIA
.MESMO CLOCK
.UM UNICO BARRAMENTO LIMITA O TAMANHO DO MULTIPROCESSADOR
.SWITCH CROSSBAR
.QUALQUER PROCESSADOR ACESSA QUALQUER MEMÓRIA SEM BLOQUEIO
.O NÚMERO DE PONTOS DE CRUZAMENTO CRESCE EM N^2
NUMA
.NON UNIFORM MEMORY ACCESS
.ACCESSO NÃO UNIFORME A MEMÓRIA
NC-NUMA
.ACESSA A MEMÓRIA REMOTA TODA VEZ QUE NÃO ESTIVER NA MEMÓRIA LOCAL
.BAIXO DESEMPENHO
CC-NUMA
.CACHE COHERENT NUMA
.CACHE COERENTE NUMA
.TEM A VER COM NÓS DE PROCESSAMENTO
.OS NÓS POSSUEM REDE DE INTERCONEXÃO
.MANTER UM BANCO DE DADOS QUE INFORMA ONDE ESTÁ CADA CACHE E EM QUAL
ESTADO ESTÁ
COMA
.CACHE ONLY MEMORY ACCESS
.ACESSO A MEMÓRIA SOMENTE POR CACHE
.ALOCAÇÃO NÃO PERTENCE AO PROCESSADOR
.MEMÓRIA INDIVIDUAL É CHAMADA DE MEMÓRIA DE ATRAÇÃO
.ENCONTRAR E DESCARTAR AS LINHAS DE CACHE
MULTICOMPUTADOR
.MEMÓRIA DISTRIBUIDA
.FRACAMENTE ACOPLADO
.CONECTADO POR REDE
.PASSAGEM DE MENSAGEM
.MULTICOMPUTADORES SÃO MANTIDOS JUNTOS POR REDE DE INTERCONEXÃO
.ARQUITETURAS
.CLUSTER
.CENTENAS/MILHARES DE PCS OU ESTAÇÕES DE TRABALHO CONECTADAS POR
UMA PLACA DE REDE
.CENTRALIZADO
.CONJUNTO DE PCS MONTADOS EM UMA GRANDE ESTANTE EM UMA
ÚNICA SALA
.DESCENTRALIZADO
.CONJUNTO DE PCS ESPALHADOS POR UMA UNIDADE COM UM EDIFÍCIO
OU LABORATÓRIO
.GRADE
.CLUSTER MUITO GRANDE, INTERNACIONAL, FRACAMENTE ACLOPADO E
HETEROGÊNEO
.MPP (MASSIVELY PARALLEL PROCESSORS)
.MILHARES DE NÓS(CPU E MEMÓRIA) INDEPENDENTES, CONECTADOS POR
UMA REDE PROPRIETÁRIA DE ALTA VELOCIDADE
.CPUS PADRONIZADAS COMO SEUS PROCESSADORES
-----
DECOMPOSIÇÃO
PROCESSOS CONCORENTES
.P1 EXECUTA E P2 ESPERA PARA USAR A CPU
.P2 EXECUTA E P1 ESPERA
PROCESSOS PARALELOS
.P1 E P2 EXECUTAM AO MESMO TEMPO
SISTEMA DISTRIBUIDO
.COLEÇÃO DE COMPUTADORES AUTÔNOMOS CONECTADOS POR UMA *REDE DE COMUNICAÇÃO*
QUE É PERCEBIDA PELOS USUÁRIOS COM UM SISTEMA ÚNICO QUE PROVÊ SERVIÇOS
DECOMPOSIÇÃO ->
.DIVIDIR O TRABALHO
.MAPEAR TAREFAS
.DISTRIBUIR DADOS
.GERENCIAR ACESSOS
.SINCRONIZAR PROCESSOS
.QUANTIDADE TOTAL DE TRABALHO = SOMA TUDO
.CAMINHO CRITICO: O CAMINHO QUE A SOMA SEJA MAIOR
.GMC(GRAU MEDIO DE CONCORRÊNCIA) = TOTAL / CRÍTICO
.GRAU MÁXIMO DE CONCORRÊNCIA = MAIOR NUMERO DE PROCESSOS AO MESMO TEMPO ->
MESMA LINHA GERALMENTE
TECNICAS:
.RECURSIVA -> DIVIDIR E CONQUISTAR
.QUICKSORT
1-SELECIONAR UM ELEMENTO(PIVOT) E PARTICIONAR A SEQUÊNCIA
EM DUAS SUBSEQUÊNCIAS: UMA MENOR QUE O PIVO E A OUTRA MAIOR OU
IGUAL.
2-CADA SUBSEQUÊNCIA É ORDENADA PELA CHAMADA RECURSIVA
QUICKSORT.
3-CADA CHAMADA RECURSIVA DIVIDE AINDA MAIS AS SEQUÊNCIAS.
4-A RECURSÃO TERMINA QUANDO CADA SUBSEQUÊNCIA CONTÉM APENAS
UM ÚNICO ELEMENTO.
.DECOMPOSIÇÃO EXPLORATÓRIA
.BUSCA EM UM ESPAÇO DE SOLUÇÕES
.JOGO DA VELHA
.EXPLORA TODOS OS POSSÍVEIS MOVIMENTOS A PARTIR DE UMA
CONFIGURAÇÃO INICIAL
TÉCNICAS DE MAPEAMENTO
.ESTÁTICO
.ANTES DA EXECUÇÃO
.TAMANHO DAS TAREFAS
.TAMANHO DOS DADOS
.CARACTERÍSTICAS DAS INTERAÇÕES
.PARADIGMA DE PROGRAMAÇÃO
.OQUE PARTICIONAR?
.PARTICIONAMENTO DE DADOS
.DISTRIBUIÇÃO DE BLOCOS
.ATRIBUI PARTES ADJACENTES UNIFORMES DA MATRIZ
.HÁ UMA LOCALIDADE DE INTERAÇÃO
.CADA PROCESSO RECEBE UM BLOCO
ADJACENTE(PRÓXIMO/VIZINHO) DE ENTRADA
.EX: LINHAS OU COLUNAS DE UMA MATRIZ
.BIDIMENSIONAL
.EX: CADA BLOCO UM ELEMENTO
.EX: CADA BLOCO DOIS/TRÊS ELEMENTOS
.EX: DADA UMA MATRIZ, UM PROGRAMA DEVE CALCULAR A
SOMA FATORIAL DE CADA LINHA DA MATRIZ
.<- SE A QUANTIDADE DE TRABALHO FOR DIFERENTE ISSO
PODE LEVAR A DESEQUILÍBRIOS DE CARGA
.DISTRIBUIÇÃO CÍCLICA
.PARTICIONA EM MAIS BLOCOS DO QUE PROCESSOS
.ATRIBUÍ AS TAREFAS DE MANEIRA ROND-ROBIN
.CADA PROCESSO TEM VÁRIOS BLOCOS NÃO
ADJACENTES(PRÓXIMO/VIZINHO)
.PROCESSOS TÊM TAREFAS DE TODAS AS PARTES DA MATRIZ
.EX: DADA UMA MATRIZ, UM PROGRAMA DEVE CALCULAR A
SOMA FATORIAL DE CADA LINHA -> (LINHA1: P1, LINHA2: P2,
LINHA3: P1, LINHA4: P2)
.PODE RESULTAR EM PROBLEMAS DE DESEMPENHO
.DISTRIBUIÇÃO ALEATÓRIA
.PARTICIONA EM MAIS BLOCOS DO QUE PROCESSOS
.BLOCOS DISTRIBUÍDOS DE MANEIRA UNIFORME
.BLOCOS DISTRIBUÍDOS DE MANEIRA ALEATÓRIA
.BALANCEAMENTO DE CARGA
.PARTICIONAMENTO DE TAREFAS
.PARTICIONA O GRAFO DE DEPENDÊNCIA
.TAREFAS ESTÁTICAS DE TAMANHO CONHECIDO
.DINÂMICO
.DURANTE A EXECUÇÃO
.CENTRALIZADO
.MESTRE TRABALHADORES
.TAREFAS EM UMA ESTRUTURA DE DADOS CENTRAL
.MESTRE GERENCIA O CONJUNTO DE TAREFAS
.TRABALHADORES RECEBEM TRABALHO (JUNTAM EM UMA NOVA
TAREFA NO PROCESSO MESTRE)
.ALGORITMO ORDENAÇÃO MATRIZ NXN
.DADA UMA MATRIZ, UM PROGRAMA DEVE ORDENAR OS VALORES
DE CADA LINHA. for(i=0;i<n;i++) sort(A[i], n)
.SELF SCHEDULING
.DISTRIBUÍDO
.TAREFAS SÃO DISTRIBUIDAS ENTRE PROCESSOS
.PROCESSO PODE ENVIAR OU RECEBER TRABALHO
.PROCESSOS TROCAM TAREFAS EM TEMPO DE EXECUÇÃO
-----
MODELOS
.PARALELISMO DE DADOS
.SPMD(SINGLE PROGRAM MULTIPLE DATA)
.TAREFAS SÃO MAPEADAS ESTATICAMENTE
.SENSÍVEL A FALHAS
.EX:DISTRIBUIR DADOS -> 4 PROCESSOS DIFERENTES -> RECOLHER DADOS
.MPMD(MULTIPLE PROGRAM MULTIPLE DATA)
.MÚLTIPLAS APLICAÇÕES SOBRE MÚLTIPLOS DADOS
.CADA TAREFA EXECUTA EM PARALELO
.EX: DADOS -> TAREFA -> RESULTADO (4 DIFERENTE). CADA TAREFA PODE
EXECUTAR O MESMO OU DIFERENTES PROGRAMAS DAS OUTRAS TAREFAS
.GRAFO DE TAREFAS
.UTILIZA UMA DIVISÃO RECURSIVA DO PROBLEMA INICIAL EM SUBPROBLEMAS
INDEPENDENTES (DISTRIBUI DADOS E RECOLHE DADOS)
.WORKPOOL DE PROCESSOS
.MESTRE-ESCRAVO
.MESTE GERENCIA O CONJUNTO DE TAREFAS
.WORKERS RECEBEM E EXECUTAM O TRABALHO
.PIPELINE
.DECOMPOSIÇÃO FUNCIONAL
.PROCESSOS EM SEQUÊNCIA
.INFORMAÇÃO COM O PROCESSO SEGUINTE
EX: DADOS->O->O->O->RESULTADO
.HÍBRIDO
.MAIS DE UM MODELO
.HIERARQUICAMENTE
.SEQUENCIALMENTE
----
DESEMPENHO