Algoritmos e estruturas de dados

Disponível somente no TrabalhosFeitos
  • Páginas : 9 (2164 palavras )
  • Download(s) : 0
  • Publicado : 23 de março de 2012
Ler documento completo
Amostra do texto
Algoritmos e Estrutura de Dados 3

UFMG/ICEx/DCC

Trabalho Pr´tico 6
a
1o Semestre de 2011

Bacharelado

Esse trabalho pr´tico tem por objetivo familiarizar o aluno com conceitos de mem´ria secund´ria.
a
o
a

1

Motiva¸˜o do problema
ca

A motiva¸˜o do problema deste trabalho ´ a mesma que foi utilizada no Trabalho Pr´tico 5.
ca
e
a

2

Trabalho Pr´tico 6
aInforma¸˜es sobre localidade de referˆncia, como foi visto no trabalho anterior, podem ser empregadas com sucesso
co
e
no uso de cache, que ´ basicamente uma ´rea de armazenamento tempor´ria onde dados s˜o disponibilizados para
e
a
a
a
acesso r´pido. Quando um usu´rio do sistema requisita um dado, primeiramente ele verifica a cache, antes de
a
a
realizar o acesso ` mem´ria. Se o dado forencontrado, ent˜o ele ´ utilizado na cache em vez de busc´-lo no local
a
o
a
e
a
original. Essa situa¸˜o ´ conhecida como cache hit (acerto da cache). A porcentagem de acessos que resultam em
ca e
cache hits ´ conhecida como a taxa de acerto (hit rate ou hit ratio ) da cache. Por outro lado, quando a cache ´
e
e
consultada e n˜o cont´m o dado desejado, diz-se que ocorreu cache miss (falha dacache). Eventualmente, o dado
a
e
´ copiado do local original de armazenamento e inserido na cache, ficando pronto para o pr´ximo acesso.
e
o
O uso de cache pode melhorar o desempenho dos sistemas quando se tem uma porcentagem de acertos alta
(hit ratio alto ), evitando a busca do dado original em dispositivos mais lentos de mem´ria secund´ria. Logo a
o
a
cache deve ser um dispositivo deacesso r´pido cujo custo ´ caro e seu espa¸o, que normalmente ´ pequeno, deve
a
e
c
e
ser muito bem aproveitado buscando sempre o m´ximo de ocupa¸˜o.
a
ca
Nesse contexto, a entidade de educa¸˜o mencionada no TP5 deseja construir uma cache na mem´ria do seu
ca
o
servidor principal e conta com a sua ajuda para definir uma configura¸˜o que apresente o melhor custo/benef´
ca
ıcio.
Para issoser˜o utilizadas trˆs m´tricas em fun¸˜o do tamanho da cache definido em KBytes, s˜o elas: a) porcenta
e
e
ca
a
agem de acertos, b) porcentagem m´dia de espa¸o ocupado, c) ganho da cache calculado a partir da porcentagem
e
c
de acertos e espa¸o ocupado. Assim, para definir a configura¸˜o ideal antes de realizar o investimento, vocˆ dever´
c
ca
e
a
implementar um simulador de cache paramedir essas m´tricas variando o tamanho e a pol´
e
ıtica de substitui¸˜o
ca
dos dados quando a cache estiver cheia.
O simulador receber´ como parˆmetros: um arquivo de logs de v´
a
a
ıdeo, uma pol´
ıtica de substitui¸˜o e o tamanho
ca
da cache. O dado a ser armazenado na cache ´ o chunk de v´
e
ıdeo. Para cada chunk lido no log (linha), o simulador
dever´ verificar a sua existˆncia nacache, e ent˜o caso n˜o exista o chunk dever´ ser carregado. Se n˜o houver
a
e
a
a
a
a
espa¸o suficiente na cache para o novo chunk, um ou mais chunks contidos na cache devem ser substitu´
c
ıdos. A
decis˜o de qual chunk (s) ser´(˜o) substitu´
a
aa
ıdo(s), dever´ ser tomada de acordo a pol´
a
ıtica de substitui¸˜o de cache
ca
adotada. Trˆs po´
e
ıticas de substitui¸˜o dever˜o serimplementadas:
ca
a
• FIFO (First In First Out )
• LRU (Least Recently Used )
• Uma pol´
ıtica customizada a ser definida pelo aluno
O objetivo deste trabalho ´ tentar encontrar/implementar uma pol´
e
ıtica de substitui¸˜o customizada que seja
ca
melhor que `s demais pol´
a
ıticas nos testes a serem realizados variando o tamanho da cache. A defini¸˜o se uma
ca
pol´
ıtica ´ melhor quea outra, pode ser feita utilizando as m´tricas apresentadas anteriormente.
e
e
Observe que o simulador n˜o deve saber o futuro, ou seja, ele n˜o deve ler antecipadamente todo o log para
a
a
reter na cache os chunks com maior popularidade. As decis˜es da pol´
o
ıtica de substitui¸˜o devem ser tomadas
ca
considerando apenas o presente (a linha do log sendo lida) e o passado (as linhas...
tracking img