Skip to content

data(cpu): fill process node and L3 cache for 540 Xeon CPUs - #133

Merged
Seungpyo1007 merged 2 commits into
mainfrom
data/cpu-xeon-specs
Jul 29, 2026
Merged

Seungpyo1007 merged 2 commits into
mainfrom
data/cpu-xeon-specs

Conversation

@Seungpyo1007

@Seungpyo1007 Seungpyo1007 commented Jul 29, 2026 •

Copy link
Copy Markdown
Member

What

540 Xeon records gain 1,037 previously-null fields — process_node 493, l3_cache_mb 540, boost_clock_ghz 4 — from the per-generation List of Intel Xeon processors (<uarch>-based) pages.

Combined with #132, CPU process_node coverage moves 24% → 46% and l3_cache_mb 19% → 48%.

Why these pages needed different handling

The Xeon hub page is only an index of links, which is why the earlier run found 0 rows there. The real data lives on 16 per-generation sub-pages, and those do not use wikitext tables at all — each CPU is a template call:

{{cpulist|...|model=Xeon D-2141I|cores=8|threads=16|l3=11|turbo=2.7/3.0 GHz|tdp=65|date=February 2018}}

Values are read by parameter name, so the column-shift hazard that required so much guarding in #132 cannot occur here.

Correctness

  • A row is used only when the data already held agrees: core count exactly, and TDP within 1 W when both sides have it. 20 of 656 matches were dropped on those checks; 378 parsed rows had no counterpart and were ignored.
  • process_node comes from the page's microarchitecture, which is unambiguous per generation (Skylake 14 nm, Haswell 22 nm, Ice Lake 10 nm, Sandy Bridge 32 nm). Pages that mix generations — Core-based, Nehalem, P6 — were left without a node rather than guessed.
  • Spot-checks against known specs all pass: E5-2699 v4 → 14 nm / 55 MB, Platinum 8180 → 14 nm / 38.5 MB, E5-2670 → 32 nm / 20 MB, Gold 6248 → 14 nm / 27.5 MB, E3-1230 v5 → 14 nm / 8 MB.

Only empty fields are written, nothing existing is overwritten, verified is untouched, and the specific generation page is recorded in source_urls.

python -m app.validate → Data validation passed. Dump refreshed for the 540 changed pages only.

Closes #1

540 Xeon records gain 1,037 previously-null fields (process_node 493,
l3_cache_mb 540, boost_clock_ghz 4), sourced from the per-generation
"List of Intel Xeon processors (<uarch>-based)" pages.

Those pages do not use wikitext tables: every CPU is a {{cpulist|...}}
template call with named parameters (model=, cores=, l3=, tdp=, turbo=),
so values are read by name and the column-shift hazard of the table-based
pages cannot occur here. A row is still only used when the data already
held agrees -- core count exactly, and TDP within 1 W when both sides have
it (20 of 656 matches were dropped on those checks).

The process node comes from the page's microarchitecture, which is
unambiguous per generation (Skylake 14 nm, Haswell 22 nm, Ice Lake 10 nm,
Sandy Bridge 32 nm). Pages that mix generations -- Core-based, Nehalem,
P6 -- were left without a node rather than guessed.

Refs #1
Regenerates site/public/v1/cpus for the 540 records changed in the previous
commit, with the engine at the pinned submodule commit so scoring output is
unchanged. Only pages whose content actually differs are committed; the 7,415
pages that differed solely by created_at/updated_at are left alone.

Refs #1
@github-actions github-actions Bot added data Dataset changes enhancement New feature or request labels Jul 29, 2026
@Seungpyo1007 Seungpyo1007 moved this from Todo to In Progress in TechAPI-Project Jul 29, 2026
@Seungpyo1007
Seungpyo1007 merged commit fd3b642 into main Jul 29, 2026
5 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in TechAPI-Project Jul 29, 2026
@Seungpyo1007
Seungpyo1007 deleted the data/cpu-xeon-specs branch July 29, 2026 06:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

data Dataset changes enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

TechAPI dataset roadmap and status: all categories (1989-2026)

1 participant