Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

01 — Overview

LifeWatch ERIC

This Jupyter Book presents the results of a replication study of the benchmarks from:

Law, R.M. & Ardo, J. (2024). Using a discrete global grid system for a scalable, interoperable, and reproducible system of land-use mapping. Big Earth Data, DOI: Law & Ardo (2024)

Original benchmark code: dggsBenchmarks v1.1.1.

The replication has three layers:

  • Reproduction — same methodology, same tools (H3 + Polars).

  • Replication — same methodology, alternative tools (xdggs).

  • Extension (v3.0.0) — HEALPix benchmarks on the sphere and on the WGS84 ellipsoid via the healpix-geo library.

from _helpers import ROOT, load_json

print(f"Repository root: {ROOT}")
Repository root: /home/runner/work/dggs_replication_2026/dggs_replication_2026

Run environment

The committed results record the exact environment they were produced in.

info = load_json("results_h3/system_info.json")

print(f"Code version : {info['code_version']}")
print(f"Timestamp    : {info['timestamp']}")
print(f"Python       : {info['python_version']}")
print(f"CPU count    : {info['system']['cpu_count']}")
print(f"Memory (GB)  : {info['system']['memory_gb']}")
print()
print("Pinned dependencies:")
for pkg, ver in info["dependencies"].items():
    print(f"  {pkg:<12} {ver}")
Code version : 2026-01-20-unified-v3
Timestamp    : 2026-03-07T19:17:55.589337
Python       : 3.12.12
CPU count    : 10
Memory (GB)  : 32.0

Pinned dependencies:
  numpy        2.4.1
  pandas       2.3.3
  geopandas    1.1.2
  h3           4.4.1
  xdggs        available
  polars       1.37.1

Benchmark configuration

cfg = info["configuration"]
for key, val in cfg.items():
    print(f"{key:<16}: {val}")
vector_layers   : [5, 10, 20, 50]
raster_layers   : [10, 50, 100, 500]
h3_resolution   : 9
random_seed     : 42

Paper claims under test

The two central performance claims of Law & Ardo (2024):

summary = load_json("results_h3/summary.json")
for name, claim in summary["paper"]["claims"].items():
    print(f"- {name.capitalize()}: {claim}")
- Vector: DGGS provides orders of magnitude performance improvement
- Raster: DGGS and raster methods show roughly equivalent performance
References
  1. Law, R. M., & Ardo, J. (2024). Using a discrete global grid system for a scalable, interoperable, and reproducible system of land-use mapping. Big Earth Data, 9(1), 29–46. 10.1080/20964471.2024.2429847