FFI calls: is it possible to allocate a small memory block on a
rtvd at mac.com
Wed Apr 14 01:02:28 EDT 2010
Yesterday I did a few tests to measure the performance of FFI calls and
found that the calls themselves are very quick (1-2 nanosecond).
However, there is a kind of FFI calls when one have to allocate a
temporary memory block (for a struct, or a temporary buffer). One of
examples is a call to "gettimeofday" or "clock_gettime". Unfortunately,
the usual way of doing it (using the "alloca" function) is quite slow
I was wondering, is there any way to allocate a small chunk of data on a
That should be cheap, as by large it is just a shift of a pointer and,
perhaps, a few other trivial operations.
I understand that it is not safe to allocate large blocks on the stack.
But we could possibly have a function similar to "alloca" which would
allocate small blocks on stack and would use the "alloca" for big ones.
With kind regards,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Glasgow-haskell-users