Generated from results.json on 2026-08-13 — x86_64 16 cores.
Every figure below is a claim the reproduction script checks.
Both codecs work on independent 16 KB blocks, so either can decode a region without touching the rest of the file. Comparing a block-structured format against a whole-stream archive measures the constraint rather than the mechanism.
| Corpus | Bytes | zstd-3, 16 KB | ACEAPEX |
|---|---|---|---|
| Human chromosome 1 | 253,935,557 | 3.03362 | 3.18065 |
| English Wikipedia, 100 MB | 100,000,000 | 2.33351 | 2.63791 |
| English Wikipedia, 1 GB | 1,000,000,000 | 2.56673 | 2.98108 |
| Silesia corpus | 211,957,760 | 2.67498 | 3.00457 |
| Sequencing reads, 1 GB | 1,073,741,620 | 3.62875 | 3.96476 |
| chr1 with the genomic transform | 253,935,557 | 3.034 | 3.77696 |
The last row is the same corpus with the literal transform enabled, which is opt-in: the default layout is what the published paper figures were measured on.
| Archive | Ratio | Seek | Needs | |
|---|---|---|---|---|
| zstd seekable, 16 KB frames | 83,924,167 | 3.026 | <10 ms | a separate format and a second library |
ACEAPEX LIT_CHUNK=1048576 | 68,224,719 | 3.77696 | 3 ms | the base format |
The density on genomic data comes from a literal transform that switches
itself on per chunk: two bits per base, letter case as a packed bitmask, and the rare
non-ACGT bytes as position gaps. The encoder computes the ordinary result as well and
keeps whichever is smaller, so the mode cannot cost size, and it stays off on text,
archives and sequencing reads. Region output is compared byte for byte against the
original at the start, the middle and the tail of the file — claim
region_16k_byte_exact below.
Given a whole-file window instead of independent blocks, zstd-19 packs tighter: 4.93 against 4.04 on genome. Compression runs roughly six times slower than zstd-3. On vector data such as SIFT and TPC-H we lose outright. The format is built for data written once and read many times, and it trades encode time for decode and seek.
R reproducible here · M measured, not bit-perfect · E estimated
git clone https://github.com/yasha1971-coder/aceapex.git && cd aceapex CHR1=/path/chr1.fa ENWIK9=/path/enwik9 ./reproduce_paper5.sh
| Claim | Expected | Measured | Verdict | |
|---|---|---|---|---|
chr1_md5 | R | 9465e0f0df6e2c6eb39729c39cee5465 | 9465e0f0df6e2c6eb39729c39cee5465 | pass |
chr1_baseline_ratio | R | 3.18065 | 3.18065 | pass |
norep_ratio | R | 3.16347 | 3.16347 | pass |
norep_cost_percent | R | 0.540 | 0.543 | pass |
min_match16_ratio | R | 3.22581 | 3.22581 | pass |
class_chr1_aceapex | R | 3.18065 | 3.18065 | pass |
class_chr1_zstd3_16k | R | 3.03362 | 3.03362 | pass |
class_enwik8_aceapex | R | 2.63791 | 2.63791 | pass |
class_enwik8_zstd3_16k | R | 2.33351 | 2.33351 | pass |
class_enwik9_aceapex | R | 2.98108 | 2.98108 | pass |
class_enwik9_zstd3_16k | R | 2.56673 | 2.56673 | pass |
class_silesia_aceapex | R | 3.00457 | 3.00457 | pass |
class_silesia_zstd3_16k | R | 2.67498 | 2.67498 | pass |
class_fastq_aceapex | R | 3.96476 | 3.96476 | pass |
class_fastq_zstd3_16k | R | 3.62875 | 3.62875 | pass |
parse_chained_percent | R | 5.46 | 5.47 | pass |
parse_run_median | R | 4 | 4 | pass |
wf_build | R | - | no nvcc or no CUDA device | skipped-no-gpu |
wavefront_real_ms | R | - | no nvcc or no CUDA device | skipped-no-gpu |
wavefront_par_ms | R | - | no nvcc or no CUDA device | skipped-no-gpu |
transform_chr1_ratio | R | 3.77696 | 3.77696 | pass |
region_16k_byte_exact | R | 3 points match | match | pass |
transform_archive_bytes | R | 68224719 | 68224719 | pass |
fasta_index | R | chr1 248956422 6 50 51 | chr1 248956422 6 50 51 | pass |
coord_range_byte_exact | R | match | match | pass |
fai_matches_htslib | R | byte-identical | identical | pass |
view_sequence_vs_htslib | R | match | match | pass |
alien_index_refused | R | nonzero exit, no output | exit 1 | pass |
fai_edge_cases | R | crlf multi nonl identical, ragged refused | all correct | pass |
lowlat_chr1_ratio | R | 3.70807 | 3.70807 | pass |
lowlat_region_len | R | 16000 bases at three offsets | correct | pass |
seek_50gb_position_invariance | M | 292-387 us | original not on disk; FNV has nothing to | declared |
min_match_cost_probe | M | 1.291 -> 0.215 ms | tokens dropped without substituting lite | declared |
scan_parser_speedup | E | 2.7x | parse 2.555 ms scaled by the 93.94 perce | declared |
Corpora are fixed by accession and digest in DATA.md; the
canonical one is human chromosome 1, UCSC hg38, md5
9465e0f0df6e2c6eb39729c39cee5465. GPU claims are skipped explicitly when no
CUDA device is present rather than silently omitted.