Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#4741 closed defect (fixed)

analyzeInitialSystem scales as O(N^3) when NF is used

Reported by: Francesco Casella Owned by: Per Östlund
Priority: high Milestone: 2.0.0
Component: New Instantiation Version:
Keywords: Cc:

Description

Please consider the ScalableTestSuite.Thermal.Advection.ScaledExperiments.AdvectionReaction_N_XXX models in the ScalableTestSuite.

The times spent by the analyzeInitialSystem function of the back-end when the old FE is used are roughly linear with N and have a marginal impact on the total build time. If you check the times spent when the NF is used, you get these values:

N Time (s)
400 0.08
800 0.61
1600 4.74
3200 40.50

It seems that for some reason if the backend is handed the model by the NF it scales very badly. Please check.

Change History (2)

comment:1 by Per Östlund, 7 years ago

Resolution: fixed
Status: newclosed

Fixed in 58a87d01. The issue was that the scalarization module accidentally paired type attributes up with the wrong expression. So e.g. Real x[1](start = 0.0, fixed = true) would become Real x[1](start = true, fixed = 0.0) after scalarization, which obviously caused a few issues.

comment:2 by Francesco Casella, 7 years ago

Wow. Good that I spotted this as a performance issue :)

Note: See TracTickets for help on using tickets.