Skip to content

Ordenação em memória secundaria de um arquivo binário com limite de memoria primária usada

Notifications You must be signed in to change notification settings

acmachado14/external-sorting

Repository files navigation




Descrição

Para ordenar grandes arquivos em memŕoia secundária, é preciso passar os valores presentes no arquivo para memória primária. Esse processo pode ocupar bastante da memória RAM do computador. Pensando nesse caso, esse algoritmo foi construído utilizando um limitador da memória principal, no qual o usuário escolhe o quanto da memória será usada durante a ordenação (Merge Sort Externo). Ademais, o programa faz o uso da compressão e descompressão do arquivo em binário para reduzir o custo de armazenamento.


Pré Requisitos

Basta ter algum compilador de C/C++ em sua máquina, sugestão: C CompileRun


Rodando

O projeto conta com três programas, sendo eles:

  1. Transformar um arquivo CSV em binário
make compile-conversion && make run-conversion
  1. Listar as informações presentes no arquivo
make compile-treatment && make run-treatment
  1. Ordenar o arquivo binário
make compile-ordering && make run-ordering

Resutaldos

Devido ao uso do limitador de memória RAM, é perceptível que quanto menos memória principal é usada mais será gasto com memória secundária e consequentemente terá um maior tempo de execução, devido a quantidade de arquivos temporários criados e o custo de acesso dos mesmos.

  • Tempo de Execução com 100000000 bytes de limite


  • Tempo de Execução com 1000000 bytes de limite


  • Tempo de Execução com 100000 bytes de limite


About

Ordenação em memória secundaria de um arquivo binário com limite de memoria primária usada

Resources

Stars

Watchers

Forks