{
  "measured_on": "2026-09-22",
  "source_commit": "f075dd3",
  "script": "scripts/benchmark_grouped_state_space.py",
  "environment": {
    "python": "3.12.13",
    "platform": "Linux-6.8.0-136-generic-x86_64-with-glibc2.35",
    "cpu": "AMD Ryzen Threadripper PRO 3995WX 64-Cores",
    "cpu_affinity": [
      16,
      17,
      18,
      19,
      20,
      21,
      22,
      23
    ],
    "jax_enable_x64": true,
    "jax_platform_name": "cpu",
    "blas_threads": 1,
    "omp_threads": 1,
    "background": "Other tests ran on disjoint CPU affinity sets; timings are illustrative, not dedicated-machine estimates.",
    "packages": {
      "numpy": "2.5.3",
      "scipy": "1.18.1",
      "jax": "0.11.2",
      "jaxlib": "0.11.2",
      "numpyro": "0.22.0"
    }
  },
  "comparisons": [
    {
      "parameters": "lag",
      "times": 32,
      "fit_objective_difference": 3.126388037344441e-13,
      "total_fit_seconds_scalar_over_grouped": 2.254915225510904,
      "warm_value_gradient_seconds_scalar_over_grouped": 20.00171813692858,
      "warm_smoother_seconds_scalar_over_grouped": 14.255572658502649,
      "transition_bytes_scalar_over_grouped": 30.9375,
      "probe_objective_max_absolute_difference": 9.094947017729282e-12,
      "probe_gradient_max_absolute_difference": 1.8917489796876907e-10,
      "probe_mean_max_absolute_difference": 7.30526750203353e-14,
      "probe_covariance_max_absolute_difference": 2.858824288409778e-15
    },
    {
      "parameters": "all",
      "times": 32,
      "fit_objective_difference": 3.410605131648481e-12,
      "total_fit_seconds_scalar_over_grouped": 3.160358462340691,
      "warm_value_gradient_seconds_scalar_over_grouped": 18.800023314415352,
      "warm_smoother_seconds_scalar_over_grouped": 14.183295365861367,
      "transition_bytes_scalar_over_grouped": 30.9375,
      "probe_objective_max_absolute_difference": 2.9103830456733704e-11,
      "probe_gradient_max_absolute_difference": 1.7462298274040222e-10,
      "probe_mean_max_absolute_difference": 8.93729534823251e-14,
      "probe_covariance_max_absolute_difference": 1.9012569296705806e-15
    },
    {
      "parameters": "all",
      "times": 128,
      "fit_objective_difference": 6.821210263296962e-13,
      "total_fit_seconds_scalar_over_grouped": 6.540277413630802,
      "warm_value_gradient_seconds_scalar_over_grouped": 18.532055996838977,
      "warm_smoother_seconds_scalar_over_grouped": 18.142911212474463,
      "transition_bytes_scalar_over_grouped": 31.13671875,
      "probe_objective_max_absolute_difference": 7.275957614183426e-12,
      "probe_gradient_max_absolute_difference": 2.764863893389702e-10,
      "probe_mean_max_absolute_difference": 1.3254675135243588e-13,
      "probe_covariance_max_absolute_difference": 2.8449465006019636e-15
    }
  ],
  "records": [
    {
      "backend": "scalar",
      "response": "bateman",
      "parameters": "lag",
      "times": 32,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 28.294412158429623,
      "objective": 115.09605899631596,
      "physical_projected_gradient": 6.538747895135089e-05,
      "meets_gradient_tolerance": true,
      "search_iterations": 91,
      "refinement_iterations": 0,
      "observations": 1980,
      "filtering_events": 1980,
      "transition_bytes": 2027520,
      "warm_value_gradient_seconds": 0.1719542220234871,
      "warm_smoother_seconds": 0.0522517217323184,
      "warnings": []
    },
    {
      "backend": "grouped",
      "response": "bateman",
      "parameters": "lag",
      "times": 32,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 12.547882881946862,
      "objective": 115.09605899631627,
      "physical_projected_gradient": 6.382149270045545e-05,
      "meets_gradient_tolerance": true,
      "search_iterations": 91,
      "refinement_iterations": 0,
      "observations": 1980,
      "filtering_events": 64,
      "transition_bytes": 65536,
      "warm_value_gradient_seconds": 0.008596972562372684,
      "warm_smoother_seconds": 0.0036653541028499603,
      "warnings": []
    },
    {
      "backend": "scalar",
      "response": "bateman",
      "parameters": "all",
      "times": 32,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 47.17182793933898,
      "objective": 114.12960227120575,
      "physical_projected_gradient": 0.00010038050756655537,
      "meets_gradient_tolerance": true,
      "search_iterations": 173,
      "refinement_iterations": 0,
      "observations": 1980,
      "filtering_events": 1980,
      "transition_bytes": 2027520,
      "warm_value_gradient_seconds": 0.18399247992783785,
      "warm_smoother_seconds": 0.05433178041130304,
      "warnings": []
    },
    {
      "backend": "grouped",
      "response": "bateman",
      "parameters": "all",
      "times": 32,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 14.926100472919643,
      "objective": 114.12960227120234,
      "physical_projected_gradient": 0.00013102888473603969,
      "meets_gradient_tolerance": true,
      "search_iterations": 175,
      "refinement_iterations": 0,
      "observations": 1980,
      "filtering_events": 64,
      "transition_bytes": 65536,
      "warm_value_gradient_seconds": 0.009786821901798248,
      "warm_smoother_seconds": 0.0038306880742311478,
      "warnings": []
    },
    {
      "backend": "scalar",
      "response": "bateman",
      "parameters": "all",
      "times": 128,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 134.63777184300125,
      "objective": 682.7519102042274,
      "physical_projected_gradient": 0.0004299255981994321,
      "meets_gradient_tolerance": true,
      "search_iterations": 169,
      "refinement_iterations": 0,
      "observations": 7971,
      "filtering_events": 7971,
      "transition_bytes": 8162304,
      "warm_value_gradient_seconds": 0.6389995971694589,
      "warm_smoother_seconds": 0.20879646390676498,
      "warnings": []
    },
    {
      "backend": "grouped",
      "response": "bateman",
      "parameters": "all",
      "times": 128,
      "channels": 16,
      "seed": 71,
      "total_fit_seconds": 20.585942052304745,
      "objective": 682.7519102042268,
      "physical_projected_gradient": 5.0569730342786556e-05,
      "meets_gradient_tolerance": true,
      "search_iterations": 168,
      "refinement_iterations": 5,
      "observations": 7971,
      "filtering_events": 256,
      "transition_bytes": 262144,
      "warm_value_gradient_seconds": 0.034480771981179714,
      "warm_smoother_seconds": 0.01150843221694231,
      "warnings": []
    }
  ]
}
