* ocaml-duppy: an advanced scheduler for ocaml.
@ 2008-03-07 20:29 Romain Beauxis
2008-03-07 20:58 ` [Caml-list] " Gerd Stolpmann
0 siblings, 1 reply; 4+ messages in thread
From: Romain Beauxis @ 2008-03-07 20:29 UTC (permalink / raw)
To: caml-list; +Cc: Savonet's developpers list
Hi all !
Along with our project (liquidsoap), we (the savonet team) have developped an
advanced scheduler that we needed for our software. It is now available as a
seperate module, and we hope it could be usefull for some of you.
The basics of this scheduler is to implement a wrapper around Unix.select in
order to be able to wait for events on a socket and/or a given delay and
execute a task when one of the waited events occured.
We also wrote an asynchronous interface as well as a simple I/O interface, in
order to read and write to sockets, or submit an asychronous task to a
scheduler.
Several queues can be run against the same scheduler, each one living in a
different thread. Also, each task has a priority, which can of your favorite
type, and each queue decides if it wants to process a task according to a
predicate passed at its initialisation.
This scheduler can be very usefull to write simple servers, as well as to
develop a multi-thread task processing system. Two simple telnet and http
examples are provided in the source.
You can find more informations on the module there:
http://www.rastageeks.org/duppy.html
In particular, the documentation is available there:
http://www.rastageeks.org/ocaml-duppy/Duppy.html
You can also download the module there:
https://sourceforge.net/project/showfiles.php?group_id=89802&package_id=266393
Romain
--
The bars could not hold me;
Force could not control me now.
They try to keep me down, yeah!
But Jah put I around.
(...)
Let me tell you this -
I'm a duppy conqueror !
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Caml-list] ocaml-duppy: an advanced scheduler for ocaml.
2008-03-07 20:29 ocaml-duppy: an advanced scheduler for ocaml Romain Beauxis
@ 2008-03-07 20:58 ` Gerd Stolpmann
2008-03-07 21:08 ` Romain Beauxis
0 siblings, 1 reply; 4+ messages in thread
From: Gerd Stolpmann @ 2008-03-07 20:58 UTC (permalink / raw)
To: Romain Beauxis; +Cc: caml-list, Savonet's developpers list
How is that different from my equeue approach?
Gerd
Am Freitag, den 07.03.2008, 21:29 +0100 schrieb Romain Beauxis:
> Hi all !
>
> Along with our project (liquidsoap), we (the savonet team) have developped an
> advanced scheduler that we needed for our software. It is now available as a
> seperate module, and we hope it could be usefull for some of you.
>
> The basics of this scheduler is to implement a wrapper around Unix.select in
> order to be able to wait for events on a socket and/or a given delay and
> execute a task when one of the waited events occured.
>
> We also wrote an asynchronous interface as well as a simple I/O interface, in
> order to read and write to sockets, or submit an asychronous task to a
> scheduler.
>
> Several queues can be run against the same scheduler, each one living in a
> different thread. Also, each task has a priority, which can of your favorite
> type, and each queue decides if it wants to process a task according to a
> predicate passed at its initialisation.
>
> This scheduler can be very usefull to write simple servers, as well as to
> develop a multi-thread task processing system. Two simple telnet and http
> examples are provided in the source.
>
> You can find more informations on the module there:
> http://www.rastageeks.org/duppy.html
> In particular, the documentation is available there:
> http://www.rastageeks.org/ocaml-duppy/Duppy.html
> You can also download the module there:
> https://sourceforge.net/project/showfiles.php?group_id=89802&package_id=266393
>
>
> Romain
--
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany
gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de
Phone: +49-6151-153855 Fax: +49-6151-997714
------------------------------------------------------------
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Caml-list] ocaml-duppy: an advanced scheduler for ocaml.
2008-03-07 20:58 ` [Caml-list] " Gerd Stolpmann
@ 2008-03-07 21:08 ` Romain Beauxis
2008-03-10 18:57 ` Gerd Stolpmann
0 siblings, 1 reply; 4+ messages in thread
From: Romain Beauxis @ 2008-03-07 21:08 UTC (permalink / raw)
To: Gerd Stolpmann; +Cc: caml-list, Savonet's developpers list
Le Friday 07 March 2008 21:58:26 Gerd Stolpmann, vous avez écrit :
> How is that different from my equeue approach?
Well, it is very similar, clearly.
The difference I can see for now, is that Duppy is more simple and oriented
toward socket events and delays. In particular, it is not clear to me wether
equeue can accept delayed tasks.
Of course, we didn't meant to deprecate your work, but perhaps it can be
usefull for different taks..
Romain
--
Seven miles of Black Star Liners coming in the harbour.
Yeah, seven miles of Black Star Liners coming in the harbour.
I can see them coming.
I can see I dreams running.
I can hear the Elders saying,
These are the days for which we've been praying.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Caml-list] ocaml-duppy: an advanced scheduler for ocaml.
2008-03-07 21:08 ` Romain Beauxis
@ 2008-03-10 18:57 ` Gerd Stolpmann
0 siblings, 0 replies; 4+ messages in thread
From: Gerd Stolpmann @ 2008-03-10 18:57 UTC (permalink / raw)
To: Romain Beauxis; +Cc: caml-list, Savonet's developpers list
Am Freitag, den 07.03.2008, 22:08 +0100 schrieb Romain Beauxis:
> Le Friday 07 March 2008 21:58:26 Gerd Stolpmann, vous avez écrit :
> > How is that different from my equeue approach?
>
> Well, it is very similar, clearly.
> The difference I can see for now, is that Duppy is more simple and oriented
> toward socket events and delays. In particular, it is not clear to me wether
> equeue can accept delayed tasks.
>
> Of course, we didn't meant to deprecate your work, but perhaps it can be
> usefull for different taks..
My question was only out of curiosity. I am sometimes interested why
people reinvent wheels - and if it is only for a different color.
Equeue supports delays. It doesn't support priorities, however. Also,
multi-threading integration seems to be different.
Gerd
--
------------------------------------------------------------
Gerd Stolpmann * Viktoriastr. 45 * 64293 Darmstadt * Germany
gerd@gerd-stolpmann.de http://www.gerd-stolpmann.de
Phone: +49-6151-153855 Fax: +49-6151-997714
------------------------------------------------------------
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-03-10 18:56 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-07 20:29 ocaml-duppy: an advanced scheduler for ocaml Romain Beauxis
2008-03-07 20:58 ` [Caml-list] " Gerd Stolpmann
2008-03-07 21:08 ` Romain Beauxis
2008-03-10 18:57 ` Gerd Stolpmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox