[Lazarus] Console App Development

Martin lazarus at mfriebe.de
Sat Aug 13 19:45:09 CEST 2011


On 13/08/2011 17:49, Graeme Geldenhuys wrote:
> On 13 August 2011 16:38, Martin wrote:
>> Are you sure?
>> Have you compared speed to 0.9.28? And which actions have you used for
>> checking speed?
> Yet, at least between a 0.9.29 binary I had lying around, and 0.9.30.1
Both GTK2 ? For the opeing of a project with *m any* files?

But well yes, if you had a 0.9.29, that already had the loading 
optimizations (and was faster than 0.9.28) then that could be.

Obviously the speed isn't constant. New features get added, the may take 
time while loading. The idea can not be, to keep the time always 
constant, or getting faster only. Then many features could never be 
added (your elastic tabs, if ever done, might mean a slow down... / 
though that falls under the deferred-to-idle scans).


In Laz trunk there where some speed improvements for project loading 
again (IIRC)


>
> In the days of 0.9.26 and 0.9.28 I used the GTK1 interface. At that
> point LCL-GTK1 was considerably faster than the LCL-GTK2 - in the
> editor, dialogs, and general screen updates.
interesting. Gtk1 does not have support for propper scrolling. So 
scrolling in synedit under GTK1 is considerable slower.
Though the scroll support under gtk2 was only added quite late. So for a 
long time that may have been true.

Otherwhise I can not tell much about gtk2. But then one would need to 
have some fundamental info about the difference of speed of the 2 GTKs 
themself.


> I know LCL-GTK2 has come a long way since then.
>
> When I say slower, in this test case I can not the following.
>
>   - Loading time of all tabs (eg: when I tested with 100 or 200 units)
You mean between gtk2 and gtk1? Well I can not speak about that.

>   - tab / editor screen update. The editor was "blank" for the duration
> of loading
The "blank" is partly intentional. Older lazarus did add tab by tab, 
updating tabs that wouldn't even be displayed. there was no point in 
that.  That change was made in the IDE, affecting all widgetsets.

>     those units. MSEide was instant with near zero screen flicker.
Very interesting.  I just added the 450 univint files to a project in 
mseide (though under windows, while all other tests where done under linux)

It takes 15 seconds to open (so yes it is a little faster than lazarus, 
but not such massively)


My version may be a few month old....

>
> My other concern was memory consumption. I know I have no clue as to
> what Lazarus IDE everything does, but I can say that for the generate
> usage of loading a project with some 5-15 units open, code navigating
> here and there etc.. the memory consumption of Lazarus is by
> magnitudes more than MSEide. Regarding what I was test or using in the
> editor, both IDE's had the same functionality.

All I know is, when I open the ide project (mseide ide project / 
whatever the projectfile is called) itself, and then try to open file, 
it always prompts me for missing form files or similar...

Then again, maybe my config got screed along the way...

as for it codetools equivalent:  Some thinks don't jump, but may be my 
config. I found a link I just clicked, which took over 2 secs before the 
mse-ide actually jumped (at least it showed a "busy" mouse pointer)

Let me just stress out: I do not mean in any way to say, that this is in 
anyway something bad about mse-ide. I only observe that some of the 
statements made before are not reproducible n my system. MSEide does 
require time too (memory I have not analysed.)





More information about the Lazarus mailing list