# Steim-2 vs a modern entropy coder: 26.8% smaller on the same IU samples. Is my methodology sound?

**URL:** <https://discourse.obspy.org/t/steim-2-vs-a-modern-entropy-coder-26-8-smaller-on-the-same-iu-samples-is-my-methodology-sound/2407>\
**Category:** Development\
**Created:** [September 15, 2026, 7:57am UTC](https://discourse.obspy.org/t/steim-2-vs-a-modern-entropy-coder-26-8-smaller-on-the-same-iu-samples-is-my-methodology-sound/2407 "2026-09-15T07:57:03Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![xolacompression-bit](https://discourse.obspy.org/user_avatar/discourse.obspy.org/xolacompression-bit/32/1199_2.png) [@xolacompression-bit](https://discourse.obspy.org/u/xolacompression-bit)\
**Post date:** [September 15, 2026, 7:57am UTC](https://discourse.obspy.org/t/steim-2-vs-a-modern-entropy-coder-26-8-smaller-on-the-same-iu-samples-is-my-methodology-sound/2407/1 "2026-09-15T07:57:03Z")

</div>

Steim-2 has been the standard since 1991 and I could not find a single published comparison against a modern entropy coder. So I ran one, and the result was large enough that I think I must be measuring something wrong.

On five IU network stations, on the same exact samples decoded from the same miniSEED files:

| station | Steim-2 | this codec | smaller by |
| --- | --- | --- | --- |
| ANMO | 5.82 bits/sample | 4.39 | 24.7% |
| COLA | 7.62 | 5.35 | 29.8% |
| KONO | 7.35 | 4.79 | 34.8% |
| MAJO | 7.88 | 6.10 | 22.6% |
| TUC | 6.57 | 5.16 | 21.5% |
| **average** | **7.05** | **5.16** | **26.8%** |

Method: read the miniSEED with ObsPy, take the decoded samples, measure the Steim-2 payload from the same file, compress those exact samples, and assert a byte-exact round trip before recording any size. If the round trip fails the script raises rather than printing a number.

Reading is about 2.8x slower than Steim-2 via `obspy.read()` — 46M against 132M samples/sec on the same machine. That is expected: Steim-2 unpacks bit fields and runs a cumulative sum, while this runs entropy decoding and an eight-tap linear prediction per sample.

Source, the comparison script, and the full methodology:

> **[GitHub - xolacompression-bit/xola-compression: Lossless compression for scientific data. Beats...](https://github.com/xolacompression-bit/xola-compression)**
>
> Lossless compression for scientific data. Beats Steim-2, seismology's field standard, by 21.5% on real IRIS network files.

Three questions, and the first one matters most:

1. **Is the comparison methodology sound?** I am comparing against the Steim-2 payload bytes in the record, excluding headers. If that is the wrong denominator, the numbers are wrong and I would want to know.

2. **Has anyone measured Steim-2 against a modern entropy coder before?** I could not find a published comparison, which surprised me enough that I suspect I am missing something.

3. **Would anyone be willing to run it on data I have not seen?** Nobody outside this project has tested it, which is the largest gap in the work. A result that contradicts the above would be more useful to me than agreement.

Licence is AGPL. It is Python with an optional C extension, and it falls back cleanly without a compiler.

If this is already known, or the comparison is unfair in a way that is obvious to someone who works with SEED daily, I would genuinely rather hear it now than keep quoting a number that does not hold.

---

<div class="post-metadata">

**Author:** ![megies](https://discourse.obspy.org/user_avatar/discourse.obspy.org/megies/32/9_2.png) [@megies](https://discourse.obspy.org/u/megies)\
**Post date:** [September 15, 2026, 8:04am UTC](https://discourse.obspy.org/t/steim-2-vs-a-modern-entropy-coder-26-8-smaller-on-the-same-iu-samples-is-my-methodology-sound/2407/2 "2026-09-15T08:04:09Z")

</div>

Feels like an AI agent, to be honest. Brand new github profile, a repository on a super niche topic, dedicated email address with name of the repository.. can’t find other info on the internet.  
Also, the discourse initially silenced this new account for “typing too fast”.

---

<div class="post-metadata">

**Author:** ![xolacompression-bit](https://discourse.obspy.org/user_avatar/discourse.obspy.org/xolacompression-bit/32/1199_2.png) [@xolacompression-bit](https://discourse.obspy.org/u/xolacompression-bit)\
**Post date:** [September 21, 2026, 8:11am UTC](https://discourse.obspy.org/t/steim-2-vs-a-modern-entropy-coder-26-8-smaller-on-the-same-iu-samples-is-my-methodology-sound/2407/3 "2026-09-21T08:11:09Z")

</div>

hello, im sorry if im using correction from AI for my grammar, i will try my best to use my own words even though im finding it hard. im a filipino and im not good at expressing the correct word and sometimes it leads to wrong or misinterpretation from others.
