data(cpu): fill process node and L3 cache for 540 Xeon CPUs - #133
Conversation
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
🔎 Data verification — Tier 0 (offline existence/trust)Scored by Changed records in this PR540 record(s) scored. %%{init: {"theme":"base","themeVariables":{"pie1":"#3fb950","pie2":"#d29922","pie3":"#f85149","pieStrokeWidth":"0px","pieOpacity":"1"}}}%%
pie showData
title Verification bands — all records
"Green" : 539
"Yellow" : 0
"Red" : 1
Hard violations (forced red):
Full-dataset baseline105742 record(s) scored. %%{init: {"theme":"base","themeVariables":{"pie1":"#3fb950","pie2":"#d29922","pie3":"#f85149","pieStrokeWidth":"0px","pieOpacity":"1"}}}%%
pie showData
title Verification bands — all records
"Green" : 14312
"Yellow" : 89517
"Red" : 1913
Hard violations (forced red):
green = authoritative source + complete + consistent · yellow = plausible, needs confirmation · red = sparse/weak source or a hard contradiction. Promotion to |
TechEngine change review: PASS
Changed data
Changed record examples
Heuristic review
|
TechEngine validation stats: PASS
Data summary
Warning Tracked verified coverage is below 50% for watch 2.5% (11/433), brand 4.8% (10/207), tablet 5.0% (174/3455), soc 5.8% (123/2104), smartphone 9.1% (8453/93396), all 9.5% (10028/105742), gpu 12.0% (244/2030), pda 19.3% (27/140), and 1 more. Validation notes
Key output:
|
What
540 Xeon records gain 1,037 previously-null fields —
process_node493,l3_cache_mb540,boost_clock_ghz4 — from the per-generation List of Intel Xeon processors (<uarch>-based) pages.Combined with #132, CPU
process_nodecoverage moves 24% → 46% andl3_cache_mb19% → 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:
Values are read by parameter name, so the column-shift hazard that required so much guarding in #132 cannot occur here.
Correctness
process_nodecomes 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.Only empty fields are written, nothing existing is overwritten,
verifiedis untouched, and the specific generation page is recorded insource_urls.python -m app.validate→ Data validation passed. Dump refreshed for the 540 changed pages only.Closes #1