module Make: functor (P : Problem) -> S
with type input = P.input and type output = P.output and type init = P.init
Functor building a map/reduce implementation for a given problem.
type init
The type of data sent by server to clients at startup.
type input
The type of input values passed to agents.
type output
The type of overall result.
val client : JoinHelper.configuration -> unit
client cfg uses the
cfg to connect to the server, and registers itself
to receive computations (
i.e. executions of
JoinMapRed.Problem.map).
val server : JoinHelper.configuration ->
init ->
('a, input) JoinPool.Simple.enum ->
output -> output
server cfg i e z sets up a server using the passed configuration, and
dispatches tasks to registered clients using a pool.
The result is reduce k1 v1 (reduce k2 v2 (... (reduce kn vn z)))
where: