I've been following with interest the recent discussions on reddit
about the extremely slow hash tables in Haskell compared to F# and
OCaml, and as I understood it, this performance problem is caused by
GC not liking mutable arrays
http://hackage.haskell.org/trac/ghc/ticket/650
It appears from
Hello FFT,
Monday, April 6, 2009, 11:07:33 AM, you wrote:
this problem addressed there? Why is this supposed to be specific to
boxed arrays only: wouldn't GC have to scan the whole mutable array
whether it's boxed or unboxed?
you need to scan only boxes: if array just contains plain
On Mon, Apr 6, 2009 at 1:10 AM, Bulat Ziganshin
bulat.zigans...@gmail.com wrote:
you need to scan only boxes: if array just contains plain cpu-level
numbers, there is nothing to scan
Are those the only legal contents of STUArray?
___
Haskell-Cafe
On Monday 06 April 2009 4:10:43 am Bulat Ziganshin wrote:
one way to solve this problem is to make one `modified` bit per each 256
elements rather than entire array so GC will have to scan only
modified chunks
For reference, I constructed a benchmark that takes advantage of GHC's tagging
of
Hello Dan,
Monday, April 6, 2009, 12:35:14 PM, you wrote:
the size of the sub-array. The test then fills a 10 million element array.
However, something about the benchmark makes it perform poorly for both small
chunks and large chunks. -sstderr reports that lots of copying occurs for
small
Hello FFT,
Monday, April 6, 2009, 12:32:53 PM, you wrote:
you need to scan only boxes: if array just contains plain cpu-level
numbers, there is nothing to scan
Are those the only legal contents of STUArray?
numbers, chars, vanilla pointers. UArray just mimics C arrays, after all
--
Best
Hello FFT,
Monday, April 6, 2009, 12:56:51 PM, you wrote:
Are those the only legal contents of STUArray?
numbers, chars, vanilla pointers. UArray just mimics C arrays, after all
I haven't gotten to learning about them in detail yet, but my hope was
that STUArray was like vectorT in C++,
On Mon, Apr 6, 2009 at 1:49 AM, Bulat Ziganshin
bulat.zigans...@gmail.com wrote:
Are those the only legal contents of STUArray?
numbers, chars, vanilla pointers. UArray just mimics C arrays, after all
I haven't gotten to learning about them in detail yet, but my hope was
that STUArray was