<div dir="ltr">On Sun, Jul 20, 2008 at 12:34 AM, Bulat Ziganshin <<a href="mailto:bulat.ziganshin@gmail.com">bulat.ziganshin@gmail.com</a>> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello Krzysztof,<br>
<div class="Ih2E3d"><br>
Sunday, July 20, 2008, 1:55:45 AM, you wrote:<br>
>>> 532 MB total memory in use (4 MB lost due to fragmentation).<br>
<br>
</div>i think that Parsec library should hold entire file in memory only when<br>
you use 'try' for whole file. otherwise it should omit data as<br>
proceeded<br>
<div><br></div></blockquote></div><br>That's exactly what I thought. But even if I remove the only 'try' I use the memory consumption remains unchanged:<br><br>C:\cygwin\home\Metharius\killer\KillerPy\ansi2html\ansi2html_old.exe duzy.log +RTS -sstderr<br>
File duzy.log processed. It took 5.046875s. File size was 4166578 characters.<br> 3,950,649,704 bytes allocated in the heap<br> 535,544,056 bytes copied during GC<br> 117,603,408 bytes maximum residency (9 sample(s))<br>
1,647,828 bytes maximum slop<br> 265 MB total memory in use (2 MB lost due to fragmentation)<br><br> Generation 0: 7527 collections, 0 parallel, 0.86s, 0.86s elapsed<br> Generation 1: 9 collections, 0 parallel, 0.80s, 0.81s elapsed<br>
<br> INIT time 0.02s ( 0.00s elapsed)<br> MUT time 3.20s ( 3.63s elapsed)<br> GC time 1.66s ( 1.67s elapsed)<br> EXIT time 0.00s ( 0.00s elapsed)<br> Total time 4.88s ( 5.30s elapsed)<br>
<br> %GC time 34.0% (31.6% elapsed)<br><br> Alloc rate 1,227,386,315 bytes per MUT second<br><br> Productivity 65.7% of total user, 60.5% of total elapsed<br><br><br><br>One more thing to note: with partial parsing there is no longer a difference between mapM_ and mapMPar.<br>
<br>Best regards<br>Christopher Skrzêtnicki<br></div>