Hello all,

I sat with Benjamin today to have a look at Glamour performance when displaying large text files. For reminder, when displaying text in glamour, the time to display text increases exponentially with the size of the text being displayed.

Two observations:

1/ Whereas, with the following script the execution time remains equivalent to that of morphs

MessageTally spyOn: [ (GLMPluggableTextMorph
on: [ (StandardFileStream fileNamed: 'testfile-glam-3500.txt') contents ]
text: #value
accept: nil) openInWindow extent:  (1273.0@738.0) ] 

the execution of this script is four times longer:

| browser text|
browser := GLMTabulator new.
browser column: #text.
browser transmit to: #text; andShow: [ :a | 
a text 
title: 'Text with selection';
display: [(StandardFileStream fileNamed: 'testfile-glam-3500.txt') contents]].
MessageTally spyOn: [browser openOn: 2].


2/ A bit of digging (using time profiler) shows that the garbage collector is taking 75% of the execution time. Inline image 1

Doru, will you have an idea what makes garbage collector execute and take extra seconds when the text is displayed in a glamour browser instead of individual glmaour widget?

The moose image with the scripts can be found here if you want to have a look.
http://dl.dropbox.com/u/11804892/glamour-perf-tests.zip

thanx in advance,


Usman