Subject: Re: [boost] Process library with child process events
From: Giorgio Zoppi (giorgio.zoppi_at_[hidden])
Date: 2011-06-06 10:43:18
>> Something that has an object process_pool.
> Can you expand on what you mean by process pool? I've run into a use case
> where I'd like to launch several processes(one per core) and join all. Is
> that along the lines of what you were thinking? I do this now in client code
> but will try to get this formalized and added to the library.
Well something like the algorthmic skeleton master-slave is useful.
See this: http://en.wikipedia.org/wiki/Algorithmic_skeleton.
Over your process library you might implement some skeletons for use at best.
I need something of higher level. I dont want to care everytime to
join each process.
int four( 4 ), five( 5 );
pool_process_sample sample(3,out_queue); // three processes.
sample.set_function( boost::bind( add, four, five ) ) );
Here i can use the results on the output queue. This scheme can be
extended to have a map-reduce,
or an input queue as you like. In this case it is difficult have
syncronization errors, because it is all hidden.
Probally i missed some parts.
You could, if you want
provide a lower level and an higher level.
I will help you to test performance with my work 12 cores workstation :).