QuakeScope 2026

Re-running the global phase catalogue

What changed since 2025, what the benchmarks say about which model to trust, and what it costs to run.

v3.0.0 · SeisSCOPED/QuakeScope

Why re-run at all

The 2025 campaign picked a petabyte of continuous data with a single model and wrote it into a document store. Four things changed.

Better weights

A fine-tuned PhaseNet family rather than one model, chosen on a benchmark rather than by default.

Amplitudes

Wood-Anderson displacement per pick, so the catalogue carries magnitudes, not just arrival times.

Parquet on S3

Same picks in a sixth of the space, with no database to keep running between campaigns.

No classifier

QuakeXNet is out: it depends far more on where an arrival sits in its window than on region.

How the models were compared

Five sequences, four weight sets, scored against analyst arrivals from published catalogues.

SequenceSettinganalyst Panalyst S
Ridgecrest 2019M7.1, dense aftershocks seconds apart347298
Mendocino 2024M7.0, offshore, one-sided geometry200113
San Simeon 2003M6.5, sparse 2003 network6216
Monte Cristo 2020M6.5, Basin and Range1612
Monroe WA 2019M4.6 — no published arrivals

The reference is arrivals attached to published origins, merged across SCEDC and NCEDC and restricted to manually reviewed picks. It is not exhaustive: unmatched model picks are reported as extra detections, never as false positives.

A shared threshold does not compare models

S recall at a shared 0.3 — Ridgecrest

original0.73jma_wc0.49quakescope20260.52instance0.18

original looks decisively best.

…but it emits far more picks to get there

original304jma_wc134quakescope2026137instance44

Extra detections at the same threshold.

Holding the threshold fixed does not hold the operating point fixed. Matched on pick budget, the three fine-tunes land within a few points of each other and no ordering survives across all five sequences.

What that looks like on the waveform

CI.CLC, three minutes of Ridgecrest aftershocks, twenty minutes after the mainshock. Same data, same threshold, four models.

Waveform with phase picks from four
  weight sets: original 26 picks, quakescope2026 18, jma_wc 17, instance 4.

This is the finding that decided a campaign. instance returns 4 picks where original returns 26 on identical data — a ceiling on dense near-field sequences that no threshold recovers. It is why the western-states deliverable was moved off instance.

Where a station-day actually goes

One station-day profiled stage by stage, on the real code path.

amp.wood_anderson20.48 smodel.classify7.23 samp.raw2.00 ss3.get2.26 smseed.parse0.27 sparquet write0.36 s

CPU-bound, not I/O-bound

All S3 and parsing together is under 4%. Compute does not have to sit beside the data — cross-region costs about a second per station-day.

Writing Parquet is free

0.1% of a station-day. The storage change cost no throughput and saved 6.5× on space.

Amplitudes dominate

The measurement added since 2025 is now the largest stage — larger than inference.

Two ways to run it

Fargate SpotEC2 Spot via SkyPilot
Spot quota, us-east-212,000 vCPU, granted256 vCPU
Cold start66 s~3 min
Same shard, wall clock33.7 s53.7 s
Idle costnone — the task endsjobs controller persists, on-demand
Proven at scalethe 2025 petabyte campaignfour shards

The 33.7 s against 53.7 s is one sample on each side, and the gap is almost entirely inference on identical code. It should be repeated before it is relied on.

The launch

Five campaigns. Western states is the stakeholder deliverable and runs first.

CampaignWeightstation-days
EarthScope onshorejma_wc44,127,796
Western statesoriginal33,796,194
NCEDCjma_wc4,551,557
SCEDCjma_wc2,467,740
EarthScope offshoreobs950,793

Western states: 24,111 stations across 122 networks, selected by true state polygons. A bounding box sweeps in ~3,000 stations from neighbouring states.

What we do not know yet

Stated plainly, because these are the numbers that would move the cost estimate most.

Processes per vCPU

Every benchmark used one process on an eight-vCPU box, so most of the machine was idle. This swings campaign cost about 4×. An hour of work to settle.

Bands per station

The picker runs on every band a station has — 2.83× on SCEDC, including 1 Hz channels that cannot be picked at all.

The 2025 baseline

Cost Explorer is blocked on this account, so "match or beat 2025" has no measured baseline yet.

Scale

v3 has run four shards end to end. The 2025 machinery completed a petabyte. That gap is the reason the first campaign starts with a two-shard smoke test.

Reading the result

Picks land as Hive-partitioned Parquet on S3. No database, no VPC, readable from anywhere.

s3://quakescope-picks-2026/western/
    picks/network=CI/year=2019/month=07/<shard_id>.parquet
    manifests/<shard_id>.json     what each job wrote
    runs/<run_id>.json            model, weight, thresholds

Every pick carries rid, resolving to the model and weights that produced it — so picks from different campaigns stay separable in one catalogue.

Full reports: seisscoped.org/QuakeScope · Conventions: docs/rerun_2026/17_launch_conventions.md