|
List Info
Thread: Re: Re: Darcs performance
|
|
| Re: Re: Darcs performance |

|
2007-01-22 17:10:33 |
|
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
darcs-users darcs.net
http://www.abridgegame.org/mailman/listinfo/darcs-users
|
| Re: Re: Darcs performance |

|
2007-01-22 19:35:04 |
|
On 1/22/07, Alan Bram oracle.com> wrote:
> 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)".
Which version of ghc was used to compile darcs? Version 6.6 made some
GC changes and I have had generally better performance just by
compiling with the latest version.
Michael
_______________________________________________
darcs-users mailing list
darcs-users darcs.net
http://www.abridgegame.org/mailman/listinfo/darcs-users
|
[1-2]
|
|
|
about | contact Other archives ( Real Estate discussion Medical topics )
|