{
  "model": "spatial-computer pitch128 / instruction-set v4",
  "model_spec_commit": "01a0bd5e0d2564825b0f53dd766f763c82dbc7c0",
  "model_url": "https://github.com/cybertronai/simplified-dally-model/blob/01a0bd5e0d2564825b0f53dd766f763c82dbc7c0/models/spatial-computer/README.md",
  "score_kind": "exact static counts of a globally serialized legal schedule",
  "numeric_execution_checked_by_scorer": false,
  "program_sha256": "90e442f0d572a6a1692a26d7b7a18506b2e5157746c350d29b19fc70a4b5df20",
  "configuration": {
    "algorithm": "ordered-FP32 PCA-QDA: Newton-Raphson sqrt features, K-dimensional basis by subspace iteration on the global covariance of the first NP samples (fixed literal start, division-only Gram-Schmidt, max-|entry| scaling), quadratic discriminant analysis with trace shrinkage on the projected features",
    "classes": 10,
    "features": 81,
    "basis_dims": 40,
    "basis_samples": 2000,
    "rounds": 3,
    "sqrt_steps": 6,
    "train_examples": 10000,
    "test_examples": 10000,
    "shrinkage": 0.05000000074505806,
    "stat_blocks": 3,
    "training": "pass A: sqrt of the first NP samples stored back, global sums and 3,321 packed second moments; m, S; ROUNDS x (V = S W, Gram-Schmidt without normalization, column max-abs scaling); pass B1: every sample sqrt (if not stored), minus m, projected onto the resident basis, z stored, masked class counts/sums; pass B2: masked packed second moments of z in resident blocks; per class mean, S = M/count - mu mu^T, S <- (1-shrink) S + shrink (tr S / K) I, Gauss-Jordan inverse without pivoting, kappa = log(count/N) - 0.5 sum log(pivots)",
    "log": "40 halving and 40 doubling compare/select steps into [0.75, 1.5], then k*ln2 + 2*atanh((x-1)/(x+1)) with the series to z^15",
    "prediction": "each query sqrt, minus m, projected into z; per class (resident packed precision, mean, kappa): d = z - mu; s = sum_i d_i * sum_{j>=i} P'_ij d_j; score = kappa - 0.5*s; running best per query, first strict maximum wins; labels sent last",
    "tape": "train pixels FP32 bits (image/255, 9x9 area resize), train labels uint32, test pixels FP32 bits",
    "normalization": "none beyond /255; the square-root feature map and max-abs basis scaling are fixed parts of the learner, including its trace shrinkage",
    "initialization": "all scratch explicitly zeroed (charged) except literals, recv targets and staging buffers written before their first read",
    "reference": "reference.py in this directory (bitwise equal parameters and labels under the executor at reduced size: validate_reduced.py)",
    "variant": {
      "stat_blocks": 3,
      "region_order": [
        "s",
        "k",
        "xs",
        "zs",
        "d",
        "kapb",
        "mub",
        "pkb",
        "m",
        "Wn",
        "prod",
        "momb",
        "gm",
        "den",
        "gsum",
        "cnt",
        "sum",
        "kap",
        "mu",
        "pk",
        "best",
        "lab",
        "mom",
        "Sk",
        "Pw",
        "S",
        "V",
        "z",
        "x",
        "labels"
      ]
    }
  },
  "energy_fj": 186854673900,
  "energy_mj": 0.1868546739,
  "word_node_hops": 186854673900,
  "cycles": 2047716289,
  "time_ms": 2047.716289,
  "time_ns": 2047716289,
  "components": {
    "reads": {
      "scratch_accesses": 1168599428,
      "energy_fj": 110046801042,
      "cycles": 1260773522
    },
    "writes": {
      "scratch_accesses": 549748032,
      "energy_fj": 46738005318,
      "cycles": 561584471
    },
    "input_destinations": {
      "scratch_accesses": 1630000,
      "energy_fj": 3510886326,
      "cycles": 16023336
    },
    "output_sources": {
      "scratch_accesses": 10000,
      "energy_fj": 4101214,
      "cycles": 30000
    },
    "input_stage_and_tape": {
      "stage_scratch_accesses": 1630000,
      "tape_instructions": 1630000,
      "energy_fj": 26392960000,
      "cycles": 208640000
    },
    "output_stage_and_tape": {
      "stage_scratch_accesses": 10000,
      "tape_instructions": 10000,
      "energy_fj": 161920000,
      "cycles": 664960
    }
  },
  "logical_instructions": {
    "set": 5398318,
    "recv": 1630000,
    "copy": 6465040,
    "add": 256059670,
    "div": 9779362,
    "mul": 177942761,
    "sub": 7195601,
    "cmp": 542240,
    "select": 86365040,
    "send": 10000
  },
  "executed_instructions": {
    "set": 5398318,
    "recv": 1630000,
    "copy": 8105040,
    "add": 256059670,
    "div": 9779362,
    "mul": 177942761,
    "sub": 7195601,
    "cmp": 542240,
    "select": 86365040,
    "send": 10000
  },
  "total_executed_instructions": 553028032,
  "input_tape_words": 1630000,
  "output_tape_words": 10000,
  "per_port_words": {
    "input": [
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520,
      6520
    ],
    "output": [
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40,
      40
    ]
  },
  "program_scratch_words": 1281069,
  "stage_scratch_words": 250,
  "peak_allocated_scratch_words": 1281319,
  "peak_allocated_scratch_bytes": 5125276,
  "peak_initialized_program_words": 1281069,
  "memory_tiles": 334,
  "max_tile_scratch_words": 12288,
  "compute_processor": [
    125,
    0
  ],
  "instruction_issuing_processors": 250,
  "max_simultaneous_outstanding_accesses": 1,
  "max_simultaneous_instructions": 1,
  "stage_local_coordinate": [
    64,
    31
  ],
  "placement_sha256": "9982cd42ba4c8b987f817093185755114fa672458d73014656e5b4d671c226cb",
  "histograms_computed": 34162,
  "initialization_proof_visits": 1281098,
  "schedule": "Expand original affine loops in lexicographic iteration order. Complete every access before starting the next. Each normal instruction runs on P(125,0), reading listed sources then writing destination. Lower kth recv to P(k mod250,0):recv stage; P(125,0):copy original_dst,stage. Lower qth send to P(125,0):copy stage,original_src; P(q mod250,0):send stage. Route remote requests horizontally then vertically; responses retrace. Global serialization defines access/transfer cycle starts by prefix sums of blocking latencies; no contention or waiting queues occur.",
  "time_to_score_seconds": 2.7734867890103487,
  "time_to_score_scope": "Program/schema/address/initialization validation, physical placement, affine access histograms, exact integer costs, port counts and program/placement hashing; excludes program generation, JSON/file I/O and numerical accuracy execution",
  "software": {
    "python": "3.11.16 (main, Aug 25 2026, 14:00:53) [Clang 22.1.3 ]",
    "numpy": "2.4.6",
    "platform": "Linux-7.0.0-31-generic-x86_64-with-glibc2.43"
  },
  "source_sha256": {
    "affine.py": "8ac38bf9fccbef87ba05c4dd6a4e5d9901dceae4e71baad0ddd5794c22298d45",
    "score.py": "41b47384ec525718a4546f98f5ad25a4d82dd8bdfb97a762e451476cae29eaf8",
    "spatial_program.py": "9e6d2b44709ec0b66c53b34e26be9a711a2d16c04a1ebc0da3e980efb592fa8c",
    "reference.py": "42c1e15ec807b45f9098d4a58486d5c736e8aa196aebf6f7998e603b11d8a376"
  },
  "program_file_sha256": "afbca8a2fd11a79878402ff6b5f1a97e0d3b2f3213de6ec98fe2d22938bf249b"
}
