Opened 12 years ago
Last modified 8 years ago
#2647 new enhancement
Expression.simplify is way too slow — at Version 3
| Reported by: | Willi Braun | Owned by: | probably noone |
|---|---|---|---|
| Priority: | high | Milestone: | Future |
| Component: | Backend | Version: | trunk |
| Keywords: | Cc: |
Description (last modified by )
For the following models the compile time increases heavy, if one increase the size.
model BaseModelEquations
parameter Integer n=100; // see Backend time for 100, 200, 400
input Real[n] u1;
input Real[n] u2;
output Real[n] y1;
output Real y2;
equation
y1=array(if u1[i] > 0 then u1[i] else u2[i] for i in 1:n);
y2=sum(y1);
end BaseModelEquations;
For n=100 : timeBackend = 0.266189871 For n=200 : timeBackend = 1.490894306 For n=400 : timeBackend = 10.56719995 For n=800 : timeBackend = 82.89054140
All the time is lost by trying to simplify expressions.
Also we try to do it 3 time, once by creating the BackendDAE structure,
once directly after that and once at the end of the Backend process.
We should do it only once and perhaps we should improve Expression.simplify further anyway.
Change History (3)
comment:1 by , 12 years ago
| Summary: | Expression.simplify is ways too → Expression.simplify is ways too slow |
|---|
comment:2 by , 12 years ago
| Summary: | Expression.simplify is ways too slow → Expression.simplify is way too slow |
|---|
comment:3 by , 12 years ago
| Description: | modified (diff) |
|---|
Note:
See TracTickets
for help on using tickets.
