plasmodic / ecto

ecto is a dynamically configurable Directed Acyclic processing Graph (DAG) framework.
http://ecto.willowgarage.com/
BSD 3-Clause "New" or "Revised" License
97 stars 37 forks source link

Asynchronous processing w/ different loop speeds #255

Closed stonier closed 9 years ago

stonier commented 10 years ago

I found this in the ecto misc folder.

It pictures a problem I've been chewing over for a few days - how to use ecto in a situation where I have multiple loops required to run at multiple frequencies. I don't see how asynchronous execution can help with this though...

stonier commented 9 years ago

So the current state was single threaded execution of a single plasm's directed graph, and no way to get multiple plasms working with each other.

Some updates went in to at least get parallel execution of multiple plasms with individual cells stretching across the threads. Parallel execution of cells inside a plasm is still not available.

254 lets you introspect what tendrils are connected, this lets you process a cell differently depending on what is connected (i.e. have one cell reaching across multiple plasms).

269, #270, #271 clean up the interactions with the python GIL, and allow for parallel execution of plasms.