Tested on a 2.0 GHz T3200, Win32. I recompiled both programs for 32 bits using g++ 4.8.1 -O3.
Code:
C:\tmp>timer32 narans_bit \res\enwik8
Nania - Adaptive Range Variant of ANS -
nARANS bit encode:
40023321144 clocks, 400.2 clocks/symbol ( 4.8MiB/s)
nBLK: 100000000 to 61345753
nARANS bit decode:
13246145064 clocks, 132.5 clocks/symbol ( 14.4MiB/s)
decode ok!
Commit = 315524 KB = 309 MB
Work Set = 259140 KB = 254 MB
Kernel Time = 0.561 = 2%
User Time = 27.206 = 100%
Process Time = 27.768 = 102%
Global Time = 27.159 = 100%
C:\tmp>timer32 narans c \res\enwik8 enwik8.narans
nARANS v.02
Copyright(C) 2014 by NANIA Francesco (Italy)
nARANS encode:
6500777736 clocks, 65.0 clocks/symbol ( 29.3MiB/s)
nBLK: 100000000 to 63488269
Commit = 1652 KB = 2 MB
Work Set = 2668 KB = 3 MB
Kernel Time = 0.390 = 9%
User Time = 3.026 = 76%
Process Time = 3.416 = 86%
Global Time = 3.956 = 100%
C:\tmp>timer32 narans d enwik8.narans enwik8
nARANS v.02
Copyright(C) 2014 by NANIA Francesco (Italy)
nARANS decode:
nBLK: 63488273 to 100000000
4508861736 clocks, 45.1 clocks/symbol ( 42.2MiB/s)
Commit = 1776 KB = 2 MB
Work Set = 2796 KB = 3 MB
Kernel Time = 0.218 = 7%
User Time = 1.981 = 66%
Process Time = 2.199 = 73%
Global Time = 2.995 = 100%