Opened 5 years ago

Closed 3 years ago

#5575 closed defect (fixed)

Opening Modelica.Media packages in OMEdit is still slow because of getInheritedClasses

Reported by: Francesco Casella Owned by: Adrian Pop
Priority: blocker Milestone: 1.19.0
Component: NF API Version:
Keywords: Cc: Adeel Asghar, albertoleva

Description

I tried to open the sub-packages of Modelica.Media in the Libraries Browser of OMEdit with a recent nightly build, already with nfAPI enabled by default.

Opening Opening Modelica.Media itself is very fast, but when expanding that package, I get problems:

  • in Linux, expanding the package takes about 15 seconds. Inspection of omeditcommunication.log shows that there are several calls to getInheritedClasses that take several seconds each
  • in Windows, the situation is actually worse: I get three virtual cores working at full load for more than a minute, I see some of those getInheritedClasses calls in the log, but then OMEdit crashes, leaving the log unflushed.

I guess this should also be sorted out for the 1.14.0 release. @adrpo, maybe it already is on your branch, can you please check?

Attachments (1)

omeditcommunication.log (3.1 MB ) - added by Adrian Pop 5 years ago.
the windows log (after adding fflush(NULL) in OMCProxy::logCommand)

Change History (18)

comment:1 by Adrian Pop, 5 years ago

I cannot reproduce this. For me opening Modelica.Media takes 1-2 seconds, opening Examples takes 3-4. What are your flags in OMEdit?

comment:2 by Adrian Pop, 5 years ago

Ok. Nevermind, I can reproduce it when opening Modelica.Media.Air.

by Adrian Pop, 5 years ago

Attachment: omeditcommunication.log added

the windows log (after adding fflush(NULL) in OMCProxy::logCommand)

comment:3 by Adrian Pop, 5 years ago

@adeas31, can we have a setting in OMEdit to fflush the log after each command?
Basically add fflush(NULL) in OMProxy.cpp:375 on an if from the settings.

in reply to:  3 comment:4 by Adeel Asghar, 5 years ago

Replying to adrpo:

@adeas31, can we have a setting in OMEdit to fflush the log after each command?
Basically add fflush(NULL) in OMProxy.cpp:375 on an if from the settings.

See 65e0457/OpenModelica.

comment:5 by Francesco Casella, 5 years ago

What is the flag/OMEdit option to enable this? I saw a --Debug in the source code, which sounds a bit weird, since we already have --debug for all debug flags

comment:6 by Adrian Pop, 5 years ago

This is an OMEdit executable command line flag.

comment:7 by Francesco Casella, 5 years ago

OK, so how to I get it turned on in OMEdit?

comment:8 by Adeel Asghar, 5 years ago

Run OMEdit with debug command line option i.e., ./OMEdit --Debug=true.

comment:9 by Adrian Pop, 5 years ago

Or you can ask @adeas31 to provide an actual dialog for it :)

comment:10 by Francesco Casella, 5 years ago

Flag is fine, thanks!

comment:11 by Francesco Casella, 5 years ago

Milestone: 1.14.01.15.0

Releasing 1.14.0 which is stable and has many improvements w.r.t. 1.13.2.

This issue, previously marked as blocker for 1.14.0, is rescheduled to 1.15.0

comment:12 by Francesco Casella, 5 years ago

Milestone: 1.15.01.16.0

Release 1.15.0 was scrapped, because replaceable support eventually turned out to be more easily implemented in 1.16.0. Hence, all 1.15.0 tickets are rescheduled to 1.16.0

comment:13 by Francesco Casella, 4 years ago

Milestone: 1.16.01.17.0

Retargeted to 1.17.0 after 1.16.0 release

comment:14 by Francesco Casella, 4 years ago

Milestone: 1.17.01.18.0

Rescheduled to 1.18.0

comment:15 by Francesco Casella, 3 years ago

Milestone: 1.18.0

Ticket retargeted after milestone closed

comment:16 by Francesco Casella, 3 years ago

Milestone: 1.19.0

1.18.0 blocker tickets moved to 1.19.0

comment:17 by Per Östlund, 3 years ago

Resolution: fixed
Status: newclosed

Fixed in 9e0e8de8.

Note: See TracTickets for help on using tickets.