[squeak-dev] Mac VM hanging

Bob Arning arning at charm.net
Sun Jun 26 17:48:52 UTC 2011


Hi,

I've been using the all-in-one 4.2 Squeak and can't figure out why the 
VM is hanging. I have some code that runs fine for about six minutes, 
but if I wrap it in a
MessageTally spyOn: [], then the VM will hang after a while (typically 
30 to 90 seconds). CMD-period does not wake it up. According to the 
activity monitor, cpu remains right around 100% and real memory at 
around 180 meg. Activity Monitor sampling output attached below. Any 
suggestions?

Cheers,
Bob

Sampling process 71029 for 1 seconds with 1 millisecond of run time 
between samples
Sampling completed, processing symbols...
Analysis of sampling Squeak VM Opt (pid 71029) every 1 millisecond
Call graph:
     880 Thread_2507
       543 markAndTrace
         543 markAndTrace
       247 updatePointersInRangeFromto
         247 updatePointersInRangeFromto
       63 sweepPhase
         63 sweepPhase
       8 interpret
         8 interpret
       6 updatePointersInRootObjectsFromto
         6 updatePointersInRootObjectsFromto
       5 aioPoll
         3 select$DARWIN_EXTSN$NOCANCEL
           3 select$DARWIN_EXTSN$NOCANCEL
         2 __memcpy
           2 __memcpy
       3 ioProcessEvents
         3 ReceiveNextEvent
           3 ReceiveNextEventCommon
             3 RunCurrentEventLoopInMode
               3 CFRunLoopRunInMode
                 3 CFRunLoopRunSpecific
                   3 __CFRunLoopDoObservers
                     2 FlushAllBuffers(__CFRunLoopObserver*, unsigned 
long, void*)
                       1 FlushWindowObject(WindowData*, void**, unsigned 
char)
                         1 GetWindowPropertyCore(WindowData*, unsigned 
long, unsigned long, unsigned long, unsigned long*, void*)
                           1 HIGetCollectionItem
                             1 GetCollectionItem
                               1 FindItem(OpaqueCollection*, unsigned 
long, long, unsigned long*)
                                 1 CollectionItemRec::getTag()
                                   1 CollectionItemRec::getTag()
                       1 IsSafeToCallApplication
                         1 GetTaskStorageKeyForSafeToCall
                           1 GetTaskStorageKeyForSafeToCall
                     1 bsd_qsort
                       1 __CFRunLoopObserverQSortComparator
                         1 __CFRunLoopObserverQSortComparator
       2 mapPointersInObjectsFromto
         2 mapPointersInObjectsFromto
       1 instantiateSmallClasssizeInBytes
         1 instantiateSmallClasssizeInBytes
       1 ioMicroMSecs
         1 gettimeofday
           1 __gettimeofday
             1 __nanotime
               1 __nanotime
       1 markAndTraceInterpreterOops
         1 markAndTraceInterpreterOops
     880 Thread_2603
       880 thread_start
         880 _pthread_start
           880 TimerThread
             880 TSWaitOnSemaphoreCommon
               880 TSWaitOnConditionTimedRelative
                 880 pthread_cond_timedwait_relative_np
                   880 _pthread_cond_wait
                     879 semaphore_timedwait_signal_trap
                       879 semaphore_timedwait_signal_trap
                     1 pthread_mutex_lock
                       1 semaphore_wait_trap
                         1 semaphore_wait_trap

Total number in stack (recursive counted multiple, when >=5):

Sort by top of stack, same collapsed (when >= 5):
         semaphore_timedwait_signal_trap        879
         markAndTrace        543
         updatePointersInRangeFromto        247
         sweepPhase        63
         interpret        8
         updatePointersInRootObjectsFromto        6
Sample analysis of process 71029 written to file /dev/stdout

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20110626/82c748b2/attachment.htm


More information about the Squeak-dev mailing list