Summary
The workload JSONL files reference blob safetensors using a flat path format, while add_workload_blob_tensor in flashinfer-bench writes blobs using a subdirectory format. This mismatch causes FileNotFoundError when running benchmarks.
Path Format Comparison
1. Workload JSONL (current format - flat):
./blob/workloads/{op_type}/{def_name}_{workload_uuid}.safetensors
Example: ./blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last_de7af853-9c30-4e68-a0b7-6c6cd001b0ca.safetensors
2. add_workload_blob_tensor (subdirectory format):
# flashinfer_bench/data/trace_set.py:424-430
file_path = (
self.blob_workloads_path
/ op_type
/ def_name
/ f"{def_name}_{workload_uuid}.safetensors"
)
This produces:
blob/workloads/{op_type}/{def_name}/{def_name}_{workload_uuid}.safetensors
Example: blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last/gdn_prefill_qk4_v8_d128_k_last_de7af853....safetensors
Impact
- Benchmarks fail when loading workloads that reference safetensors inputs
- Error:
No such file or directory: .../blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last_de7af853....safetensors
- Workers crash during baseline (
run_ref) → No healthy workers available
Affected Workloads
- GDN workloads (
gdn_prefill_qk4_v8_d128_k_last, gdn_decode_*, etc.)
Summary
The workload JSONL files reference blob safetensors using a flat path format, while
add_workload_blob_tensorin flashinfer-bench writes blobs using a subdirectory format. This mismatch causesFileNotFoundErrorwhen running benchmarks.Path Format Comparison
1. Workload JSONL (current format - flat):
Example:
./blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last_de7af853-9c30-4e68-a0b7-6c6cd001b0ca.safetensors2.
add_workload_blob_tensor(subdirectory format):This produces:
Example:
blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last/gdn_prefill_qk4_v8_d128_k_last_de7af853....safetensorsImpact
No such file or directory: .../blob/workloads/gdn/gdn_prefill_qk4_v8_d128_k_last_de7af853....safetensorsrun_ref) →No healthy workers availableAffected Workloads
gdn_prefill_qk4_v8_d128_k_last,gdn_decode_*, etc.)