How to increase performance of variant subsystems?

Hello, I got a model based on variant subsystems. I got one extremely big variant subsystem, so the model crashes during compiling. When I insert needed subsystems by hand and delete the rest it works fine. So my question is, is there a methed how to increase the performance of variant subsystems, or an alternative ?

6 Comments

Birdman
Birdman on 29 Nov 2017
Edited: Birdman on 29 Nov 2017
How many subsystems are we talking about?
I got 13 Variant Subsystems. The big one got 4 Variant choices each containing a model of a powertrain. The number of subsystems is to high to count or is there some Paramter where I can find out?
Actually, the purpose of variant subsystems is to comment out the rest of the subsystems while using only one of them. I did not understand how this can be.
Are the commented subsystems also compiled?
Hello Lucas,
I also encountered the same problem. MATLAB sometimes crashes when generating code (Ctrl+B) and sometimes crashes even when I only copy a subsystem in the variant subsystem module. I also think that my variant subsystem is a bit complex. Do you have any further progress about this issue? New version may not helps. My MATLAB is 2024b.

Sign in to comment.

Answers (1)

Hi Lucas.
Over the years, there have been many improvements and new features added in "Variant Subsystem". I don't think you would face any performance issue if you use the latest MATLAB release. As of version R2024a (latest release), by default, when you add "Variant Subsystem" to the Simulink canvas, the setting is in such a way that only the active choice is compiled. Inactive choices including commented subsystems are ignored and will not be compiled.
However, you can change this behavior by modifying the "Variant Activation Time" field to a value other than "update diagram" which would compile all the choices. Only this change might affect the performance, otherwise you shouldn't see any.

Categories

Products

Asked:

on 29 Nov 2017

Commented:

on 13 May 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!