chicken-janitors
[Top][All Lists]
Advanced

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

Re: [Chicken-janitors] #892: Segfault on insanely long lists


From: Chicken Trac
Subject: Re: [Chicken-janitors] #892: Segfault on insanely long lists
Date: Thu, 25 Jul 2013 18:56:44 -0000

#892: Segfault on insanely long lists
-----------------------+----------------------------------------------------
  Reporter:  sjamaan   |       Owner:                   
      Type:  defect    |      Status:  new              
  Priority:  critical  |   Milestone:  4.9.0            
 Component:  unknown   |     Version:  4.7.x            
Resolution:            |    Keywords:  segfaults are fun
-----------------------+----------------------------------------------------

Comment(by sjamaan):

 With a 6G heap the program seems to run stable (and consumes all memory).
 It really seems to need this much memory!

 A rough calculation seems to indicate that 10,000,000 fixnums require
 about 77MiB on a 64-bit machine.  With the additional cons cells for the
 list that's three times as much, about 229MiB.  With "reverse" running,
 this will need twice as much again, let's say it needs 500MiB to keep the
 two lists around.  When compiled, the same program does indeed take up as
 much (well, 1G but that's probably due to the buddy algorithm resizing the
 heap to double its size every time it runs the GC when more memory is
 needed).

 Having an interpreted program take about 4 times as much is a little
 strange (and possibly candidate for improvement), but the real bug is that
 it's crashing hard when running out of memory.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/892#comment:4>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]