On Dec 5, 2006, at 3:28 AM, Simon Marlow wrote:
Maybe your virtual server has set a limit on the data size for a
process, that may be smaller than the total memory size allocated
to the virtual machine. You said earlier that it was using 160M,
how did you measure that?
If you run darcs with "+RTS -sstderr" you'll see how much memory
the GHC heap was using (look for the "in use" figure). But the GHC
runtime doesn't allocate memory via realloc(), it uses mmap(), so
this is probably memory that darcs itself is allocating.
Hi,
I'm having what looks to be a similar problem, running darcs diff,
except in a simpler environment. I'm not running any sort of virtual
server; just a plain (modern) Linux dev box.
I'm just trying to dig out a single diff to a single file. This
particular file has only about a half-dozen recorded changes to it,
although the repo as a whole has something like 128 recorded changes.
darcs -version shows "1.0.8 (stable branch)".
Earlier in this thread, Juliusz suggested trying various GHCRTS
settings. I had the same results as Leslie. That is, GHCRTS=-c made
no difference; GHCRTS=-G1 seemed to take forever, so I had to kill
it; GHCRTS="-c -G1" was rejected as an illegal combination.
Here's the result of ulimit -a and the overcommit_memory setting
(which were requested of the previous user by Juliusz), as well as
the output of darcs diff with +RTS -sstderr:
$ ulimit -a
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) unlimited
virtual memory (kbytes, -v) unlimited
$ cat /proc/sys/vm/overcommit_memory
0
$ darcs diff -p 8-24 rep039.tcl +RTS -sstderr
darcs diff -p 8-24 rep039.tcl +RTS -sstderr
darcs failed: Inverse patch failed!
realloc: resource exhausted (out of memory)
158,762,171,564 bytes allocated in the heap
102,601,472 bytes copied during GC
4,632,032 bytes maximum residency (101 sample(s))
604886 collections in generation 0 ( 32.60s)
101 collections in generation 1 ( 0.13s)
9 Mb total memory in use
INIT time 0.00s ( 0.00s elapsed)
MUT time 73.80s (142.73s elapsed)
GC time 32.73s ( 32.72s elapsed)
EXIT time 0.00s ( 3.25s elapsed)
Total time 106.53s (178.70s elapsed)
%GC time 30.7% (18.3% elapsed)
Alloc rate 2,151,248,937 bytes per MUT second
Productivity 69.3% of total user, 41.3% of total elapsed
$
Have I just hit the limits of darcs's capabilities? Or does there
seem to be something wrong that could be fixed?
Cheers,
- arb
_______________________________________________
darcs-users mailing list
[email protected]
http://www.abridgegame.org/mailman/listinfo/darcs-users