On Fri, 4 Jan 2002, Allan Rae wrote:
> Anyway, this effectively means something like the following is more
> correct (based on extrapolated sizes when combining subdir libraries):
>
> 1.2.0cvs  1.1.6fixcvs         Which library
> 1707026    624004    ./frontends/.libs/libfrontends.a
> 457480       n/a    ./frontends/controllers/.libs/libcontrollers.a
[...]
> 1083494    533780    ./frontends/xforms/.libs/libxforms.a

Numbers of GUII dialogs:
  1.2.0cvs  1.1.6fixcvs  Difference
       40        15           25

(This is a fantastic statistic IMO -- because I didn't add any of
 the extras)

Bytes per dialog:
  1.2.0cvs  1.1.6fixcvs  Difference
    42675     41600        1075   ./frontends/.libs/libfrontends.a

    27087     35585       -8498   ./frontends/xforms/.libs/libxforms.a
    11437         0       11437   ./frontends/.../libcontrollers.a
    -----     -----
    38524     35585      <== dialog specific bytes

Overhead per dialog:
     4151      6015      <== additional support for frontends

MVC appears to add about 1kB per dialog overall for the entire
frontends directory.  Playing with the other numbers is fun but like
all statistics they are lies.  1.2.0cvs includes the ButtonPolices in
the controller library for example which is part of the reason why the
additional support numbers above are so different.

Is 40kB per dialog a hassle?  Even if they are bigger and better and
shinier than any dialogs we've ever had before?

Q.  How much space does a modern C++ GUI toolkit save us?

Q.  Would fixing the MVC hierarchy save us anything?

Stay tuned.

##

BTW, recompiling 1.2.0cvs without the -DXLIB_ILLEGAL_ACCESS= reduced
all these numbers considerably.  For example the src/lyx stripped
binary is now:

  new       old
2121668   2121764

all of 96 bytes smaller.

Allan. (ARRae)    Procrastination, where would we be without it?





Reply via email to