|
Project Information
Featured
Downloads
|
Note!The Scavenger source code is no longer hosted on Google Code. The code base has been split into (more or less) independent modules which are now hosted on GitHub (https://github.com/madsdk/). Building and installing both the client library and the daemon (execution environment) should be much simpler now. Build scripts that fetch and build everything needed can be found in python-execution-environment and in scavenger-library. What is Scavenger?Cyber foraging is the process of small (usually mobile) devices utilizing unused computing resources in their vicinity. In Scavenger the resource being harvested is CPU processing, i.e., Scavenger provides an easy way to distribute computing tasks from a mobile device onto stronger machined on the local network. For news and announcements see http://kedeligdata.blogspot.com/search/label/scavenger. For further information about Scavenger go to the wiki (under construction). A small exampleIn order to use remote processing from a Python application all that is needed (as of version 0.3.0) is the following: import scavenger
@scavenger.scavenge
def do_something_that_is_heavy(x, y, z):
result = 0
for i in range(0, x):
for j in range(0, y):
for k in range(0, z):
result += i-j+k
return result
print do_something_that_is_heavy(200,100,300)
scavenger.shutdown()When the function do_something_that_is_heavy is invoked, Scavenger will consider the availability of Scavenger-Peers on the local network, and if any stronger peers are available it will forward the execution of the function to these. |