{
  "schema": "aner.cpu-image-blur-benchmark/1",
  "recorded_at_utc": "2026-10-17T03:11:23.727336+00:00",
  "source_record": "examples/parallel/cpu_benchmark_results.json",
  "source_record_sha256": "f14ec9edea8ba4116a49989359c360dce8d9c9ff1bc52b6b67bb3f9a914df683",
  "publication": "Image case projected from the original three-case record. Local executable and source paths and redundant process output are omitted. Numeric measurements and recorded identities are unchanged.",
  "native": {
    "version": "Aner 0.0.2-dev.1",
    "binary_sha256": "52a17401b2787ec175b315c7468e747426597f12f4ef90f16ed5f663c7c25f56",
    "execution": "Checked Aner task bodies interpreted by the native CPU executor; no ahead-of-time compilation is measured.",
    "build": {
      "type": "Release",
      "provenance": "The original examples/parallel/README.md identifies the optimized Release build and Apple M2 Max hardware."
    },
    "cpu_inventory": {
      "schema": "aner.parallel-inventory/1",
      "target": "macos-arm64",
      "source_sha256": "37130ea1852488a98a9bcc188430b29ff2a0d5c9406a98b65e731524c80cfaef",
      "logical_cpu_slots": 12,
      "effective_cpu_slots": 12,
      "automatic_workers": 12,
      "physical_cpu_slots": 12,
      "affinity_slots": null,
      "quota_slots": null,
      "gpu_parallel_tasks": false,
      "notes": [
        "macOS visible physical/logical CPU budget; per-process affinity/quota discovery unavailable",
        "Apple CPU core throughput may differ; explicit worker limits and measured scaling are recommended",
        "Native task kernels use one execution slot each; no nested numerical provider calls are made"
      ]
    }
  },
  "platform": {
    "cpu": "Apple M2 Max",
    "system": "Darwin",
    "release": "25.6.0",
    "version": "Darwin Kernel Version 25.6.0: Tue Aug 18 17:50:45 PDT 2026; root:xnu-12377.161.15.700.19~2/RELEASE_ARM64_T6020",
    "machine": "arm64",
    "processor": "arm",
    "python": "3.12.0 (v3.12.0:0fb18b02c8, Oct  2 2023, 09:45:56) [Clang 13.0.0 (clang-1300.0.29.30)]"
  },
  "settings": {
    "repeat": 3,
    "warmup": 1,
    "requested_workers": 4,
    "jobs_override": null,
    "max_steps": 500000000,
    "runtime_arguments": [
      "--prod",
      "--max-steps",
      "500000000"
    ]
  },
  "workload": {
    "jobs": 64,
    "columns": 3,
    "workers": 4,
    "width": 64,
    "height": 64,
    "blur_passes": 3,
    "neighborhood": "3 by 3 box blur",
    "border": "Original one pixel border retained in each pass",
    "inputs": "Synthetic grayscale images generated deterministically from iteration identity",
    "output_columns": [
      "mean_gray_level",
      "rms_gray_level",
      "center_pixel_gray_level"
    ]
  },
  "timing": {
    "caller_elapsed": "In-source monotonic elapsed time around the whole batch, including result allocation and collection. Executor methods also include context creation, thread startup, parameter snapshots and result publication. Synthetic fixture generation is timed inside each task.",
    "excluded": "Post-run verification, output statistics and printing are outside the caller elapsed timers. One full warmup program is excluded before three trials; each program also calls one untimed process_image task before comparison.",
    "executor_elapsed": "The separate executor_speedup uses SimulationResults.seconds(), which excludes some setup and publication costs. It is not the main caller elapsed speedup.",
    "subprocess_wall": "Each trial wall_seconds measures the complete program containing all three methods, startup, untimed task, verification and reporting.",
    "conditions": "The original README records no concurrent agent builds, tests or benchmarks; ordinary user and operating system activity was uncontrolled.",
    "speedup": "paired_speedup is the median of each trial sequential_seconds divided by parallel_seconds. ratio_of_median_times is retained separately."
  },
  "order": {
    "0": "sequential, one_worker, parallel",
    "1": "one_worker, parallel, sequential",
    "2": "parallel, sequential, one_worker"
  },
  "source": "examples/parallel/cpu_image_blur.aner",
  "source_sha256": "a28efae88bdb64f8c737aa3be643d98d580125d3dda571b6802c026a5bb189eb",
  "variant_configuration": "Each configured variant changes requested_workers from 0 to 4 and benchmark_order to its order key. The task body and workload are identical.",
  "variant_sha256": {
    "0": "e54501422cadffb6264da989867c8ff8f8422d48845e62dadfaa9c2540d19e93",
    "1": "976964ec79e149e7d667210cd44a371a2d4406ea4f1e4b1f027a3a2bc777a687",
    "2": "264800b136ff184f25e3b82700c174f5dc67bec0c19a582cd1c8ae03e1a743c5"
  },
  "trials": [
    {
      "trial": 1,
      "benchmark_order": 0,
      "wall_seconds": 6.070564249999734,
      "metrics": {
        "case": "cpu_image_blur",
        "jobs": 64,
        "columns": 3,
        "workers": 4,
        "verified": true,
        "sequential_seconds": 2.616597792,
        "one_worker_seconds": 2.616283875,
        "parallel_seconds": 0.78578175,
        "speedup": 3.3299294517847993,
        "executor_speedup": 3.329860476676327,
        "output_0_mean": 104.45688468195286,
        "output_1_mean": 114.93521418605819,
        "output_2_mean": 153.4673733281893,
        "summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 4,
          "peak_active": 4,
          "peak_queue": 8,
          "queue_capacity": 8,
          "seconds": 0.785673084,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        },
        "one_worker_summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 1,
          "peak_active": 1,
          "peak_queue": 2,
          "queue_capacity": 2,
          "seconds": 2.61618175,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        }
      }
    },
    {
      "trial": 2,
      "benchmark_order": 1,
      "wall_seconds": 6.003980124999998,
      "metrics": {
        "case": "cpu_image_blur",
        "jobs": 64,
        "columns": 3,
        "workers": 4,
        "verified": true,
        "sequential_seconds": 2.623386708,
        "one_worker_seconds": 2.601966083,
        "parallel_seconds": 0.716131583,
        "speedup": 3.663274697381975,
        "executor_speedup": 3.633681845376633,
        "output_0_mean": 104.45688468195286,
        "output_1_mean": 114.93521418605819,
        "output_2_mean": 153.4673733281893,
        "summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 4,
          "peak_active": 4,
          "peak_queue": 8,
          "queue_capacity": 8,
          "seconds": 0.716040583,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        },
        "one_worker_summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 1,
          "peak_active": 1,
          "peak_queue": 2,
          "queue_capacity": 2,
          "seconds": 2.601863667,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        }
      }
    },
    {
      "trial": 3,
      "benchmark_order": 2,
      "wall_seconds": 6.122460249999676,
      "metrics": {
        "case": "cpu_image_blur",
        "jobs": 64,
        "columns": 3,
        "workers": 4,
        "verified": true,
        "sequential_seconds": 2.6351,
        "one_worker_seconds": 2.633200875,
        "parallel_seconds": 0.803118959,
        "speedup": 3.281083045631351,
        "executor_speedup": 3.279249118453549,
        "output_0_mean": 104.45688468195286,
        "output_1_mean": 114.93521418605819,
        "output_2_mean": 153.4673733281893,
        "summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 4,
          "peak_active": 4,
          "peak_queue": 8,
          "queue_capacity": 8,
          "seconds": 0.802970166,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        },
        "one_worker_summary_json": {
          "iterations": 64,
          "columns": 3,
          "seed": 2026,
          "workers": 1,
          "peak_active": 1,
          "peak_queue": 2,
          "queue_capacity": 2,
          "seconds": 2.633139209,
          "completed_iterations": 64,
          "result_bytes": 1536,
          "managed_bytes": 1600,
          "dtype": "Float64",
          "device": "cpu",
          "order": "iteration"
        }
      }
    }
  ],
  "medians": {
    "sequential_seconds": 2.623386708,
    "one_worker_seconds": 2.616283875,
    "parallel_seconds": 0.78578175,
    "speedup": 3.3299294517847993,
    "executor_speedup": 3.329860476676327,
    "paired_speedup": 3.3299294517847993,
    "ratio_of_median_times": 3.3385691484944773
  },
  "verification": {
    "all_trials_passed": true,
    "checked_output_cells_per_trial": 192,
    "checked_derived_seeds_per_trial": 64,
    "contract": "Every returned metric matches the ordinary sequential loop and the one and four worker runs exactly. Derived seeds match between the executor runs. The image task uses iteration identity and intentionally does not consume its injected seed."
  }
}
