File size: 6,394 Bytes
8ddb22e
bfe13e2
 
 
8ddb22e
 
bfe13e2
8ddb22e
43d6fa3
8ddb22e
 
86c9d33
bfe13e2
86c9d33
bfe13e2
86c9d33
bfe13e2
86c9d33
bfe13e2
a667e58
bfe13e2
86c9d33
d84ab71
86c9d33
3e03c82
 
 
 
da80163
 
 
 
b72b067
 
 
 
a667e58
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
---
title: Time Series Compression Benchmark
emoji: 📊
colorFrom: green
colorTo: gray
sdk: static
app_file: index.html
pinned: false
short_description: Compression rates and compress/decompress costs
---

# THULab Compression Benchmark

The active test scope contains **137 datasets** and 85 active C++ method families. The user selected a uniform rule: exclude datasets with fewer than 128 valid values on average per numerical column/entity sequence; retain datasets at exactly 128. Compression performance does not participate in this selection. Timestamp-only medium_posts is separately ineligible because its scientific input contract excludes timestamps and admits no numerical value payload; its mean is undefined, not zero. The previous 160 scope and raw 164 archive remain preserved in Git history and the immutable result files.

`final-dataset-scope.json` and `sequence-length-audit.json` freeze the exact identities and length evidence. The active catalog retains 2 corrected-input retests pending; currently 135 dataset identities contribute numeric Overall measurements. Superseded incomplete inputs are excluded across C++, Java, Python and all dtype slices, without older fallback. Input and retest status is in `final-input-status.json`.

C++ selects the latest receipt-bound authority per dataset and canonical method. Its active comparison is restricted to the 85 method contract; two extra historical methods remain in raw downloads. Java/Python retain their published source profiles. Numeric dtype-specific results, terminal N/A, unsupported and retest-pending states remain distinct. Overall method cells contain only the method/configuration name; details explain coverage and retain provenance. CSV includes source hosts, support sets, timing admission and the active scope.

Compression rate remains complete compressed-frame bytes divided by original numeric binary bytes. The three shared CSV metadata files are not added to the compressed numerator. No ratio is inverted, clipped or altered. `ranking.js` is unchanged. The latest C++ view imports the completed server-192 main26 campaign plus four exact-disjoint Camel recovery selections: 3,510 dataset-method conclusions across 135 measured datasets (within the 137-dataset catalog and 85 active-family contract), comprising 1,529 full-support, 629 partial-support and 1,352 unsupported conclusions and 4,037 numeric Overall/integer/float scope rows. Compression and decompression timing uses the same-host W1/R3/T1 contract; compression bytes are complete NGF1 frames per input block, and every measured `ok` frame passed built-in bit-exact Block equality outside the timed interval. This does not claim independent fresh-process verification. No cross-host timing is mixed in the new rows. Updated raw compact results, the publication manifest and source-selection evidence are bound by the Main26 receipts. To keep the append-only Space below its storage limit, the canonical full result snapshot is published as a deterministic Brotli transport, while the UI snapshot and latest-view sidecar use deterministic gzip transports; compressed and decompressed SHA-256 values are frozen. The earlier `data.json`, `data-main26.json.gz`, `ui-data.json`, and `cpp-latest-view.json` objects remain immutable historical artifacts. The latest page reads `ui-data-uniform675.json.gz` and the SHA-verified `cpp-latest-view-main26.json.gz` sidecar, while its snapshot download points to `data-main26.json.br`. Cross-host/campaign timing is not pooled into strict rankings; admitted timed subsets remain explicitly labeled and do not enter strict composite scores.

Historical operator byte effects are retained as diagnostics. Current-scope, corrected-input operator results remain pending and must be independently accepted before replacing them. Dataset corrections are documented in `FINAL160_FORMAT_AUDIT.json`; its previous 160-dataset investigation is a historical parent-scope audit, not the active selection list.

The historical `164×85=13,940` terminal matrix remains downloadable and is not a current-scope completion claim. [Parent documentation](https://huggingface.co/spaces/THULab/CompressionBenchmark/blob/799b74b93d0c1a25b7b7a085614f6a2c8e631468/README.md) preserves the previous pipeline and provenance.

## DSC2 BOS/REGER reuse

The latest C++ view additionally replaces exactly 24 formerly partial BOS/REGER pairs over 12 datasets. Repaired float columns use the DSC2 v2 route; successful integer columns retain their Main26 route. All work ran on server 192 under the staged W1/R3/T1 contract (three encode measurements followed by three decode measurements), with precision derived once per float method-column and built-in complete Block bit-exact checks. Composite rows retain every binary, terminal, profile and source route; no scalar binary identity is invented.

## Completed lossless recovery

This release appends 3915 dtype-scope rows and replaces exactly 1,688 latest C++ pair decisions from the completed integer89 and native15 campaigns. All measurements ran on server 192 with W1/R3/T1 and built-in exact complete-Block checks. Historical rows and the prior DSC2 release remain unchanged.

## Improved lossless BUFF/CORAD variants

This release appends 626 dtype-scope rows and replaces exactly 270 latest C++ pair decisions with the completed BUFF-v2 and CORAD exact-repair variants. The earlier native variants and every unrelated result remain in append-only history. Measurements use server 192, W1/R3/T1, and built-in exact complete-Block checks.

## Uniform server192 five-method remeasurement

This release appends 1565 dtype-scope rows and replaces exactly 675 latest C++ pair decisions with the completed uniform CSC, LZJB, LZSSE, Shrinker, and Tornado remeasurement. The earlier native variants and every unrelated result remain in append-only history. Measurements use server 192, W1/R3/T1, and built-in exact complete-Block checks.

## Uniform-five675 transport decoding

The Brotli file expands to the exact canonical full JSON identified in `manifest.json`. For example: `python3 -c "import brotli,sys; sys.stdout.buffer.write(brotli.decompress(open('data-main26.json.br','rb').read()))" > data-main26.json`. The browser uses `DecompressionStream('gzip')` for `ui-data-uniform675.json.gz`; the page verifies both compressed and decompressed SHA-256 values before parsing.