Lisp HUG Maillist Archive

CLWS - Work-stealing scheduler for LispWorks

Hi,

I finally managed to publicly release CLWS, our own work-stealing scheduler for LispWorks (pronounced “claws”). This is joint work with Charlotte Herzeel. You can find the code and a readme with some explanation at https://github.com/pcostanza/clws

This scheduler is not quite the same as what Cilk does. We also have a scheduler that is closer to Cilk, which allows for executing the continuation of a sync on arbitrary worker threads. However, it is also harder to use - you basically have to convert your program into continuation-passing style - and in our experience, you don’t get much better performance out of this in practice. CLWS is much easier to use because you can code in direct style. If you are interested in the Cilk-like version anyway, please let us know.

Any other kind of feedback is also welcome.


Pascal

--
Pascal Costanza
The views expressed in this email are my own, and not those of my employer.




_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html


Re: CLWS - Work-stealing scheduler for LispWorks

Pascal:

So you know, there is something called CLWS which stands for "Common
Lisp Web Sockets": http://www.cliki.net/clws

I just wanted to bring that to your attention in the event you wanted
to have a more unique name.

Cheers,

Robert

On Sun, Feb 9, 2014 at 1:55 PM, Pascal Costanza <pc@p-cos.net> wrote:
>
> Hi,
>
> I finally managed to publicly release CLWS, our own work-stealing scheduler for LispWorks (pronounced “claws”). This is joint work with Charlotte Herzeel. You can find the code and a readme with some explanation at https://github.com/pcostanza/clws
>
> This scheduler is not quite the same as what Cilk does. We also have a scheduler that is closer to Cilk, which allows for executing the continuation of a sync on arbitrary worker threads. However, it is also harder to use - you basically have to convert your program into continuation-passing style - and in our experience, you don’t get much better performance out of this in practice. CLWS is much easier to use because you can code in direct style. If you are interested in the Cilk-like version anyway, please let us know.
>
> Any other kind of feedback is also welcome.
>
>
> Pascal
>
> --
> Pascal Costanza
> The views expressed in this email are my own, and not those of my employer.
>
>
>
>
> _______________________________________________
> Lisp Hug - the mailing list for LispWorks users
> lisp-hug@lispworks.com
> http://www.lispworks.com/support/lisp-hug.html
>

_______________________________________________
Lisp Hug - the mailing list for LispWorks users
lisp-hug@lispworks.com
http://www.lispworks.com/support/lisp-hug.html


Updated at: 2020-12-10 08:34 UTC