Algoritmo de Substituição de Páginas 3P:

Slides:



Advertisements
Apresentações semelhantes
Software Aging em uma Infraestrutura de Cloud Computing
Advertisements

SSC541 - SISTEMAS OPERACIONAIS I Aula 14 – Gerenciamento de Memória
Integridade de Dados em Memórias Cache
Organização de Computadores I
Introdução à Hierarquia de Memória
DESENVOLVIMENTO DE SISTEMAS PARA INTERNET
ARQUITETURAS DE COMPUTADORES II
Gerenciamento de Memória
Gerenciamento do Disco Gerenciamento do Buffer
Arquitetura de Sistemas Operacionais
Memórias Transacionais
Uma árvore de N chaves organizada em k chaves por página tem profundidade de Lema: O número de descendentes em qualquer nível da árvore é igual ao número.
Memórias cache CPU procura por dados em L1, depois em L2 e finalmente na memória principal CPU registradores ALU L1 cache barramento de cache barramento.
Inteligência Computacional para Otimização Marcone Jamilson Freitas Souza Departamento de Computação Universidade Federal de Ouro Preto
Avaliação de Sistemas Operacionais
SSC SISTEMAS OPERACIONAIS I Aula 12 – Gerenciamento de Memória 3
SSC SISTEMAS OPERACIONAIS I Aula 15 – Gerenciamento de Memória
WAR STORY Stripping Triangulations Luciana Oliveira e Silva
Universidade do Estado de Santa Catarina – CCT/UDESC
Sistemas Digitais Microprocessados
Gerência de Memória Algoritmos de Substituição de Páginas
Memória Virtual Sistemas Operacionais I
2- Entendendo o que é Arquitetura e Organização
Capítulo 9: Memória virtual
Influência dos Parâmetros de Controle no Desempenho de Algoritmos Adaptativos de Substituição de Páginas Edson Toshimi Midorikawa Ricardo Leandro Piantola.
Arquitectura de Computadores II
SISTEMAS OPERACIONAIS
SSC SISTEMAS OPERACIONAIS I Aula 11 – Gerenciamento de Memória 2
Fundamentos da Arquitetura de Computadores
Sistemas Operacionais
Sistemas Distribuídos
Aula 03 – BCC202 Análise de Algoritmos (Parte 1) Túlio Toffolo www
Gerência de Memória Virtual
Memória virtual Professor Esp. Diego André Sant’Ana
ANÁLISE DO PADRÃO DE ACESSOS À MEMÓRIA DE PROGRAMAS PARALELOS
Algoritmo Adaptativo de Substituição de Páginas
Caracterização de Cargas de Trabalho
Sistema de Gerenciamento de Confinamentos de Gado de Corte
Complexidade computacional
Hugo Henrique Cassettari Orientador: Edson Toshimi Midorikawa Trabalho de Mestrado, Janeiro de 2004 Escola Politécnica da Universidade de São Paulo Departamento.
Sistemas Operacionais
Introdução à Hierarquia de Memória
SISTEMAS OPERACIONAIS I
Experimentação Algorítmica
Gerenciamento de Memória (Algoritmos de Substituição de Páginas)
Circuitos Sequenciais
ARQUITETURAS DE COMPUTADORES II
DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Gerenciamento de Memória.
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2010 Integrantes: Professor Orientador: Co-orientador:
Como analisar um algoritmo
Ch7b-1 Capítulo Sistemas de Memória - Memória Virtual.
ARQUITETURAS E ORGANIZAÇÃO DE COMPUTADORES
PCS - Departamento de Engenharia de Computação e Sistemas Digitais Projeto de Formatura – Turmas 2008 Integrantes: Professor Orientador: Co-orientadores:
Gerenciamento de Memória
LFU (LEAST-FREQUENTLY-USED)
DB Buffer Management LEIC-Tagus – TDB 05/06 Bruno Azenha nº
Prof. André Luis M. Silva Hierarquia de Memória Prof. André Luis M. Silva
Análise Multiparamétrica do Overhead de Rede em Máquinas Virtuais WSO 2007 – Rio de Janeiro/RJ – 4 e 5 de julho de Análise Multiparamétrica do Overhead.
Funcionamento interno do computador
Arquitetura de Sistemas Operacionais
MEMÓRIA CACHE E TÉCNICAS DE MAPEAMENTO Capítulo 5
Berilhes Borges Garcia Algoritmos Uma ferramenta para resolver um problema de computação bem- especificado (O espírito da computação) Exemplo: ordenação.
Memória Cache.
Gerência de Memória Sidney Cunha de Lucena Baseado no livro
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Gerenciamento de Memória Capítulo Gerenciamento básico de memória 3.2 Troca de processos.
PSI – Práticas de Eletricidade e Eletrônica PSI2222 – 2º semestre 2010 Relógio Volta – Uma implementação Escola Politécnica Universidade de São Paulo Universidade.
Memória Virtual ARQUITETURAS DE COMPUTADORES II Prof. César Augusto M. Marcon.
Hierarquia de Memória – Parte 2 Prof. André Luis M. Silva
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
SISTEMAS OPERACIONAIS
Transcrição da apresentação:

Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock Hugo Henrique Cassettari Edson Toshimi Midorikawa EPUSP - Escola Politécnica da Universidade de São Paulo PCS - Departamento de Engenharia de Computação e Sistemas Digitais

Objetivo Apresentar o 3P: Um algoritmo adaptativo para substituição de páginas plenamente online, que procura aliar a eficiência de implementação do algoritmo Clock à eficiência de substituição do algoritmo LRU-WAR II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Apresentação Algoritmos de substituição de páginas Algoritmo 3P Algoritmos adaptativos Algoritmo LRU-WAR Soluções online Algoritmo 3P Esquema operacional Pontos de substituição Custo de implementação Avaliação de desempenho II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo de Substituição de Páginas Memória Virtual com Paginação Área de Swap (Disco) Problema da Substituição: Qual página deve ser retirada da memória principal? Memória Principal Algoritmo de Substituição de Páginas II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmos Adaptativos de Substituição Adaptam seu comportamento em uma execução Atuam de acordo com as características de acesso à memória detectadas Exemplos: SEQ (1997) EELRU – Early Eviction LRU (1999) DEAR – DEtection-based Adaptive Replacement (1999) AFC – Application/File-level Characterization (2000) UBM – Unified Buffer Management (2000) LRFU – Least Recently/Frequently Used (2001) LIRS – Low Inter-reference Recency Set (2002) ARC – Adaptive Replacement Cache (2003) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo LRU-WAR (Working Area Restriction) “LRU com Confinamento da Área de Trabalho” (2004 – I WSO) Procura detectar padrões de acesso seqüenciais Muitas faltas de página e baixa reutilização Área de trabalho: II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo LRU-WAR (Working Area Restriction) Utiliza LRU ou MRU-n Diferencia reuso imediato de localidade temporal II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Soluções Online Algoritmo Clock, ou Algoritmo do Relógio (1969) Algumas variações: GClock – Generalized Clock (1978) WSClock (1981) Two-Handed Clock (1982) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Propostas Adaptativas Online CAR – Clock with Adaptive Replacement (2004) Versão aproximada do algoritmo ARC, inspirado no 2Q Páginas recentemente reutilizadas são isoladas das demais CART – CAR with Temporal filtering (2004) Variação do algoritmo CAR Bit adicional para identificar páginas com reutilização constante Clock-Pro (2005) Versão aproximada do algoritmo LIRS Diferencia páginas “quentes” e “frias” através de bits adicionais II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo 3P “3 Ponteiros” – 3 Pointers Inspirado nos algoritmos Clock (implementação) e LRU-WAR (detecção de acessos seqüenciais) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo 3P Utiliza três ponteiros que se movimentam em conjunto CLOCK: Ponteiro para substituição Clock (pseudo-LRU) ANTECIPADO: Ponteiro para substituição precoce (pseudo-MRU) APAGADOR: Ponteiro para apagar bits de acesso (filtro de reuso imediato) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo 3P “Área Jovem” Contém páginas recém-carregadas em período de teste de reutilização (não necessariamente) Somente páginas não referenciadas em tal período podem ser substituídas pelo ponteiro ANTECIPADO II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo 3P Três estados de execução, como o LRU-WAR II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Algoritmo 3P Custo de implementação extremamente baixo Complexidade computacional de substituição equivalente à do Clock, variando de uma ordem O(1) a uma ordem O(n) Menor custo de implementação dentre todos os algoritmos adaptativos para substituição de páginas conhecidos II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Avaliação de Desempenho 1041 simulações realizadas com 16 programas II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Avaliação de Desempenho Melhores e piores resultados médios (algoritmos online) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Avaliação de Desempenho Diferenças de desempenho mais significativas II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Melhor desempenho médio obtido com o 3P: CS II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Melhor desempenho médio obtido com o 3P: CS II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Pior desempenho médio obtido com o 3P: Sprite II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Pior desempenho médio obtido com o 3P: Sprite II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Exemplo de caso médio: Grobner II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Gráficos de Desempenho (3P versus Clock) Exemplo de caso médio: Grobner II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Resultados Importantes O desempenho do 3P foi igual ou superior ao do Clock em 844 simulações (81,1% do total) O desempenho do 3P foi significativamente melhor que o do Clock – acima de 10% – em 356 simulações (34,2%) O desempenho do 3P foi significativamente pior que o do Clock – abaixo de 10% – em apenas 16 simulações (1,5%) II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Conclusão Algoritmo 3P Trabalhos futuros Agradecimentos Alternativa simples e viável Muito eficiente quando acessos seqüenciais predominam Picos negativos aceitáveis Custo de implementação extremamente baixo Trabalhos futuros Implementação prática do algoritmo em um sistema operacional Adaptação para outros tipos de memória cache Agradecimentos Scott Kaplan e Yannis Smaragdakis Song Jiang II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP

Contato ESCOLA POLITÉCNICA DA USP Hugo Henrique Cassettari: hugo.cassettari@poli.usp.br Edson Toshimi Midorikawa: edson.midorikawa@poli.usp.br ESCOLA POLITÉCNICA DA USP Departamento de Engenharia de Computação e Sistemas Digitais Laboratório de Arquitetura e Computação de Alto Desempenho Av. Prof. Luciano Gualberto, travessa 3, 158, Cidade Universitária CEP: 05508-900, São Paulo-SP www.lasb.pcs.poli.usp.br II WSO / 2005 – Algoritmo de Substituição de Páginas 3P: Acrescentando Adaptatividade ao Clock - EPUSP