Decompile latency · non-ranking
Wall time from the decompiler adapter (time_ms on each row) — typically one binary batch decompile, amortized per function. Semantic / wine / oracle time is not included. This page is a non-ranking practicality diagnostic (same policy as Quality EXT). Optional summary.extensions.speed.microbench cold/warm trials come from the isolated Speed Smoke CI job.
2.46s
n=210 · p95 5.10s
1.68s
Median decompile latency
12.56s
n=215 · p95 24.47s
5.89×
median ghidra/fission · n=209 pairs · geo 6.26×
98%
Share of paired cells with fission_ms < ghidra_ms
No summary.extensions.speed.microbench attached yet. Run python -m runner.speed_microbench … or the Speed Smoke GitHub Action; attach via attach_summary_to_envelope (auto-loads results/speed/microbench_latest.json).
Adapter decompile wall time per row (time_ms). Excludes semantic/oracle. Not a ranking axis.
| Decompiler | Timed | Missing | Mean | p50 | p95 | Min | Max | Sum |
|---|---|---|---|---|---|---|---|---|
| fission | 210 | 6 | 2.46s | 1.68s | 5.10s | 759ms | 20.44s | 516.36s |
| ghidra | 215 | 1 | 12.56s | 9.96s | 24.47s | 7.42s | 30.16s | 2700.57s |
Same function × variant. Speedup= ghidra_ms / fission_ms (>1 ⇒ Fission faster). Sorted by slowest Fission first. Showing top 40 of 209.
| Function | Variant | Fission | Ghidra | Speedup |
|---|---|---|---|---|
rolling_hash32 | clang -O0 | 20.44s | 9.06s | 0.44× |
bounded_tlv_sum | clang -O0 | 20.44s | 9.06s | 0.44× |
overlap_move | clang -O0 | 20.44s | 9.06s | 0.44× |
mixed_width_accumulate | clang -O0 | 20.44s | 9.06s | 0.44× |
rotate_words | clang -O0 | 20.44s | 9.06s | 0.44× |
manipulate_bitfields | gcc -O2 | 6.81s | 23.95s | 3.51× |
matrix_multiply | gcc -O2 | 6.81s | 23.95s | 3.51× |
manipulate_bitfields | clang -O0 | 5.34s | 20.97s | 3.92× |
Fission-only, aggregated across variants (mean / p95 / max).
| Function | n | Mean | p95 | Max |
|---|---|---|---|---|
bounded_tlv_sum | 5 | 5.36s | 16.73s | 20.44s |
overlap_move | 5 | 5.36s | 16.73s | 20.44s |
mixed_width_accumulate | 5 | 5.36s | 16.73s | 20.44s |
manipulate_bitfields | 6 | 5.27s | 6.45s | 6.81s |
matrix_multiply | 6 | 5.27s | 6.45s | 6.81s |
rolling_hash32 | 6 | 4.83s | 15.87s | 20.44s |
rotate_words | 6 | 4.83s | 15.87s | 20.44s |
reverse_string | 6 | 3.06s | 4.52s |
Fission mean / p50 by compiler_variant.
| Variant | n | Mean | p50 |
|---|---|---|---|
| clang -O0 | 35 | 4.31s | 1.26s |
| gcc -O0 | 36 | 2.55s | 2.16s |
| gcc -O2 | 36 | 2.19s | 1.77s |
| clang -O2 | 31 | 2.10s | 1.91s |
| gcc-m32 -O0 | 36 | 2.05s | 1.48s |
| gcc-m32 -O2 | 36 | 1.56s | 1.45s |
matrix_multiply |
| clang -O0 |
| 5.34s |
| 20.97s |
| 3.92× |
manipulate_bitfields | clang -O2 | 5.12s | 25.75s | 5.03× |
matrix_multiply | clang -O2 | 5.12s | 25.75s | 5.03× |
manipulate_bitfields | gcc-m32 -O2 | 5.09s | 20.51s | 4.03× |
matrix_multiply | gcc-m32 -O2 | 5.09s | 20.51s | 4.03× |
reverse_string | gcc -O0 | 4.91s | 23.64s | 4.81× |
find_substring | gcc -O0 | 4.91s | 23.64s | 4.81× |
manipulate_bitfields | gcc -O0 | 4.71s | 25.68s | 5.46× |
matrix_multiply | gcc -O0 | 4.71s | 25.68s | 5.46× |
manipulate_bitfields | gcc-m32 -O0 | 4.58s | 19.66s | 4.30× |
matrix_multiply | gcc-m32 -O0 | 4.58s | 19.66s | 4.30× |
list_sum | gcc -O0 | 3.50s | 7.42s | 2.12× |
kv_lookup | gcc -O0 | 3.50s | 7.42s | 2.12× |
apply_binop | gcc -O0 | 3.50s | 7.42s | 2.12× |
add_ints | gcc -O0 | 3.50s | 7.42s | 2.12× |
mul_ints | gcc -O0 | 3.50s | 7.42s | 2.12× |
dot_product_stride | gcc -O0 | 3.50s | 7.42s | 2.12× |
bounded_checksum | gcc -O0 | 3.50s | 7.42s | 2.12× |
list_sum | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
kv_lookup | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
apply_binop | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
add_ints | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
mul_ints | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
dot_product_stride | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
bounded_checksum | gcc-m32 -O0 | 3.39s | 7.44s | 2.20× |
reverse_string | clang -O0 | 3.36s | 21.32s | 6.35× |
find_substring | clang -O0 | 3.36s | 21.32s | 6.35× |
reverse_string | clang -O2 | 3.27s | 21.79s | 6.67× |
find_substring | clang -O2 | 3.27s | 21.79s | 6.67× |
sum_array | clang -O2 | 3.21s | 9.96s | 3.10× |
reverse_in_place | clang -O2 | 3.21s | 9.96s | 3.10× |
find_pair_value | clang -O2 | 3.21s | 9.96s | 3.10× |
| 4.91s |
find_substring | 6 | 3.06s | 4.52s | 4.91s |
dot_product_stride | 5 | 2.57s | 3.48s | 3.50s |
list_sum | 6 | 2.39s | 3.47s | 3.50s |
kv_lookup | 6 | 2.39s | 3.47s | 3.50s |
apply_binop | 6 | 2.39s | 3.47s | 3.50s |
add_ints | 6 | 2.39s | 3.47s | 3.50s |
mul_ints | 6 | 2.39s | 3.47s | 3.50s |
bounded_checksum | 6 | 2.39s | 3.47s | 3.50s |
sum_array | 6 | 2.21s | 3.11s | 3.21s |
reverse_in_place | 6 | 2.21s | 3.11s | 3.21s |
find_pair_value | 6 | 2.21s | 3.11s | 3.21s |
pointer_stride_sum | 6 | 2.21s | 3.11s | 3.21s |
accumulate_pairs | 5 | 2.01s | 2.77s | 2.79s |
state_machine_score | 5 | 1.70s | 2.11s | 2.17s |
fibonacci | 6 | 1.47s | 2.09s | 2.16s |
bubble_sort | 6 | 1.47s | 2.09s | 2.16s |
linear_search | 6 | 1.47s | 2.09s | 2.16s |
factorial | 6 | 1.47s | 2.09s | 2.16s |
power | 6 | 1.47s | 2.09s | 2.16s |
process_code | 6 | 1.47s | 2.09s | 2.16s |
rc4_init | 6 | 1.40s | 1.55s | 1.57s |
rc4_crypt | 6 | 1.40s | 1.55s | 1.57s |