Lambda the Ultimate

inactiveTopic More USENIX02 summaries from Oleg
started 7/11/2002; 3:22:46 AM - last post 7/15/2002; 9:10:17 PM
Ehud Lamm - More USENIX02 summaries from Oleg  blueArrow
7/11/2002; 3:22:46 AM (reads: 742, responses: 5)
More USENIX02 summaries from Oleg
Oleg sent in a report on three more USENIX02 talks. Threading was the topic of all three.

You can find them at the end of file containing the previous talk summaries.


Posted to general by Ehud Lamm on 7/11/02; 3:23:46 AM

Patrick Logan - Re: More USENIX02 summaries from Oleg  blueArrow
7/11/2002; 9:40:48 AM (reads: 773, responses: 1)
Cooperative Tasking Without Manual Stack Management

Of course my favorite quote from the summary of this paper is...

The presenter specifically mentioned that Scheme doesn't suffer that style problem. In Scheme, event-based programming looks elegant and natural... The paper focuses on the stack management problem in conventional languages without elegant closures...I think though that subliminally the message of the talk was to use Scheme.

Ehud Lamm - Re: More USENIX02 summaries from Oleg  blueArrow
7/12/2002; 4:06:43 AM (reads: 768, responses: 0)
Yep...

Still, it may be worth mentioning that efficient implementation of continuations is not trivial.

Noel Welsh - Re: More USENIX02 summaries from Oleg  blueArrow
7/15/2002; 2:32:53 AM (reads: 677, responses: 1)
It seems to me that the save/resume continuation model of threads only works on uniprocessor systems. If you want real concurrency on a multiprocessor system then something else must be used. Perhaps the problem is that threads conflates two separate ideas: balancing load across multiprocessor systems and structuring programs that must handle many tasks at once (and where you may have blocking IO and so on).

Ehud Lamm - Re: More USENIX02 summaries from Oleg  blueArrow
7/15/2002; 8:58:16 AM (reads: 717, responses: 0)
Yes, I think different people mean different things when they talk about threading. Threads as light weight processes (an OS concept) is not the same thing as how concurrency is supported by the programming model.

Oleg - Re: More USENIX02 summaries from Oleg  blueArrow
7/15/2002; 9:10:17 PM (reads: 655, responses: 0)
It seems to me that the save/resume continuation model of threads only works on uniprocessor systems. If you want real concurrency on a multiprocessor system then something else must be used.

According to Atul Adya and co-authors, that's a different dimension: data partitioning (and partly, conflict resolution). If you want to run your application on a truly multi-processor, you will most certainly need to adjust your algorithm: do a so-called domain decomposition. Sometimes this is trivial -- e.g., when rendering a movie, each frame can be rendered separately on a dedicated processor. Sometimes it is difficult: for example, molecular dynamics and liquid theory Monte-Carlo methods don't lend themselves to parallel processing at all.