From d8fa1ea96bc3396c08d9e28c0f51980a8923bf6c Mon Sep 17 00:00:00 2001 From: Manuel Candales Date: Fri, 13 Mar 2026 16:01:35 -0400 Subject: [PATCH 1/2] fix linear bias decomposition invokation --- examples/models/parakeet/export_parakeet_tdt.py | 6 +++--- examples/models/voxtral_realtime/export_voxtral_rt.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/models/parakeet/export_parakeet_tdt.py b/examples/models/parakeet/export_parakeet_tdt.py index 6747880cd9e..082f73b5611 100644 --- a/examples/models/parakeet/export_parakeet_tdt.py +++ b/examples/models/parakeet/export_parakeet_tdt.py @@ -513,9 +513,9 @@ def _create_metal_partitioners(programs): # print(f"Running decompositions for {key}") # print(ep.graph_module) if key != "preprocessor": - updated_programs[key] = ep.run_decompositions( - {torch.ops.aten.linear.default: _linear_bias_decomposition} - ) + decomp_table = torch.export.default_decompositions() + decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition + updated_programs[key] = ep.run_decompositions(decomp_table) else: updated_programs[key] = ep diff --git a/examples/models/voxtral_realtime/export_voxtral_rt.py b/examples/models/voxtral_realtime/export_voxtral_rt.py index 31f792232a3..edebab67c7b 100644 --- a/examples/models/voxtral_realtime/export_voxtral_rt.py +++ b/examples/models/voxtral_realtime/export_voxtral_rt.py @@ -395,9 +395,9 @@ def lower_to_executorch(programs, metadata, backend="xnnpack"): # Run decompositions for Metal backend updated_programs = {} for key, ep in programs.items(): - updated_programs[key] = ep.run_decompositions( - {torch.ops.aten.linear.default: _linear_bias_decomposition} - ) + decomp_table = torch.export.default_decompositions() + decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition + updated_programs[key] = ep.run_decompositions(decomp_table) programs = updated_programs partitioner = {} From 9845273c6e344c0f3ffe7082a9cf70c9a3c5c46c Mon Sep 17 00:00:00 2001 From: Manuel Candales Date: Tue, 17 Mar 2026 12:23:24 -0400 Subject: [PATCH 2/2] move decomp_table creation outside loop --- examples/models/parakeet/export_parakeet_tdt.py | 6 ++---- examples/models/voxtral_realtime/export_voxtral_rt.py | 4 ++-- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/examples/models/parakeet/export_parakeet_tdt.py b/examples/models/parakeet/export_parakeet_tdt.py index 082f73b5611..de056638da2 100644 --- a/examples/models/parakeet/export_parakeet_tdt.py +++ b/examples/models/parakeet/export_parakeet_tdt.py @@ -509,12 +509,10 @@ def _create_metal_partitioners(programs): # Run decompositions for non-preprocessor programs updated_programs = {} + decomp_table = torch.export.default_decompositions() + decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition for key, ep in programs.items(): - # print(f"Running decompositions for {key}") - # print(ep.graph_module) if key != "preprocessor": - decomp_table = torch.export.default_decompositions() - decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition updated_programs[key] = ep.run_decompositions(decomp_table) else: updated_programs[key] = ep diff --git a/examples/models/voxtral_realtime/export_voxtral_rt.py b/examples/models/voxtral_realtime/export_voxtral_rt.py index edebab67c7b..7c465dfe433 100644 --- a/examples/models/voxtral_realtime/export_voxtral_rt.py +++ b/examples/models/voxtral_realtime/export_voxtral_rt.py @@ -394,9 +394,9 @@ def lower_to_executorch(programs, metadata, backend="xnnpack"): # Run decompositions for Metal backend updated_programs = {} + decomp_table = torch.export.default_decompositions() + decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition for key, ep in programs.items(): - decomp_table = torch.export.default_decompositions() - decomp_table[torch.ops.aten.linear.default] = _linear_bias_decomposition updated_programs[key] = ep.run_decompositions(decomp_table) programs = updated_programs