h3-blackwell-runtime/benchmarks/gb10-four-gemm-nvfp4-roofline.json
2026-08-25 20:30:22 +07:00

95 lines
3.7 KiB
JSON

{
"status": "complete",
"device": "NVIDIA GB10",
"compute_capability": "SM121",
"workload": {
"resolution": [1344, 768],
"frames": 124,
"tokens": 37810,
"block": 24,
"seed": 440420
},
"method": {
"flops": "2*M*N*K dense-equivalent operations",
"l2_traffic": "Nsight Compute lts__t_bytes.sum with cache control disabled",
"off_chip_proxy": "32 bytes times warm-cache L2 read plus write lookup-miss sectors",
"practical_compute_ceiling_tflops_per_s": 321.455895,
"theoretical_memory_bandwidth_gb_per_s": 273.0,
"practical_crossover_flops_per_byte": 1177.49412,
"note": "GB10 exposes no direct physical DRAM-byte counter; classification uses the documented bandwidth and the warm-cache off-chip request proxy."
},
"gemms": [
{
"role": "attention_qkv",
"shape_mnk": [37810, 21504, 5376],
"kernel": "standard",
"duration_ms": 27.195296,
"dense_equivalent_tflops": 8.742088,
"achieved_tflops_per_s": 321.455895,
"l2_requested_gb": 40.129071,
"off_chip_proxy_gb": 4.368326,
"off_chip_arithmetic_intensity": 2001.244307,
"ideal_unique_bytes_gb": 1.805498,
"off_chip_amplification": 2.419458,
"classification": "compute-bound"
},
{
"role": "attention_output",
"shape_mnk": [37810, 5376, 7168],
"kernel": "standard",
"duration_ms": 9.25072,
"dense_equivalent_tflops": 2.914029,
"achieved_tflops_per_s": 315.005686,
"l2_requested_gb": 13.24078,
"off_chip_proxy_gb": 1.337147,
"off_chip_arithmetic_intensity": 2179.28899,
"ideal_unique_bytes_gb": 0.580659,
"off_chip_amplification": 2.302809,
"classification": "compute-bound"
},
{
"role": "mlp_fc1",
"shape_mnk": [37810, 28672, 5376],
"kernel": "standard",
"duration_ms": 37.024512,
"dense_equivalent_tflops": 11.656118,
"achieved_tflops_per_s": 314.821641,
"l2_requested_gb": 53.507764,
"off_chip_proxy_gb": 5.823759,
"off_chip_arithmetic_intensity": 2001.476751,
"ideal_unique_bytes_gb": 2.369218,
"off_chip_amplification": 2.458093,
"classification": "compute-bound"
},
{
"role": "mlp_fc2",
"shape_mnk": [37810, 5376, 14336],
"kernel": "stream-k",
"duration_ms": 54.973312,
"dense_equivalent_tflops": 5.828059,
"achieved_tflops_per_s": 106.016148,
"l2_requested_gb": 26.07999,
"off_chip_proxy_gb": 12.161131,
"off_chip_arithmetic_intensity": 479.236573,
"ideal_unique_bytes_gb": 0.754785,
"off_chip_amplification": 16.112046,
"classification": "bandwidth-bound",
"roofline_at_273_gb_per_s_ms": 44.546268,
"measured_bandwidth_efficiency_percent": 81.032534,
"traffic_required_to_reach_practical_compute_ridge_gb": 4.949544,
"required_traffic_reduction_percent": 59.299,
"practical_compute_floor_ms": 18.130197
}
],
"decision": {
"primary_target": "mlp_fc2",
"do_not_target_first": ["attention_qkv", "attention_output", "mlp_fc1"],
"reason": "QKV, attention output, and FC1 cluster at 315-321 dense-equivalent TFLOP/s and lie above the practical ridge point. FC2 uses stream-K, reaches only 106 TFLOP/s, and generates 12.16 GB of off-chip request traffic, 16.1x its ideal unique bytes.",
"next_experiment": "Benchmark an exact FC2 schedule that reduces K-split/stream-K rereads and reuses the fused SwiGLU-produced activation tiles. Require bit-exact BF16 output and at least 3% complete-block improvement before integration."
},
"source_artifacts": [
"benchmarks/gb10-fully-fused-block24-fresh-l2.csv",
"benchmarks/gb10-fully-fused-block24-fresh-l2-misses-warm.csv",
"benchmarks/gb10-fully-fused-fresh-nsight-summary.json"
]
}