gnunet-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GNUnet-developers] [GSoC] Question on "Rust implementation of GNUne


From: Jeff Burdges
Subject: Re: [GNUnet-developers] [GSoC] Question on "Rust implementation of GNUnet utils" project
Date: Tue, 22 Mar 2016 13:38:31 +0100

On Tue, 2016-03-22 at 01:52 +0100, Kelong Cong wrote:
> A small comment on mioco, it does look a bit like goroutines. But I
> suspect that it doesn't do deadlock detection. Goroutines does some
> deadlock detection by having a runtime, not sure which deadlock
> detection algorithm it uses though. 

Interesting.  I went to read a bit about it.  

There is no partial deadlock detection in Go, only full deadlock
detection.  It can report how long and where routines spent blocked
though, so that you can do it manually.  Yes, I suspect the rust
parallelism libraries are going to be thin on debugging tools.

Also, I haven't read Christian's X10 paper carefully, but the jist is
that deadlocks are addressed by properly restricting the parallelism
constructions employed.  Imposing a DAG on the parallel components
helps.  Coroutines sound more subject to deadlocks than
promises/futures, or state machines.  Avoiding the need for mutexes
helps. 


> Jeff, you mentioned the scheduler, would that this one
> https://gnunet.org/doxygen/d6/dcb/group__scheduler.html ?

Yes, that is the scheduler. in GNUNet utils.  It's basically the same
as libevent, libuv, etc.  And mio is the analogous tool for Rust :
http://rustdoc.s3-website-us-east-1.amazonaws.com/mio/master/mio/struct.EventLoop.html

Jeff


Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]