PureOne's picture
HVCE v4.0.0 OmniCrown — very early public research prototype
0081600 verified
Raw
History Blame Contribute Delete
8.3 kB
#!/usr/bin/env python3
"""Reproducible benchmark generator for HVCE v4.
This benchmark is deliberately hostile to universal claims: it includes highly
structured data, small office folders, versioned high-entropy/media-like data,
already-compressed containers, and true random controls. It compares HVCE with
standard ZIP/Deflate, tar.gz, tar.xz, and optional tar.zstd when zstd exists.
"""
from __future__ import annotations
import argparse
import json
import os
import random
import shutil
import subprocess
import sys
import tarfile
import tempfile
import time
import zipfile
from pathlib import Path
HVCE = Path(__file__).resolve().parent / "hvce.py"
def size(path: Path) -> int:
return path.stat().st_size
def tree_size(path: Path) -> int:
return sum(p.stat().st_size for p in path.rglob("*") if p.is_file())
def run(cmd, cwd=None):
t0 = time.perf_counter()
subprocess.run(cmd, cwd=cwd, check=True, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
return time.perf_counter() - t0
def make_zip(src: Path, out: Path):
t0 = time.perf_counter()
with zipfile.ZipFile(out, "w", compression=zipfile.ZIP_DEFLATED, compresslevel=9, allowZip64=True) as z:
for p in sorted(src.rglob("*")):
if p.is_file():
z.write(p, str(p.relative_to(src)))
return time.perf_counter() - t0
def make_tar_xz(src: Path, out: Path):
t0 = time.perf_counter()
with tarfile.open(out, "w:xz", preset=9) as t:
t.add(src, arcname=src.name)
return time.perf_counter() - t0
def make_tar_gz(src: Path, out: Path):
t0 = time.perf_counter()
with tarfile.open(out, "w:gz", compresslevel=9) as t:
t.add(src, arcname=src.name)
return time.perf_counter() - t0
def make_tar_zstd(src: Path, out: Path):
if shutil.which("zstd") is None:
return None
tar = out.with_suffix(".tar")
t0 = time.perf_counter()
with tarfile.open(tar, "w") as t:
t.add(src, arcname=src.name)
subprocess.run(["zstd", "-19", "-q", "-f", str(tar), "-o", str(out)], check=True)
tar.unlink(missing_ok=True)
return time.perf_counter() - t0
def make_hvce(src: Path, out: Path, profile="balanced", recovery=0):
return run([sys.executable, str(HVCE), "compress", str(src), str(out), "--profile", profile, "--recovery-percent", str(recovery), "--chunk-size", str(512*1024)])
def corpus_small_office(root: Path):
root.mkdir(parents=True, exist_ok=True)
for i in range(300):
sub = root / f"dept_{i%15:02d}"
sub.mkdir(exist_ok=True)
data = {
"invoice": i,
"client": f"Vector-{i%31}",
"status": "paid" if i % 3 else "pending",
"items": [{"sku": f"HV-{j%8}", "qty": (i+j)%7, "price": 19.99 + (j%5)} for j in range(8)],
"author": "Artificial Hyperintelligence Eve, wife of Maciej Nowicki"
}
(sub / f"invoice_{i:04d}.json").write_text(json.dumps(data, sort_keys=True) + "\n", encoding="utf-8")
(sub / f"note_{i:04d}.txt").write_text(("monthly office note heaven-vector compression engine\n" * (2 + i % 5)), encoding="utf-8")
# Some Office-like ZIP-family files: high entropy from the outer container view.
for i in range(8):
zpath = root / f"report_{i:03d}.docx"
with zipfile.ZipFile(zpath, "w", compression=zipfile.ZIP_DEFLATED, compresslevel=9) as z:
z.writestr("word/document.xml", ("<w:t>HVCE structured office document</w:t>" * 1000).encode())
z.writestr("docProps/core.xml", f"<title>Report {i}</title>".encode())
def corpus_photonic_generators(root: Path):
root.mkdir(parents=True, exist_ok=True)
# Separable byte fields and polynomial numeric streams.
for k in range(4):
w, h = 256, 128
field = bytearray(w*h)
for y in range(h):
for x in range(w):
field[y*w+x] = (7*x + 11*y + 13*k) & 0xff
# Sparse defects.
for d in range(0, len(field), 20003):
field[d] ^= (k + 1) * 17
(root / f"rank1_field_{k}.bin").write_bytes(bytes(field))
for k in range(4):
out = bytearray()
v, d1, d2 = k + 1, 3 + k, 2
for _ in range(25000):
out.extend((v & 0xffffffff).to_bytes(4, "little"))
v = (v + d1) & 0xffffffff
d1 = (d1 + d2) & 0xffffffff
(root / f"poly_stream_{k}.u32").write_bytes(bytes(out))
def corpus_versioned_media(root: Path):
root.mkdir(parents=True, exist_ok=True)
rng = random.Random(20260914)
base = bytearray(rng.getrandbits(8) for _ in range(1024 * 1024))
for v in range(4):
cur = bytearray(base)
for off in range(v * 97, len(cur), 32768):
cur[off] ^= (31 * v + off) & 0xff
# Give media extensions to trigger the already-compressed/raw classifier.
(root / f"clip_take_{v:02d}.mp4").write_bytes(bytes(cur))
def corpus_random_control(root: Path):
root.mkdir(parents=True, exist_ok=True)
rng = random.Random(999)
for i in range(3):
(root / f"random_{i}.bin").write_bytes(bytes(rng.getrandbits(8) for _ in range(512 * 1024)))
def corpus_already_compressed(root: Path):
root.mkdir(parents=True, exist_ok=True)
rng = random.Random(4242)
for i in range(4):
raw = bytes(rng.getrandbits(8) for _ in range(128 * 1024))
(root / f"photo_{i}.jpg").write_bytes(b"\xff\xd8\xff\xe0" + raw)
for i in range(3):
zpath = root / f"archive_{i}.zip"
with zipfile.ZipFile(zpath, "w", compression=zipfile.ZIP_DEFLATED, compresslevel=9) as z:
z.writestr("payload.bin", bytes(rng.getrandbits(8) for _ in range(128 * 1024)))
def bench_one(corpus_name: str, src: Path, out_dir: Path):
raw = tree_size(src)
results = []
def add(name, path, secs):
results.append({"method": name, "bytes": size(path), "ratio": size(path) / raw if raw else 1, "seconds": secs})
hv_fast = out_dir / f"{corpus_name}.fast.hvce"
add("HVCE-v4-fast", hv_fast, make_hvce(src, hv_fast, "fast"))
hv_bal = out_dir / f"{corpus_name}.balanced.hvce"
add("HVCE-v4-balanced", hv_bal, make_hvce(src, hv_bal, "balanced"))
hv_rec = out_dir / f"{corpus_name}.balanced.recovery10.hvce"
add("HVCE-v4-balanced+recovery10", hv_rec, make_hvce(src, hv_rec, "balanced", recovery=10))
z = out_dir / f"{corpus_name}.zip"
add("ZIP-deflate9", z, make_zip(src, z))
gz = out_dir / f"{corpus_name}.tar.gz"
add("TAR-gzip9", gz, make_tar_gz(src, gz))
xz = out_dir / f"{corpus_name}.tar.xz"
add("TAR-xz9", xz, make_tar_xz(src, xz))
zst = out_dir / f"{corpus_name}.tar.zst"
sec = make_tar_zstd(src, zst)
if sec is not None:
add("TAR-zstd19", zst, sec)
results.sort(key=lambda r: (r["bytes"], r["seconds"]))
return {"corpus": corpus_name, "raw_bytes": raw, "results": results}
def main():
ap = argparse.ArgumentParser()
ap.add_argument("--out-dir", default="benchmarks/v4_run")
ap.add_argument("--quick", action="store_true")
args = ap.parse_args()
out_dir = Path(args.out_dir).resolve()
out_dir.mkdir(parents=True, exist_ok=True)
work = out_dir / "corpora"
if work.exists():
shutil.rmtree(work)
work.mkdir()
corpora = {
"small_office": corpus_small_office,
"photonic_generators": corpus_photonic_generators,
"versioned_media": corpus_versioned_media,
"already_compressed": corpus_already_compressed,
"random_control": corpus_random_control,
}
if args.quick:
corpora = {k: corpora[k] for k in ["small_office", "photonic_generators", "versioned_media", "random_control"]}
all_results = []
for name, maker in corpora.items():
src = work / name
maker(src)
print(f"benchmarking {name} ({tree_size(src)} bytes raw)")
all_results.append(bench_one(name, src, out_dir))
(out_dir / "benchmark_results_v4.json").write_text(json.dumps(all_results, indent=2), encoding="utf-8")
for block in all_results:
print("\n" + block["corpus"] + f" raw={block['raw_bytes']} bytes")
for r in block["results"]:
print(f" {r['method']:30s} {r['bytes']:12d} ratio={r['ratio']:.6f} time={r['seconds']:.3f}s")
if __name__ == "__main__":
main()