126 lines
5.1 KiB
JSON
126 lines
5.1 KiB
JSON
|
|
{
|
||
|
|
"device": "NVIDIA GB10",
|
||
|
|
"compute_capability": "SM121",
|
||
|
|
"workload": {
|
||
|
|
"resolution": [1344, 768],
|
||
|
|
"frames": 124,
|
||
|
|
"packed_tokens": 37810,
|
||
|
|
"block": 24,
|
||
|
|
"attention": "sage2",
|
||
|
|
"seed": 440420
|
||
|
|
},
|
||
|
|
"configuration": {
|
||
|
|
"H3_NVFP4_SCALE_BACKEND": "vortex",
|
||
|
|
"H3_NVFP4_SCALE_VERSION": "1",
|
||
|
|
"H3_FUSED_ELEMENTWISE": "1",
|
||
|
|
"H3_NVFP4_MODULATE_FUSION": "1",
|
||
|
|
"H3_NVFP4_SWIGLU_FUSION": "1",
|
||
|
|
"H3_SAGE_QKV_LAYOUT": "strided_nhd"
|
||
|
|
},
|
||
|
|
"block_24": {
|
||
|
|
"uninstrumented_module_p50_ms": 458.7751985236537,
|
||
|
|
"nsight_gpu_span_ms": 465.779616,
|
||
|
|
"kernel_time_ms": 465.695712,
|
||
|
|
"kernel_launches": 41,
|
||
|
|
"inter_kernel_idle_ms": 0.083904,
|
||
|
|
"average_inter_kernel_idle_us": 2.098,
|
||
|
|
"maximum_inter_kernel_idle_us": 3.36,
|
||
|
|
"components": {
|
||
|
|
"sage2": {"milliseconds": 268.224256, "percent": 57.59646247290334},
|
||
|
|
"nvfp4_gemms": {"milliseconds": 125.113088, "percent": 26.865844966165376},
|
||
|
|
"nvfp4_packing": {"milliseconds": 41.526688, "percent": 8.917129131736562},
|
||
|
|
"norm_and_rope": {"milliseconds": 19.863552, "percent": 4.265349988878575},
|
||
|
|
"remaining_gate_add": {"milliseconds": 10.940192, "percent": 2.349214673464719},
|
||
|
|
"other": {"milliseconds": 0.027936, "percent": 0.005998732851428}
|
||
|
|
},
|
||
|
|
"producer_detail": {
|
||
|
|
"modulated_qkv_and_fc1_ms": 13.041792,
|
||
|
|
"swiglu_fc2_ms": 23.043104,
|
||
|
|
"attention_output_pack_ms": 5.126112,
|
||
|
|
"scale_finalize_and_zero_fill_ms": 0.31568,
|
||
|
|
"standalone_modulation_kernels": 0,
|
||
|
|
"standalone_swiglu_kernels": 0,
|
||
|
|
"gate_add_kernels": 2
|
||
|
|
},
|
||
|
|
"allocation_and_conversion": {
|
||
|
|
"positive_self_allocated_bytes_per_block": 8009578496,
|
||
|
|
"aten_empty_calls_per_block": 44,
|
||
|
|
"large_layout_copy_kernels": 0,
|
||
|
|
"explicit_cuda_memcpy_ops": 0,
|
||
|
|
"remaining_contiguous_calls_per_block": 4,
|
||
|
|
"remaining_contiguous_shape": [3, 5376],
|
||
|
|
"remaining_to_copy_calls_per_block": 2,
|
||
|
|
"note": "Remaining contiguous and to-copy operations are small AdaLN/scalar conversions, not full activation layout materializations."
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"one_warmed_sampling_step": {
|
||
|
|
"elapsed_seconds": 23.707971603027545,
|
||
|
|
"gpu_span_seconds": 23.706977664,
|
||
|
|
"kernel_time_seconds": 23.693982688,
|
||
|
|
"kernel_launches": 2694,
|
||
|
|
"inter_kernel_idle_ms": 12.994976,
|
||
|
|
"average_inter_kernel_idle_us": 4.825,
|
||
|
|
"maximum_inter_kernel_idle_ms": 6.395168,
|
||
|
|
"peak_allocated_bytes": 15570401280,
|
||
|
|
"peak_reserved_bytes": 18538823680,
|
||
|
|
"explicit_cuda_memcpy_ops": 9,
|
||
|
|
"explicit_cuda_memcpy_bytes": 15282118,
|
||
|
|
"explicit_cuda_memcpy_ms": 0.169856,
|
||
|
|
"components": {
|
||
|
|
"sage2": {"milliseconds": 13760.566304, "percent": 58.07620645797613},
|
||
|
|
"nvfp4_gemms": {"milliseconds": 6269.804512, "percent": 26.46158982455656},
|
||
|
|
"nvfp4_packing": {"milliseconds": 2093.052672, "percent": 8.833688702997335},
|
||
|
|
"norm_and_rope": {"milliseconds": 987.609696, "percent": 4.168187801117043},
|
||
|
|
"remaining_gate_add": {"milliseconds": 545.150976, "percent": 2.3007992500817345},
|
||
|
|
"other": {"milliseconds": 37.798528, "percent": 0.159528965271231}
|
||
|
|
},
|
||
|
|
"gpu_metrics": {
|
||
|
|
"gr_active_average_percent": 99.57,
|
||
|
|
"sms_active_average_percent": 99.27,
|
||
|
|
"sm_issue_average_percent": 25.63,
|
||
|
|
"tensor_active_average_percent": 53.72
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"memory_traffic": {
|
||
|
|
"measurement_note": "GB10 Nsight exposes no direct physical DRAM-byte counter. L2 requested bytes are measured with lts__t_bytes.sum. The off-chip proxy is 32 bytes times warm-cache L2 read/write miss sectors with Nsight Compute cache control disabled.",
|
||
|
|
"l2_requested_bytes": {
|
||
|
|
"total": 320998821280,
|
||
|
|
"sage2": 166126147104,
|
||
|
|
"nvfp4_gemms": 132957604576,
|
||
|
|
"nvfp4_packing": 14638661888,
|
||
|
|
"norm_and_rope": 4802883392,
|
||
|
|
"remaining_gate_add": 2472452288
|
||
|
|
},
|
||
|
|
"off_chip_request_proxy_bytes": {
|
||
|
|
"total": 42116618176,
|
||
|
|
"sage2": 6357343328,
|
||
|
|
"nvfp4_gemms": 23690363008,
|
||
|
|
"nvfp4_packing": 7685899232,
|
||
|
|
"norm_and_rope": 2753536064,
|
||
|
|
"remaining_gate_add": 1629476544
|
||
|
|
},
|
||
|
|
"off_chip_request_proxy_percent": {
|
||
|
|
"sage2": 15.094619661610697,
|
||
|
|
"nvfp4_gemms": 56.249442699793654,
|
||
|
|
"nvfp4_packing": 18.249089230957726,
|
||
|
|
"norm_and_rope": 6.537885004188424,
|
||
|
|
"remaining_gate_add": 3.868963403449499
|
||
|
|
}
|
||
|
|
},
|
||
|
|
"decision": {
|
||
|
|
"time_bottleneck": "Sage2, led by the 246.629 ms attention mainloop in block 24.",
|
||
|
|
"memory_traffic_bottleneck": "The four NVFP4 GEMMs, with 56.25% of the warm-cache off-chip request proxy.",
|
||
|
|
"cpu_launch_bottleneck": false,
|
||
|
|
"next_kernel": "No implementation target is selected solely from the old profile. Any next target must use this fresh split between Sage2 compute time and NVFP4 GEMM memory traffic."
|
||
|
|
},
|
||
|
|
"artifacts": [
|
||
|
|
"benchmarks/gb10-fully-fused-block24-fresh.nsys-rep",
|
||
|
|
"benchmarks/gb10-fully-fused-one-step-fresh.nsys-rep",
|
||
|
|
"benchmarks/gb10-fully-fused-block24-fresh-capture.json",
|
||
|
|
"benchmarks/gb10-fully-fused-block24-fresh-torch.json",
|
||
|
|
"benchmarks/gb10-fully-fused-one-step-fresh.json",
|
||
|
|
"benchmarks/gb10-fully-fused-block24-fresh-l2.csv",
|
||
|
|
"benchmarks/gb10-fully-fused-block24-fresh-l2-misses-warm.csv"
|
||
|
|
]
|
||
|
|
}
|