Name: flow
Owner: gophergala2016
Description: Awesome stuff
Created: 2016-01-23 15:34:42.0
Updated: 2016-10-21 16:17:07.0
Pushed: 2016-01-25 00:59:05.0
Homepage: null
Size: 784
Language: Go
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Flow is a tool that allows you to connect to a Peer-to-peer network of people who are willing to donate spare CPU time, for you to execute expensive computations that you could not afford by yourself. Because we believe in equality, when you connect to Flow, you donate you spare CPU time so other people in the network can use it as well.
The main inspiration for developing Flow are projects like World Community Grid or BOINC. In scientific computing, platforms like these allow you to compete with projects that need to be run in supercomputers.
At this early stage, Flow is not able to compete with those projects, but if you are sitting in Starbucks with your friends, it would be fun to be able to distribute your computations.
We suggest using the gb
tool:
endor restore
uild
To run Flow, you use bin/flow
.
The Flow interface looks like this:
v0.1.0
s Ctrl+C twice to exit
>
You have the following commands:
inspect
: Gives you the peers Flow has detected automatically. See eval
.usage
: Returns your current CPU use (as a percentage).eval [filename]
: Evaluates your code in an available machine in the network.
eval
automatically detects peers and chooses one for you.Currently, we are using a Lisp implementation that is native to Go, zygomys, as the language you can run using Flow. In almost every aspect it's normal Lisp code. Please refer to the language for the subtle changes.
For example, you would have
code.zy
0 2) ; Or the answer to life the universe and everything
inside you file, and would run:
> eval mycode.zy
the answer to my computation
s Enter to continue...
Other people using Flow send you a "usage"
request to know what your CPU usage
is. If it's lower a fixed threshold, then Flow can pick you to execute their
code. It runs in the background and you would never notice it.