{
  "version": "1",
  "updated": "2026-09-27",
  "data_version": "2026-09-27",
  "unit": "Wh per million output tokens",
  "itl_deadline_ms": 500,
  "source": {
    "name": "ML.ENERGY Leaderboard",
    "publisher": "The ML.ENERGY Initiative (started at SymbioticLab, University of Michigan)",
    "url": "https://ml.energy/leaderboard/",
    "data_url": "https://raw.githubusercontent.com/ml-energy/leaderboard/master/public/data/tasks/lm-arena-chat.json",
    "version": "3.0 (released 2025-12-01); data compiled 2026-02-16",
    "released": "2025-12-01",
    "compiled": "2026-02-16",
    "compiled_evidence": "the leaderboard's public/data/index.json last_updated, and the last commit to the task files, both 2026-02-16",
    "retrieved": "2026-09-26",
    "licence": "Apache-2.0 per the ml-energy/benchmark-v3 dataset card",
    "licence_evidence": [
      "Hugging Face dataset ml-energy/benchmark-v3: tagged license:apache-2.0, ships a LICENSE file, and its dataset card's License section reads Apache-2.0",
      "The ML.ENERGY Leaderboard web app's footer says Apache 2.0",
      "The leaderboard repository (github.com/ml-energy/leaderboard) carries no licence file; its JSON files are reproduced here as published measurements until the ML.ENERGY team confirms that the dataset licence covers them"
    ],
    "workload": "Text Conversation (lm-arena-chat)",
    "method": "Energy per output token is steady-state GPU energy divided by the output tokens generated in the steady-state window (the benchmark's steady_state_energy_per_token), measured with Zeus under vLLM 0.11.1 on H100 80GB HBM3 and B200 servers. Energy per request is that figure multiplied by the average output length, not a separate measurement. Prompt processing is included.",
    "selection": "Each index row is the lowest-energy configuration for its model and GPU whose median inter-token latency does not exceed 500 ms, the leaderboard's own default ceiling; no measured configuration reaches it.",
    "cite": "Chung et al., The ML.ENERGY Benchmark: Toward Automated Inference Energy Measurement and Optimization, NeurIPS 2025 Datasets and Benchmarks, arXiv 2505.06371",
    "cite_url": "https://arxiv.org/abs/2505.06371",
    "used_for": "index, per-model configurations, concurrency curves, measured GPU power",
    "configurations": "328 stable configurations: the leaderboard publishes the runs that passed its stability filter; every run, including the unstable ones, is in the gated Hugging Face dataset ml-energy/benchmark-v3"
  },
  "caveat": "GPU energy only, measured at steady state on a busy server (the most energy-efficient configuration under a latency limit). Host, network, cooling and idle time are not counted. Every figure is a floor; a lightly used server sits well above it.",
  "boundary": "gpu_only",
  "slug": "nvidia-nemotron-nano-12b-v2",
  "name": "NVIDIA Nemotron Nano 12B V2",
  "model_id": "nvidia/NVIDIA-Nemotron-Nano-12B-v2",
  "params_b": 12.0,
  "active_params_b": 12.0,
  "architecture": "Mamba-Transformer Hybrid",
  "gpus": [
    "B200",
    "H100"
  ],
  "configurations": [
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 8,
      "avg_requests_in_flight": 8.0,
      "wh_per_million_output_tokens": 182.4,
      "joules_per_output_token": 0.6566272,
      "median_itl_ms": 7.2,
      "p90_itl_ms": 10.5,
      "p99_itl_ms": 16.6,
      "tokens_per_second": 1031.9,
      "gpu_power_watts_total": 678,
      "avg_output_tokens": 1338,
      "under_itl_deadline": true,
      "avg_running_batch": 8.0,
      "p95_itl_ms": 12.2,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/8",
      "repeat": 1
    },
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 16,
      "avg_requests_in_flight": 15.9,
      "wh_per_million_output_tokens": 116.88,
      "joules_per_output_token": 0.4207606,
      "median_itl_ms": 10.8,
      "p90_itl_ms": 22.9,
      "p99_itl_ms": 50.7,
      "tokens_per_second": 1212.7,
      "gpu_power_watts_total": 510,
      "avg_output_tokens": 1331,
      "under_itl_deadline": true,
      "avg_running_batch": 15.9,
      "p95_itl_ms": 28.0,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/16",
      "repeat": 1
    },
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 32,
      "avg_requests_in_flight": 31.9,
      "wh_per_million_output_tokens": 83.92,
      "joules_per_output_token": 0.3021101,
      "median_itl_ms": 16.0,
      "p90_itl_ms": 31.5,
      "p99_itl_ms": 56.9,
      "tokens_per_second": 1716.9,
      "gpu_power_watts_total": 519,
      "avg_output_tokens": 1402,
      "under_itl_deadline": true,
      "avg_running_batch": 31.9,
      "p95_itl_ms": 37.7,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/32",
      "repeat": 1
    },
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 64,
      "avg_requests_in_flight": 63.8,
      "wh_per_million_output_tokens": 56.88,
      "joules_per_output_token": 0.2047759,
      "median_itl_ms": 20.1,
      "p90_itl_ms": 35.5,
      "p99_itl_ms": 78.2,
      "tokens_per_second": 2764.0,
      "gpu_power_watts_total": 566,
      "avg_output_tokens": 1360,
      "under_itl_deadline": true,
      "avg_running_batch": 63.8,
      "p95_itl_ms": 45.7,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/64",
      "repeat": 1
    },
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 128,
      "avg_requests_in_flight": 127.7,
      "wh_per_million_output_tokens": 43.8,
      "joules_per_output_token": 0.1576767,
      "median_itl_ms": 23.2,
      "p90_itl_ms": 40.4,
      "p99_itl_ms": 88.1,
      "tokens_per_second": 4560.5,
      "gpu_power_watts_total": 719,
      "avg_output_tokens": 1406,
      "under_itl_deadline": true,
      "avg_running_batch": 127.7,
      "p95_itl_ms": 67.0,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/128",
      "repeat": 1
    },
    {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 256,
      "avg_requests_in_flight": 255.6,
      "wh_per_million_output_tokens": 39.43,
      "joules_per_output_token": 0.1419623,
      "median_itl_ms": 33.9,
      "p90_itl_ms": 68.0,
      "p99_itl_ms": 107.4,
      "tokens_per_second": 6232.7,
      "gpu_power_watts_total": 885,
      "avg_output_tokens": 1464,
      "under_itl_deadline": true,
      "avg_running_batch": 255.6,
      "p95_itl_ms": 84.4,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/256",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 8,
      "avg_requests_in_flight": 7.9,
      "wh_per_million_output_tokens": 207.6,
      "joules_per_output_token": 0.7473583,
      "median_itl_ms": 11.1,
      "p90_itl_ms": 11.3,
      "p99_itl_ms": 54.0,
      "tokens_per_second": 666.3,
      "gpu_power_watts_total": 498,
      "avg_output_tokens": 466,
      "under_itl_deadline": true,
      "avg_running_batch": 7.9,
      "p95_itl_ms": 11.4,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/8",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 16,
      "avg_requests_in_flight": 15.9,
      "wh_per_million_output_tokens": 125.78,
      "joules_per_output_token": 0.4528177,
      "median_itl_ms": 12.2,
      "p90_itl_ms": 12.5,
      "p99_itl_ms": 56.0,
      "tokens_per_second": 1141.0,
      "gpu_power_watts_total": 517,
      "avg_output_tokens": 460,
      "under_itl_deadline": true,
      "avg_running_batch": 15.9,
      "p95_itl_ms": 13.0,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/16",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 32,
      "avg_requests_in_flight": 31.8,
      "wh_per_million_output_tokens": 86.0,
      "joules_per_output_token": 0.3095975,
      "median_itl_ms": 14.5,
      "p90_itl_ms": 15.6,
      "p99_itl_ms": 62.7,
      "tokens_per_second": 1807.5,
      "gpu_power_watts_total": 560,
      "avg_output_tokens": 461,
      "under_itl_deadline": true,
      "avg_running_batch": 31.8,
      "p95_itl_ms": 55.9,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/32",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 64,
      "avg_requests_in_flight": 63.7,
      "wh_per_million_output_tokens": 68.44,
      "joules_per_output_token": 0.2463834,
      "median_itl_ms": 19.3,
      "p90_itl_ms": 54.5,
      "p99_itl_ms": 90.0,
      "tokens_per_second": 2552.9,
      "gpu_power_watts_total": 629,
      "avg_output_tokens": 459,
      "under_itl_deadline": true,
      "avg_running_batch": 63.7,
      "p95_itl_ms": 63.5,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/64",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 96,
      "avg_requests_in_flight": 95.5,
      "wh_per_million_output_tokens": 61.01,
      "joules_per_output_token": 0.2196497,
      "median_itl_ms": 24.1,
      "p90_itl_ms": 65.9,
      "p99_itl_ms": 130.5,
      "tokens_per_second": 2950.7,
      "gpu_power_watts_total": 648,
      "avg_output_tokens": 454,
      "under_itl_deadline": true,
      "avg_running_batch": 95.5,
      "p95_itl_ms": 71.3,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/96",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 128,
      "avg_requests_in_flight": 127.6,
      "wh_per_million_output_tokens": 58.02,
      "joules_per_output_token": 0.2088657,
      "median_itl_ms": 29.2,
      "p90_itl_ms": 73.3,
      "p99_itl_ms": 174.3,
      "tokens_per_second": 3229.5,
      "gpu_power_watts_total": 675,
      "avg_output_tokens": 460,
      "under_itl_deadline": true,
      "avg_running_batch": 127.6,
      "p95_itl_ms": 77.0,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/128",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 192,
      "avg_requests_in_flight": 191.3,
      "wh_per_million_output_tokens": 52.19,
      "joules_per_output_token": 0.1878771,
      "median_itl_ms": 38.7,
      "p90_itl_ms": 82.7,
      "p99_itl_ms": 236.4,
      "tokens_per_second": 3682.8,
      "gpu_power_watts_total": 692,
      "avg_output_tokens": 462,
      "under_itl_deadline": true,
      "avg_running_batch": 191.3,
      "p95_itl_ms": 87.7,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/192",
      "repeat": 1
    },
    {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 256,
      "avg_requests_in_flight": 241.2,
      "wh_per_million_output_tokens": 50.08,
      "joules_per_output_token": 0.1803029,
      "median_itl_ms": 46.0,
      "p90_itl_ms": 92.3,
      "p99_itl_ms": 285.8,
      "tokens_per_second": 3846.8,
      "gpu_power_watts_total": 694,
      "avg_output_tokens": 462,
      "under_itl_deadline": true,
      "avg_running_batch": 241.2,
      "p95_itl_ms": 104.6,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/256",
      "repeat": 1
    }
  ],
  "best": {
    "B200": {
      "gpu": "B200",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 256,
      "avg_requests_in_flight": 255.6,
      "wh_per_million_output_tokens": 39.43,
      "joules_per_output_token": 0.1419623,
      "median_itl_ms": 33.9,
      "p90_itl_ms": 68.0,
      "p99_itl_ms": 107.4,
      "tokens_per_second": 6232.7,
      "gpu_power_watts_total": 885,
      "avg_output_tokens": 1464,
      "under_itl_deadline": true,
      "avg_running_batch": 255.6,
      "p95_itl_ms": 84.4,
      "row_id": "nvidia-nemotron-nano-12b-v2/B200/1/256",
      "repeat": 1
    },
    "H100": {
      "gpu": "H100",
      "num_gpus": 1,
      "tensor_parallel": 1,
      "data_parallel": 1,
      "expert_parallel": 1,
      "precision": "BF16",
      "max_num_seqs": 256,
      "avg_requests_in_flight": 241.2,
      "wh_per_million_output_tokens": 50.08,
      "joules_per_output_token": 0.1803029,
      "median_itl_ms": 46.0,
      "p90_itl_ms": 92.3,
      "p99_itl_ms": 285.8,
      "tokens_per_second": 3846.8,
      "gpu_power_watts_total": 694,
      "avg_output_tokens": 462,
      "under_itl_deadline": true,
      "avg_running_batch": 241.2,
      "p95_itl_ms": 104.6,
      "row_id": "nvidia-nemotron-nano-12b-v2/H100/1/256",
      "repeat": 1
    }
  }
}
