[gambit-list] processor state

Vijay Mathew vijay.the.lisper at gmail.com
Tue Feb 11 06:40:49 EST 2014


Good news! I am sure there will also be a simple and efficient API for
message passing between the VMs, similar to the one we currently have with
threads.

Recently I tried to integrate nanomsg (http://nanomsg.org/) into Gambit. My
goal was to create a cluster of Gambit VMs connected over a
high-performance messaging library. But nanomsg itself is in alpha and the
integration did not go as smoothly as I expected. (I do not want to use
ZeroMQ because of the C++ dependencies). Anyone else here tried
something similar before?



On Mon, Feb 10, 2014 at 6:31 PM, Marc Feeley <feeley at iro.umontreal.ca>wrote:

>
> On Feb 10, 2014, at 1:51 AM, Vijay Mathew <vijay.the.lisper at gmail.com>
> wrote:
>
> > C API macros like CHARSTRING_to_SCMOBJ takes a processor state as first
> argument. What is the purpose of this?
> >
> > Thanks,
> >
> > --Vijay
>
> I have been gradually adding multicore support to Gambit over the past few
> months.  In the past there was just one "processor" (where the term
> processor means an OS thread that is executing Scheme code).  The goal is
> to support multiple processors, each with their own heap section where they
> allocate memory.  So the "processor state" parameter of
> CHARSTRING_to_SCMOBJ, and other C interface functions that can allocate
> Scheme objects, indicates in which processor's heap to do the allocation.
>  The special case of a NULL pointer indicates the allocation of a
> "permanent" object (in a separate area which is never deallocated).
>
> Just this weekend I got multiple Gambit VMs running in the same OS
> process.  The support for this is still alpha quality and there are issues
> to solve, but its moving in the right direction!
>
> Marc
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20140211/48c6f8f7/attachment.htm>


More information about the Gambit-list mailing list