[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 8.0.1 complaints on SLUG

    Date: Tue, 28 Aug 90 14:36 PDT
    From: TYSON@Warbucks.AI.SRI.COM (Mabry Tyson)

    As for the problem with the lispm going away for a while at random
    times, I have noticed such a problem in 8.0.  The clock stops ticking and
    I just wait for maybe a minute or two (usually just a few seconds).
    What is it?  Well, I have my guesses but it hasn't been so debilitating
    that I've felt like spending the hour or so that it would take to track
    it down.  Even then, I bet Symbolics already knows about it and it might
    even be fixed in 8.0.1.

I've discovered the cause of a couple of "catatonia" problems in Genera
8.0 (and reported both to Symbolics).

When using the C compiler, sometimes the system would become completely
unresponsive, and the clock would stop ticking, for up to a minute at a
time.  This problem is due to the C-SYS::C-COMPILER-SOURCE-LINE-ARRAYS
resource, which consists of lots of strings.  During a large system
compilation this resource can get very large, and it can take a while to
search for a matching free resource entry, and interrupts are disabled
while searching a resource (there's code in the resource software to use
per-resource locks, but it's commented out because resources are used in
code that can't wait on locks).

The other problem I noticed is with the GC daemon, which is the
background process that notifies you that "you may have missed your last
chance to perform a Start GC :Dynamic."  In this case the keyboard
becomes unresponsive, but the clock and cursor continue to tick.  I
believe that this problem is due to the fact that the GC Daemon's wait
predicate can be true under conditions where it doesn't send the
notification.  When the PROCESS-WAIT returns it does a more detailed
analysis of memory use to determine whether a notification is necessary,
and if not it just goes blocked again.  The predicate immediately
returns true again, and this process repeats until enough memory is
allocated to cause the notification or an EGC collects enough garbage to
prevent the wait from returning.  The GC Daemon process runs at a
moderately high priority, so normal priority processes are hung while
it's in this loop.

    Just so there are no misunderstandings, I like the Symbolics.  The XL1200 is
    surely the best thing since the refrigerator (:-).  The complexity and the
    friendliness of the system code is truly remarkable.  Symbolics, Inc. is doing
    the best it can with what it has.  Customer Support personnel are not the
    developers (last I looked any way) and can only do so much.  

Actually, these days they are.  Since moving Software Support to
Burlington, customer support personnel have been augmented by developers
who rotate through.  I've gotten many responses from Kent Pitman and
Gary Palter (perhaps not as well known to customers as Kent and Moon
are, but one of the best programmers I've ever had the pleasure of
working with) in the last couple of months, and the quality of the
support has improved noticeably.