Como melhorar a eficiência do gnu paralelo para ler de um fluxo comprimido?

2

É outra questão que se estende desde a anterior [1]

Eu tenho um arquivo compactado e os transmito para alimentar um programa python, por exemplo

bzcat data.bz2 | parallel --no-notice -j16 --pipe python parse.py > result.txt

O parse.py pode ler a partir de stdin continusuoly e imprimir em stdout

Minha instância ec2 é de 16 núcleos, mas do comando superior está mostrando somente a média de carga de 3 a 4.

Do ps , estou vendo muitas coisas como ...

sh -c 'dd bs=1 count=1 of=/tmp/7D_YxccfY7.chr 2>/dev/null';       

Eu sei que posso melhorar usando o -a in.txt para melhorar o desempenho, mas no meu caso eu estou fazendo streaming do bz2 (não posso fazer isso porque não tenho espaço em disco)

Como melhorar a eficiência do meu caso?

[1] Gnu paralelo não utilizando toda a CPU

    
por Ryan 28.05.2014 / 16:42

1 resposta

0

Aumentar o tamanho do bloco:

--block 100m
    
por 28.05.2014 / 17:37