{
  "generatedBy": "bench.mjs",
  "startedAt": "2026-10-05T12:58:53.141Z",
  "finishedAt": "2026-10-05T12:58:53.279Z",
  "machine": {
    "cpu": "Apple M1",
    "os": "Darwin 26.3",
    "arch": "arm64",
    "node": "v22.18.0",
    "python": "Python 3.13.5"
  },
  "metricCount": 30,
  "metrics": [
    {
      "metric": "ollama_version_native",
      "value": "0.35.1",
      "unit": "",
      "note": "GET /api/version"
    },
    {
      "metric": "ollama_version_docker",
      "value": "0.35.1",
      "unit": "",
      "note": "GET /api/version on the container's published port"
    },
    {
      "metric": "docker_image_disk",
      "value": "7.05GB",
      "unit": "",
      "note": "docker image ls SIZE for ollama/ollama:0.35.1 (linux/arm64, containerd store)"
    },
    {
      "metric": "docker_pull_s",
      "value": 1088.31,
      "unit": "s",
      "note": "download-bound on this connection",
      "n": 1
    },
    {
      "metric": "docker_sees_model_readonly_mount",
      "value": true,
      "unit": "",
      "note": "`ollama list` inside the container with the host model folder mounted :ro"
    },
    {
      "metric": "docker_vcpus",
      "value": 8,
      "unit": "vCPU",
      "note": "nproc inside the container"
    },
    {
      "metric": "docker_device_requests",
      "value": "null",
      "unit": "",
      "note": "HostConfig.DeviceRequests (no --gpus flag)"
    },
    {
      "metric": "docker_inference_compute",
      "value": "id=cpu library=cpu total=3.8 GiB",
      "unit": "",
      "note": "Ollama startup log line after GPU discovery"
    },
    {
      "metric": "docker_total_vram",
      "value": "0 B",
      "unit": "",
      "note": "Ollama startup log"
    },
    {
      "metric": "docker_threads",
      "value": 8,
      "unit": "threads",
      "note": "llama-server system_info"
    },
    {
      "metric": "native_ollama_ps",
      "value": "1.2 GB, 100% GPU",
      "unit": "",
      "note": "`ollama ps` SIZE and PROCESSOR with the model loaded"
    },
    {
      "metric": "native_cold_load_s",
      "value": 3.12,
      "unit": "s",
      "note": "load_duration of the first request after unloading",
      "n": 1
    },
    {
      "metric": "native_cold_eval_tps",
      "value": 39.5,
      "unit": "tok/s",
      "note": "eval_count / eval_duration, first request",
      "n": 1
    },
    {
      "metric": "native_warm_eval_tps_median",
      "value": 46.56,
      "unit": "tok/s",
      "note": "128-token generation, warm; runs [44.39, 46.56, 48.06]",
      "n": 3
    },
    {
      "metric": "native_warm_prompt_tps_median",
      "value": 2150.9,
      "unit": "tok/s",
      "note": "52-token prompt, warm; runs [1593.1, 2150.9, 2395.0]",
      "n": 3
    },
    {
      "metric": "native_warm_total_s_median",
      "value": 2.78,
      "unit": "s",
      "note": "total_duration of a warm request",
      "n": 3
    },
    {
      "metric": "docker_ollama_ps",
      "value": "1.4 GB, 100% CPU",
      "unit": "",
      "note": "`ollama ps` SIZE and PROCESSOR with the model loaded (docker exec)"
    },
    {
      "metric": "docker_cold_load_s",
      "value": 96.7,
      "unit": "s",
      "note": "load_duration of the first request after unloading",
      "n": 1
    },
    {
      "metric": "docker_cold_eval_tps",
      "value": 0.65,
      "unit": "tok/s",
      "note": "eval_count / eval_duration, first request",
      "n": 1
    },
    {
      "metric": "docker_warm_eval_tps_median",
      "value": 9.1,
      "unit": "tok/s",
      "note": "128-token generation, warm; runs [10.83, 9.1, 8.11]",
      "n": 3
    },
    {
      "metric": "docker_warm_prompt_tps_median",
      "value": 158.6,
      "unit": "tok/s",
      "note": "52-token prompt, warm; runs [158.6, 844.4, 72.7]",
      "n": 3
    },
    {
      "metric": "docker_warm_total_s_median",
      "value": 14.26,
      "unit": "s",
      "note": "total_duration of a warm request",
      "n": 3
    },
    {
      "metric": "native_over_docker_warm_eval_ratio",
      "value": 5.12,
      "unit": "x",
      "note": "median warm generation speed, native Metal / Docker CPU"
    },
    {
      "metric": "docker_container_mem",
      "value": "1.322GiB / 3.828GiB",
      "unit": "",
      "note": "docker stats MEM USAGE with the model loaded, after the runs"
    },
    {
      "metric": "docker_cpu_model_buffer_mib",
      "value": 183.12,
      "unit": "MiB",
      "note": "llama-server load log inside the container"
    },
    {
      "metric": "docker_cpu_repack_buffer_mib",
      "value": 934.14,
      "unit": "MiB",
      "note": "llama-server load log inside the container"
    },
    {
      "metric": "docker_kv_buffer_mib",
      "value": 112,
      "unit": "MiB",
      "note": "llama-server load log inside the container"
    },
    {
      "metric": "docker_mmap",
      "value": "disabled",
      "unit": "",
      "note": "Ollama log: 'disabling mmap for llama-server load by default ... reason=cpu'"
    },
    {
      "metric": "host_swap_used_before_native",
      "value": "10556.31M",
      "unit": "",
      "note": "sysctl vm.swapusage just before the phase started"
    },
    {
      "metric": "host_swap_used_before_docker",
      "value": "11092.06M",
      "unit": "",
      "note": "sysctl vm.swapusage just before the phase started"
    }
  ],
  "log": [
    ""
  ]
}
