trace-cmd library: Add ZSTD support.

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

 



Steven mentioned that trace-cmd recently gained compression support. I
suggest to remove zlib since there is no real benefit to use this
compression algorithm.
It might make sense to use zstd while dumping the per-CPU data files
disks before the trace.dat is written. It probably makes sense to use
zstd by default instead of storing the .dat file uncompressed.

To put some numbers here:
| time ./tracecmd/trace-cmd convert -i trace-none.dat -o trace-zlib.dat --compression zlib
| real    9m43,699s
| user    9m41,247s
| sys     0m2,296s
| 
| time ./tracecmd/trace-cmd convert -i trace-none.dat -o trace-zstd.dat --compression zstd
| real    0m19,641s
| user    0m17,768s
| sys     0m1,868s
| 
| time ./tracecmd/trace-cmd convert -i trace-none.dat -o trace-zstd-12.dat --compression zstd-12
| real    6m39,731s
| user    6m37,735s
| sys     0m1,908s

The file sizes:
  Name             Human        Bytes (% of the original size)
| trace-none.dat     11G 11240714240
| trace-zlib.dat    1,2G  1257455848 (~11.1%)
| trace-zstd.dat    1,1G  1108957623 (~ 9.9%)
| trace-zstd-12.dat 895M   937466831 (~ 8.3%)

That is why wrote initially that it makes no sense to use zlib: zstd is
approx 29 times faster while the compressed file is even slightly
smaller. The higher zstd compression level (12 used, it goes higher)
makes the even a little smaller the price appears too high.

Sebastian





[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux