PR# 12171 Peformance issues in 6.0

Problem Report Summary
Submitter: prestoat2000
Category: EiffelStudio
Priority: Medium
Date: 2007/03/02
Class: Bug
Severity: Serious
Number: 12171
Release: 6.0.66895
Confidential: No
Status: Analyzed
Environment: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv: Gecko/20060915 Firefox/ Solaris 9 on SPARC
Synopsis: Peformance issues in 6.0

I hope you can investigate some performance issues before releasing 6.0.
Specifically, I tried just picking a class or feature in the Editor
and moving the mouse around continuously staying within the Editor.

With 5.7, this uses about 10-12% of CPU for Xsun (display server) and
about 3% for "ec".

With 6.0, it uses about 20% of CPU for Xsun and 20% for ec.

So on my Solaris 9 SPARC machine, this uses about 40% of the CPU
(80% of one of the two CPUs) where it only used about 15% of CPU in 5.7.

I noticed also that switching tabs seems to redraw all of the tabs
within a window.  This is much slower than in 5.7 (or seems slower) and
causes an annoying and distracting flickering effect.  I don't know
whether this is a bug or just the way the implementation works but it
would certainly be nice if it could be improved.

To Reproduce

Problem Report Interactions
From:misterieking    Date:2009/07/15    Download   
Hi David,

I'm surprised the change for polling made it worse, previously we were doing a specified timeout to query the X11 event file descriptor and then come out after a specified time, now we just use sleep and then come out after the specified time, this should mean less CPU not more, as I'm sure sleep is less CPU intensive than waiting on a file descriptor to be readable.  The reason we come out is so that the gc can get called after a specific interval has passed, this is only done on idle though.

Anyway, thanks for the update, I'll look further in to this.

From:prestoat2000    Date:2009/07/15    Download   
Yes, it is still an issue.  The behavior is the same in 6.3 (both estudio
X server Xsun each use about 20% of the CPU when moving the mouse continuously).
No change from 6.0.

There is also a new problem, where estudio uses CPU continuously even when
I am not doing anything with it.  I think there was a change to event loop
handling or something so that it now uses polling.  Each instance of
estudio now uses 1-5% (varies) continuously when it is just sitting there
and I'm not interacting with it at all.

From:misterieking    Date:2009/07/15    Status: Analyzed    Download   
Hi David,

Is this still an issue, we made a few changes regarding removal of X Server roundtrip requests since 6.0 that should have reduced the CPU usage.