31 de December de 2009 0

Impressões iniciais sobre o Pbzip2

Hoje descobri que existe um bzip2 para processadores com vários núcleos, o pbzip2. É um projeto independente do bzip2 e que depende deste para compilar e executar, mas que possui um desempenho assustadoramente maior. Em testes simples de compactação e descompactação, encontrei os seguintes números:

Comando Tempo de execução
pbzip2 glibc-2.11.tar 0m15.246s
pbunzip2 glibc-2.11.tar.bz2 0m3.391s
bzip2 glibc-2.11.tar 0m25.155s
bunzip2 glibc-2.11.tar.bz2 0m5.592s

A máquina do teste era um Lenovo G530 Pentium Dual Core T3400 (2.16Ghz) com 2Gb de RAM rodando Gentoo ~amd64. Fiz vários testes além destes e os resultados foram muito parecidos. Resumindo, o bzip2 levou cerca de 60% mais tempo para concluir a operação requisitada, um ganho bem apreciável. Segundo o site do pbzip2 e benchmarks independentes, a vantagem só tende a aumentar conforme aumenta o número de núcleos, que no meu caso são apenas 2.

Você pode instalar o pbzip2 facilmente no seu Gentoo com:

# emerge -av pbzip2

Atenção à USE flag symlink, que permite criar symlinks do pbzip2 para o bzip2, fazendo com que ele se torne padrão para os usuários do sistema (exceto o root). Eu decidi substituir definitivamente o bzip2 do meu Gentoo e por isso fiz 2 ebuilds especiais para isso e em breve disponibilizarei no meu overlay pessoal. Entretanto, vale lembrar que ele pode vir a apresentar bugs, no caso dos usuários comuns, não há grandes riscos, mas sugiro cuidado a quem deseja, assim como eu, substituir o bzip2 original globalmente.

Compartilhe:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Identi.ca
  • Twitter
  • FriendFeed
  • Netvibes
  • Posterous
  • StumbleUpon
  • Technorati

Arquivado em Planeta, Tutoriais | Tags: , , ,

Deixe um comentário