Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

groot/riofs: align default compression settings w/ ROOT #1021

Merged
merged 1 commit into from
Nov 13, 2024

Conversation

sbinet
Copy link
Member

@sbinet sbinet commented Nov 13, 2024

groot was using flate.BestCompression (zlib and level=9) whereas ROOT/C++ is using flate.BestSpeed (zlib and level=1).

This CL configures groot to use flate.DefaultCompression (and zlib).

On "typical" payloads this amounts to:

$> time ./new-dbg -zip=zlib-1 -o groot-zlib-1.root
real 0m9.469s
user 0m8.644s
sys  0m0.872s

$> time ./new-dbg -zip=zlib-6 -o groot-zlib-6.root (proposed new default)
real 0m10.832s
user 0m10.422s
sys  0m0.972s

$> time ./new-dbg -zip=zlib-9 -o groot-zlib-9.root (go-hep@v0.35 default)
real 0m32.415s
user 0m32.550s
sys  0m1.086s

and for the disk sizes:

$> ll
87M Nov 12 15:19 groot-zlib-1.root
77M Nov 12 15:18 groot-zlib-6.root (proposed new default)
67M Nov 12 15:19 groot-zlib-9.root (go-hep@v0.35 default)

groot was using flate.BestCompression (zlib and level=9) whereas
ROOT/C++ is using flate.BestSpeed (zlib and level=1).

This CL configures groot to use flate.DefaultCompression (and zlib).

On "typical" payloads this amounts to:

```
$> time ./new-dbg -zip=zlib-1 -o groot-zlib-1.root
real 0m9.469s
user 0m8.644s
sys  0m0.872s

$> time ./new-dbg -zip=zlib-6 -o groot-zlib-6.root
real 0m10.832s
user 0m10.422s
sys  0m0.972s

$> time ./new-dbg -zip=zlib-9 -o groot-zlib-9.root (go-hep@v0.35 default)
real 0m32.415s
user 0m32.550s
sys  0m1.086s
```

and for the disk sizes:
```
$> ll
total 510M
87M Nov 12 15:19 groot-zlib-1.root
77M Nov 12 15:18 groot-zlib-6.root
67M Nov 12 15:19 groot-zlib-9.root (go-hep@v0.35 default)
```

Signed-off-by: Sebastien Binet <binet@cern.ch>
@sbinet sbinet force-pushed the groot-default-compr-level branch from 7d454e2 to 4130003 Compare November 13, 2024 10:39
@codecov-commenter
Copy link

codecov-commenter commented Nov 13, 2024

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 67.35%. Comparing base (212f991) to head (4130003).
Report is 1 commits behind head on main.

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1021   +/-   ##
=======================================
  Coverage   67.35%   67.35%           
=======================================
  Files         493      493           
  Lines       71972    71973    +1     
=======================================
+ Hits        48476    48478    +2     
  Misses      21155    21155           
+ Partials     2341     2340    -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@sbinet sbinet merged commit 4130003 into go-hep:main Nov 13, 2024
6 checks passed
@sbinet sbinet deleted the groot-default-compr-level branch November 13, 2024 13:15
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants