segunda-feira, 4 de junho de 2018

PyKota VS IBQUOTA: Qual o contador de páginas mais rápido?

Os sistemas mais conhecidos no mundo OpenSource para controle de impressão são: o PyKota e o IBQUOTA. Há questionamentos, especialmente nas listas de discussão, sobre qual sistema computa a quantidade de página de um job mais rapidamente. Este artigo tem como finalidade realizar alguns testes e responder o questionamento.

IBQUOTA

Site: www.ib.unicamp.br/ibquota
Linguagem de Programação: Perl (Contador de páginas)
Início do Projeto: Ano 2003

PyKota

Site: www.pykota.com
Linguagem de Programação: Python
Início do Projeto: Ano 2003

Ambiente utilizado no Teste

Sistema Operacional: Linux Debian 3.16 (64 Bits)
Processador CPU: Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz
Memória RAM: 4 GB
Contador IBQUOTA: Versão 2.4.1
Contador PyKota: v3.50


Foi utilizado a configuração padrão, não houve refinamento de configuração para executar o teste.

Metodologia 


A metodologia utilizada no teste consiste em medir o tempo de CPU utilizado pelo contador de página para analisar arquivos do tipo PostScript e PCL. O comando "time" foi utilizado.

Teste 01: Arquivo formato PostScript com 1 página

O primeiro teste é bem pequeno, simula uma impressão de uma única página. Arquivo utilizado no teste está disponível AQUI. Tamanho do arquivo é de 15K.

IBQUOTA: 
# time perl pagecount.pl samplec.ps
Iniciando IBQUOTA...
FORMATO=PS-PostScritp
PS=1

real    0m0.018s
user    0m0.004s
sys    0m0.004s



PyKota:
# time /usr/bin/pkpgcounter samplec.ps
1

real    0m0.125s
user    0m0.088s
sys    0m0.032s


Resultado Teste 01: IBQUOTA se mostrou mais ágil para computar as páginas de um job pequeno no formato PostScript.


Teste 02: Impressão de arquivo Formato PCL com 11 páginas

Segundo teste com um arquivo maior, com tamanho de 125KB. O formato do arquivo é PCL e possui 11 páginas. Este formato é muito utilizado por impressoras da HP.

IBQUOTA: 
# time perl pagecount.pl sample.pcl
Iniciando IBQUOTA...
FORMATO=PCL
PCL=11

real    0m0.361s
user    0m0.196s
sys    0m0.164s


PyKota:
# time /usr/bin/pkpgcounter sample.pcl
11


real    0m0.369s
user    0m0.344s
sys    0m0.024s


Resultado Teste 02: Neste teste os dois contadores tiveram performance relativamente iguais, o IBQUOTA foi ligeiramente mais rápido.

Considerações

Além da função de computar a quantidade de páginas, há uma função adicional realizada para identificar o formato do arquivo. Esta tarefa foi executada pelos dois programas e o tempo de execução está somado ao total. Se o formato do arquivo fosse indicado, o tempo de execução seria reduzido, e poderia mudar o resultado final.

Não há diferença significativa na performance dos sistemas testados.

Nenhum comentário:

Postar um comentário