Hoje estava lendo sobre o Mercurial, mais um VCS, escrito pelo Malcolm Gladwell, um rapaz conhecido pelo fato de ter criado o patch do linux-tiny (um corte no kernel em vários pontos que diminui o tamanho final). Achei interessante e fiquei com vontade de ver uma boa análise comparativa entre ele, o Bazaar, Git e talvez o Darcs. Eu gosto bastante do Bazaar mas o acho extremamente lento. O Mercurial segue na linha do Bazaar, também é escrito em Python mas é mais rápido, como mostrarei a seguir.
Resolvi fazer algo pouco acadêmico só pra ter uma idéia do desempenho deles, enquanto o sono não vinha e o Mateus não acordava. Para testes, usei o código fonte do kernel Linux 2.6.16.19, que contém cerca de 20436 arquivos e um tamanho total de 260 MB descompactado. O comando time foi a forma como eu medi cada execução. Não gerei médias ou desvios, apenas valores pontuais.
Detalhes da minha máquina:
Dell Latitude D505, Pentium M 1.6GHz, 1280MB
Disco IDE 80GB, com JFS.
GNU/Linux Ubuntu 6.10.
Detalhes das versões:
bzr: 0.11 e 0.17
git: 1.4.4.2
hb: 0.9.1
Os resultados foram poucos favoráveis ao Bazaar, como pode ser visto na tabela a seguir, onde foram executadas as operações add, init, commit e branch. O git é o mais rápido e o hg não chega a decepcionar.
|
Prog/operação
|
init
|
add
|
commit
|
branch
|
|
bzr 0.11
|
real 0m0.606s
user 0m0.528s
sys 0m0.068s
|
real 0m19.443s
user 0m9.289s
sys 0m0.788s
|
real 7m34.596s
user 5m46.694s
sys 0m18.121s
|
real 10m28.115s
user 4m25.985s
sys 0m22.385s
|
|
bzr 0.17
|
real 0m1.356s
user 0m1.244s
sys 0m0.040s
|
real 0m20.210s
user 0m11.101s
sys 0m0.956s
|
real 6m51.021s
user 5m38.081s
sys 0m17.669s
|
real 11m51.860s
user 3m49.998s
sys 0m20.697s
|
|
git
|
real 0m0.149s
user 0m0.004s
sys 0m0.000s
|
real 1m46.954s
user 1m13.325s
sys 0m7.088s
|
real 0m3.017s
user 0m1.740s
sys 0m0.832s
|
real 0m3.249s
user 0m2.736s
sys 0m0.156s
|
|
hg
|
real 0m0.107s
user 0m0.088s
sys 0m0.012s
|
real 0m13.262s
user 0m6.252s
sys 0m1.300s
|
real 1m36.125s
user 1m18.873s
sys 0m8.489s
|
real 0m39.253s
user 0m29.826s
sys 0m6.496s
|
O Bazaar também leva a pior no tamanho do repositório:
|
bzr 0.11: 213MB
|
bzr 0.17: 208MB
|
git: 114MB
|
hg: 115MB
|
Notas:
- O Git é quase “mudo”, ao passo que o Bazaar fala bastante durante cada operação. O Mercurial está no meio do caminho e, de forma esperta, fica calado nas operações longas.
- As formas de uso são bem semelhantes. O Git é o mais estranho. O processo de criação de branches, apesar de economizar espaço, confunde um pouco ao manter todos os branches juntos e um checkout do branch corrente ativo.
- O Bazaar e o Mercurial tem bom suporte para Windows, ao contrário do Git.
- O Mercurial não controla diretório, o Bazaar sim. Pode ser um critério de escolha.
- Não consegui nenhuma forma de falar bem do Bazaar quando o tópico é desempenho. A turma do Bazaar espera gerar uma versão com bom desempenho na versão 1.0, prometida para este ano. Estou chateado…:-D
Alguns links com resultados na minha linha:
* http://git.or.cz/gitwiki/GitBenchmarks
* http://sayspy.blogspot.com/2006/11/bazaar-vs-mercurial-unscientific.html
Edner [Visitante] 9:13 am em Junho 28, 2007 Link Permanente
Perfeita a coloção da camuflagem com textura de “tijolo sem argamassa”.
Sessão perguntas que nao querem calar:
1. Qual o motivo de deixarem chegar a este ponto ? (Leia-se quem lucrou com isso…)
2. “O Haiti é aqui”. Porque mandar tropas do Brasil em missão ONU para o Haiti se ja temos nossa guerra aqui mesmo ?
3. Quando acabar o PAN, a tranquilidade (dos traficantes) voltará ?
4. Hoje nas esquinas… temos moleques oferecendo um pirulito ou “uma bala” …por assim dizer.
Jeronimo [Visitante] 7:43 pm em Junho 28, 2007 Link Permanente
Interessante a coincidencia . Estava assistindo ao “Bom Dia ????” Brasil e a mesma cena me chamou a atenção. Fiquei em duvida se o cara estava imitando o Hellboy ou o Schwarzenegger em Predador mas de qualquer forma é assustadoramente parecido com o Iraque . Eu morei no Rio de Janeiro muito tempo e a via onde a policia começa as invasões é muito movimentada por ser ligação entre duas areas da cidade ( zona norte e zona da leopoldina) , caminho para a UFRJ , etc. È absurdo ver a população tentando manter sua rotina de vida no meio de tiroteios e simultaneamente ver esta figura alienada fumando charuto, achando que faz parte de uma grande filme de guerra.
Marcelo Jedi [Membro] 6:49 am em Junho 29, 2007 Link Permanente
Gostei de Hellboy, parece mesmo, tá apelidado ! O editor da reportagem também achou estranho, tanto que colocou o Hellboy 3 vezes e fechou com ele. Com o “pân-pân-pân-PAN” do Brasil tudo parece ter se acentuado.
Franz [Membro] 3:29 pm em Junho 29, 2007 Link Permanente
Por onde/como entra tanta arma de tantos lugares diferentes do mundo?
Armamento pesado…
Há muitos interesses envolvidos ($$$$ + poder).
Lembram-se do filme O DEMOLIDOR?
[ ]’s