From: alek@spatial.com (Alek O. Komarnitsky)
Subject: Comments on Interleaf Memory Usage (and do you want to use RIP printers on an HP700?)
Originator: alek@spatial
Organization: Spatial Technology, Inc. (Boulder, Colorado)
Date: Wed, 12 Aug 1992 00:30:11 GMT

We have recently migrated from using Interleaf5.3 on Apollo's to an HP700
environment. Specifically, we have one HP710 (64 MBytes of RAM! :-) and
two HP X-terminals. As an aside, this is a dramatic improvement over the
Apollo's to say the least. Let me also say that we are very happy users
of Interleaf, so the below comments are meant as helpful. Before talking
to Interleaf tech support, I thought I would see if anyone else is
seeing this behavior (I'm also hoping the *right* person at Interleaf
will too, and if interested, contact me directly!  :-). 

Interleaf on the HP700 seems to consume a *large* amount of memory, may have
some memory leaks, and appears to not release any memory until it exits.
I.e. it's doing a malloc, but never does a free. 

Here's what I found out. Our Tech Pubs folks were doing a "custom-resave"  on a 
number of our books. This entails opening each document and then saving it.
We do this to ensure that the catalogs and other misc. are up to date.
No, we don't do this often (very rarely actually), but as you can imagine,
this is a somewhat intensive operation (but ~10 times faster that on the
Apollo's ... and we had DN4500's with 32 MBytes of RAM). 

A little research into this showed me some Interleaf behavior that I 
find confusing ... and perhaps a bit discouraging. I used monitor to track
process information and swapinfo to track swap space usage. Both sets of
numbers were very consistant. Nothing else was running on the system. 

Interleaf used 5.5 Mbytes of memory when first fired up. We then 
"custom-resaved" a large (~50 pages of tables, 3+ Mbytes) document,
and Interleaf memory usage jumped to 28.6 Mbytes. I found this number a
bit disturbing to say the least. We then "custom-resaved" the same document
several times, and in all cases except one, Interleaf memory usage jumped
another 60 Kbytes. Note that Interleaf memory usage *never* decreased,
until we finally exited it. 

So what do I find annoying? For one, it seems to me that Interleaf is using
an awful lot of memory. Two: I suspect there may be some "memory leaks" in
the code, since it seems strange to me that doing the same task several
times over causes additional memory to be used. Third, and perhaps most
bothersome, I'm surprised that Interleaf doesn't release memory after using
it. The result of this is that if I open a large document, then Interleaf
will consume this much memory from then on - whether or not I'm doing any
other work. 

As mentioned above, I'm curious if anyone else has seen this behavior, and
perhaps I should read TFM, but I don't think there are any easy solutions
here short of exiting Interleaf (which is really an OK one). Pls E-mail
and/or post responses, and I'll be happy to summarize if enough interest.

Oh yeah, in the subject line, I  mentioned that we are still using our
RIP printer for our HP700 work (even though it is no longer supported).
I suspect many Apollo users (like us) are migrating to faster platforms,
but still want (have!) to use their RIP printers. I'll be happy to let
you know how we did it via E-mail, and if there is enough interest,
I can post it (pretty simple, but took a little work - but it's always
a challenge to make S/W do what it says it won't, eh?  :-)

Interleaf on HP700's and X-terminals are a hot combination,

Alek Komarnitsky                                      303-449-0649
Software Tools Manager, Spatial Technology, Inc.      2425 55th Street, Bldg A
alek@spatial.com                                      Boulder, CO 80301-5704

P.S. BTW, IMHO, Interleaf doesn't handle pop-up dialog boxes quite correctly.
     Put an xterm halfway inside the Interleaf desktop, and do something like
     print a range of pages. Notice that each pop-up causes an expose for the
     entire desktop ... and subsequently for the xterm.
Newsgroups: comp.text.interleaf