Um Compressor de Arquivos Paralelo Compatível com o Bzip2
Resumo
No cenário atual da computação verifica-se um aumento crescente da capacidade dos sistemas de armazenamento. Com isso, o desenvolvimento de ferramentas para a compressão rápida e eficiente de um grande número de arquivos, com tamanhos também cada vez maiores, se torna uma necessidade urgente. Simultaneamente, a ampla disponibilidade de recursos computacionais com múltiplos processadores, seja em um único computador, seja em um ambiente de rede, viabiliza o uso de aplicações paralelas para o atendimento dessa demanda. Este trabalho apresenta um compressor de arquivos paralelo, em que o trabalho de compressão é distribuído através de diversos processadores locais e remotos. São apresentadas duas versões desse compressor: uma que utiliza o paradigma de memória compartilhada e outra o de troca de mensagens. O uso de um servidor de arquivos paralelos, junto com rotinas do MPI-I/O, foi a solução encontrada para melhorar o desempenho do sistema de E/S, normalmente um gargalo nesse tipo de aplicação. Para verificar e validar o desempenho das implementações desenvolvidas, foram analisados diversos cenários e feitas comparações com os resultados de um compressor paralelo apresentado em um trabalho correlato.
Referências
V. D. do Nascimento. Paralle file compressor, 2008. Disponível em: <http://sourceforge.net/projects/parallelfilecom/>. Acesso em Fevereiro, 2008.
J. Gilchrist and A. Cuhadar. Parallel lossless data compression based on the burrows-wheeler transform. In AINA ’07: Proceedings of the 21st International Conference on Advanced Networking and Applications, pages 877–884, Washington, DC, USA, 2007. IEEE Computer Society.
J. Kitzman and G. I. Fujiwara. Parallel file compression, 2005. Disponível em: <http://beowulf.lcs.mit.edu/18.337-2005/projects/compressionwriteup.pdf>. Acesso em Fevereiro, 2008.
S. T. Lavavej. Bwtzip c++ implementation, 2006. Disponível em: <http://nuwen.net/bwtzip.html>. Acesso em Fevereiro, 2008.
J. loup Gailly and M. Adler. Gzip, 2003. Disponível em: <http://www.gzip.org/>. Acesso em Fevereiro, 2008.
Message Passing Interface Forum. MPI: A Message-Passing Interface Standard 2.1, 2008. Disponível em: <http://www-unix.mcs.anl.gov/mpi/www/>. Acesso em Junho, 2008.
M. Nelson. Data compression with the burrows-wheeler transform. Dr. Dobb’s Journal, 21(9):46–50, September 1996.
B. Nichols, D. Buttlar, and J. P. Farrell. Pthreads Programming. O’Reilly, 1996.
OpenMP Architecture Review Board. OpenMP Application Program Interface 3.0, 2008. Disponível em: <http://www.openmp.org/mp-documents/spec30.pdf>. Acesso em Maio, 2008.
J. Seward. The bzip2 and libbzip2 official homepage, 2002. Disponível em: <http://www.bzip.org/>. Acesso em Fevereiro, 2008.
Sun Microsystems, Inc. NFS Version 3 Protocol Specification, 2005. Disponível em: <http://www.faqs.org/rfcs/rfc1813.html>. Acesso em Fevereiro, 2008.
B. Welch, M. Unangst, Z. Abbasi, G. Gibson, B. Mueller, J. Small, J. Zelenka, and B. Zhou. Scalable performance of the panasas parallel file system. In FAST’08: Proceedings of the 6th USENIX Conference on File and Storage Technologies, pages 1–17. USENIX Association, 2008.
winace. Ace, 2008. Disponível em: <http://www.winace.com/>. Acesso em Fevereiro, 2008.
winrar. Rar, 2005. Disponível em: <http://www.rarlab.com/>. Acesso em Fevereiro, 2008.