In GHC/FFI, is there some way (is it possible ?) to
access DIRECTLY an array of UArray type (immutable) in a
sequential contiguous memory buffer (in C side, for
example) without to need to copy the array elements one
by one ? GHC hackers and implementors are wellcome... :-)
My
Hello again,
Another thought..
Could it be that sTree0 is cyclic that accounts for this
dramatic slow down? I'm not to sure how DiffArray are
implemented, but if it's how I would do it it seems you
would end up with a massive chain of indirections.
Possible. It is possible to get an
Yes, it's probably garbage collection. To be sure, you can
run your program
with the -t RTS option, which will create a file in the
current working
directory named foo.stat if the executable is named foo.
The resulting
file will contain the total amount of time spent, the mutator
I have made some changes to the GHC source
code (6.0.1) and I would really welcome your
feedback, whether they are ok for my task
(first step: introduce record expressions
of the shape 'struct {x1=e1,x2=e2,...,xn=en}'):
* added
(struct, ITstruct, bit glaExtsBit),
to
The same is true on IA64, if you look at the configure script there's
a little hack of mine...
if test $HaveLibGmp = NO; then
if test $HostArch_CPP = ia64; then
AC_MSG_ERROR([You need to install libgmp (the in-tree version
does not work on IA64).])
fi;
fi;
It's probably broken for
I haven't checked the DiffArray implementation, though (it would be nice
if someone could investigate DiffArray and fix any perf problems they
find).
The most obvious one is that all accesses are protected by an MVar. Of
course, this is necessary in some code but I'm guessing that it's