[gambit-list] malloc/free vs ___EXT(___alloc_rc)/___release_rc

Álvaro Castro-Castilla alvaro.castro.castilla at gmail.com
Fri Apr 12 08:25:07 EDT 2013


Thanks Mikael,

I want to be able to allocate multiple tiny objects through C interface
with multiple calls. I guess for that i better make a custom allocator
based on malloc. Otherwise malloc would incur in much overhead if called
that many times.

I'm aware that ___alloc_rc does reference counting, but also stores a a
pointer to scheme data. I guess that is a just a pointer, but that is an
unused pointer.

Thanks!
El 12/04/2013 12:41, "Mikael" <mikael.rcv at gmail.com> escribió:

> I'd guess the diffference may be:
>
>  * malloc_rc keep a refcount?
>
>  * malloc_rc performs the allocation within Gambits memory system? (well,
> for blocks above 512 bytes, Gambit's memory system makes a separate malloc
> anyhow, so for your usecase it could be equal in this respect)
>
> You should find the answer by checking the source? Look for the calls
> called something like inc_rc and dec_rc too.
>
> 2013/4/12 Álvaro Castro-Castilla <alvaro.castro.castilla at gmail.com>
>
>> Hi,
>>
>> I'd like to know what's the main difference between using the malloc/free
>> combination vs. the ___EXT(___alloc_rc) / ___EXT(___alloc_rc) one.
>>
>> Mi intention is to create C arrays and manage them from the Scheme side,
>> so I can explicitly free them once I need to.
>>
>> Which one should I use?
>>
>> Thank you,
>>
>> Álvaro
>>
>> _______________________________________________
>> Gambit-list mailing list
>> Gambit-list at iro.umontreal.ca
>> https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20130412/0e385c44/attachment.htm>


More information about the Gambit-list mailing list