shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Melhorar algoritmo


From: Guilherme Andrade
Subject: Re: [shell-script] Melhorar algoritmo
Date: Mon, 9 Nov 2009 08:53:58 -0200

Muito Obrigado pessoal, vou fazer como vocês informaram.

Obrigado mesmo.

Abraços.

Att,

Guilherme Andrade

2009/11/9 MrBiTs <address@hidden>

>
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
> > Muito legal.. não conhecia esse parâmetro ! :)
> > Mas Julio, o grep é "inteligente" para ler o arquivo1 uma vez e dps ler o
> > arquivo2 uma vez?
> > Ou para cada linha do arquivo1 ele faz uma leitura no arquivo2? :)
>
> Um strace no comando mostra a você extamente o que ele está fazendo.
>
> Além disso, vale verificar a performance. O grep -f é pelo menos 100% mais
> rápido do que o grep + paste que foi enviado e "SÓ" 300%
> mais rápido que o seu laço for. Para esses testes, desprezei a gravação do
> arquivo de saída e joguei tudo para STDOUT. O seu código
> ainda tem um "vício" que eu tenho encontrado em diversas pessoas: para cada
> iteração de um determinado laço, o resultado é gravado
> num arquivo de saída. A forma
>
> para cada passo faça
> processe dados 1 >> arquivo_de_saida
> fim-para
>
> Consome pelo menos 10% mais tempo do que a forma:
>
> para cada passo faça
> processe dados
> fim-para > arquivo_de_saida
>
> Esse consumo é exponencial. Quanto mais redirecionamentos para o
> arquiv_de_saida você tiver dentro do laço, maior será o tempo.
>
> Outro ponto que devemos notar é que, no seu laço, você usa a forma cat |
> grep, desnecessária visto o grep ser capaz de ler o
> arquivo. Você não precisa (na grande maioria dos comandos) ler o arquivo e
> canalizá-lo para outro comando. O ganho que você teria só
> de conhecer melhor as ferramentas que você tem à mão, nesse caso, beiraria
> os 50%.
>
> Os números de performance foram baseados no processamento de um arquivo de
> 1.000.000 de linhas.
>
> - --
>
> Um abraço
>
> .0. MrBiTs - address@hidden <mrbits.dcf%40gmail.com>
> ..0 GnuPG -
> http://www.rnp.br/keyserver/pks/lookup?op=get&search=0xAC37715A6DD1F186
> 000 Primeiro, aprender a ficar em pé. Depois, aprender a voar, Daniel-san.
> Lei da natureza. Não minha.
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
>
> iEYEARECAAYFAkr354EACgkQrDdxWm3R8Ya39wCdGOQNksrFu6D7vRoZ3nHPf5t3
> AbsAmQEtHvs0T6dr+dLWY2omOi1dFZ3X
> =a34d
> -----END PGP SIGNATURE-----
>
>  
>



-- 
Guilherme Andrade

E-mail: address@hidden
Cel: 19 8822-5949
Blog: http://guiap.wordpress.com/

--- >> Slackware Linux because it works! << ---


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]