[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Comparing Pika-syle and JNI-style

This page is part of the web mail archives of SRFI 50 from before July 7th, 2015. The new archives for SRFI 50 contain all messages, not just those from before July 7th, 2015.

On Wed, 14 Jan 2004, Per Bothner wrote:

>bear wrote:
>> I've been bitten by this while using a genetic algorithm.  I had
>> "random-looking" bit patterns (the genomes) filling almost 2Gbytes of
>> memory space, and the Boehm collector was mistaking almost half of
>> the words for possible pointers.  It eventually reached a tipping
>> point where the values it couldn't free contained enough
>> "pseudopointers" to prevent it from freeing anything else, and
>> crashed.
>That's misidentifying non-pointers as pointer, which is a performance
>issue (which in worst case can cause out-of-memory problems).

You were referring, then, to correctness issues, where the C compiler
makes some optimization (probably an optimization involving pointer
arithmetic or pointer bit-operations) and as a result the conservative
collector erroneously frees live data that the program is using it to
refer to?

I'd think that schemes might be particularly vulnerable to this since
a lot of implementations use "flag bits" in their pointers to identify
representations, types, etc. But I haven't heard of a scheme that has
such a problem being released.