Skip to content

Big performance regression of mtkcompile on v3.30 of SymbolicUtils #773

Description

@1-Bart-1

Updating from v3.29 to v3.30 of SymbolicUtils causes a 10x performance reduction in mtkcompile.

MWE:

Setup:

git clone https://github.com/OpenSourceAWE/SymbolicAWEModels.jl
cd SymbolicAWEModels.jl
julia --project=.
pkg> instantiate

Change SymbolicUtils version to ~3.30 in Project.toml compat, and then run:

julia --project=.
pkg> up
julia> using SymbolicAWEModels, ModelingToolkit, Suppressor
julia> sam = SymbolicAWEModel(Settings("system.yaml"))
julia> inputs = SymbolicAWEModels.create_sys!(sam, sam.sys_struct)
julia> @time @suppress_err mtkcompile(sam.full_sys; inputs);

output:

1039.839909 seconds (745.45 M allocations: 24.527 GiB, 0.45% gc time, 3.06% compilation time: 16% of which was recompilation)

Change SymbolicUtils version to ~3.29 in Project.toml compat, and then run again.

output:

114.345491 seconds (710.17 M allocations: 22.084 GiB, 2.98% gc time, 0.07% compilation time)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions