
Decommissioned mobile devices as cheap energy-efficient compute nodes - blacksmythe
https://www.usenix.org/conference/hotcloud17/program/presentation/shahrad
======
pm215
Interesting idea, but I suspect if you tried it you'd quickly run into
practical limitations. I know people who've tried running build farms with
"development board" hardware have found that the stress of 24x7 100% compute
hits kernel bugs or overheating issues that 'normal use' doesn't, and I
suspect mobile phones would be similar. The pace of phone evolution means
you'd have an ongoing effort to get new kinds of devices into your 'cluster'
(figuring out how to root them, identifying how to network them, rigging up
some kind of custom rack-mounting hardware, etc). And there'd be a bigger
turnover of 'replace expired device' than with fewer newer designed-for-server
nodes.

The paper also suggests running a hypervisor on these, but I suspect you'd
find that firmware/boot rom locks you out of EL2 (hypervisor mode) on most
hardware.

~~~
nine_k
I suspect certain games, like Ingress, or GPU-intensive games, routinely max
out phones' computing hardware. Chances are that badly overheating models are
reasonably few and already known by gamers.

~~~
morganvachon
My experience with Ingress back in the day bears this out. That game would
cause certain phones to reboot due to overheating, and others to throttle down
so low they were worthless for playing.

------
feelin_googley
My company is working on pocket-sized routers/firewalls/DNS servers.

These sit between the "smartphone" and the untrusted, e.g., public, wifi
router, acting as a user-controlled gateway.

The user makes a one-time change to the settings on their smartphone to use
the user-controlled gateway. This enables blocking ads and other unwanted
outgoing connections without having to be physically at home or work, i.e. in
a location where the user can "trust" the network.

The pocket-sized router runs open source software chosen and installed by the
user. Users have a generous choice of operating systems, from Plan9 to BSD to
Linux, as they do for the RPi. Baseband is either absent or physically
disabled.

The main advantage I see to leveraging old "phones" for this is the power
supply.

While I have seen small form factor routers made for travel, they are
generally not rechargeable.

~~~
CyberDildonics
Why wouldn't someone just do that through the software on their phone?

~~~
pjc50
Hard to do without root/jailbreak.

------
TheAceOfHearts
It seems like you'd encounter so many challenges in taking this path, although
I think it's awesome that people are seriously looking into this.

One point that they article doesn't mention is that mobile devices don't have
ECC RAM. I'm not very familiarized with the server space, but I thought that
was pretty much a standard requirement? e.g. If you're providing IaaS, isn't
the risk of falling prey to rowhammer attacks a serious concern?

What I'd love to see is something similar but for home users. Instead of
continuing to push stuff into third-party services, you can hook up a mix of
devices to run services and applications from home. Bring back the distributed
internet dream! Most home services don't need tons of power or high
availability. The biggest risk is probably with handling data backups, which
you can easily solve by encrypting assets and pushing em up to some cloud
provider.

~~~
ori_b
> If you're providing IaaS, isn't the risk of falling prey to rowhammer
> attacks a serious concern?

Just don't share devices. They probably don't have worthwhile virtualization
anyways.

A bigger problem is that the hardware is shit. Both from a reliability
perspective, and from a performance perspective. I just don't think there's a
market for this.

------
josteink
The problem with these devices are that they are often locked down, and even
unlocked/hacked open getting them to run anything like mainline Linux is hard-
ish.

~~~
gambiting
Just use GNURoot to install any linux onto any android device - it just runs
alongside Android:

[https://play.google.com/store/apps/details?id=champion.gnuro...](https://play.google.com/store/apps/details?id=champion.gnuroot&hl=en_GB)

~~~
dokument
What is the real downside of that vs replacing android with linux? I could see
there being more pro's than cons except for specific use cases.

~~~
notswiley
Android kills stuff when it feels like it wants more room to cache apps in
ram. The background stuff like the media indexer takes CPU time and generates
heat (these are pretty easy to overheat when used like this.) I think some of
the older android userspace even has flaws exploitable over the network. etc.

------
kbenson
Well, the cost of a raspberry Pi for a home server is actually quite high when
compared to using the busted or obsolete phone gathering dust in your drawer.

Since there are probably _millions_ of these, why not recycle into cheap
servers given the benefits of their low power use (and the possible ability to
draw power to charge during cheap periods and run off battery during expensive
ones).

~~~
icebraining
At least with a Pi you can install the latest security patches. Of those
millions of phones, many are simply locked, and even the others very often
don't have drivers compatible with the newer kernels.

Becoming a node on a botnet to save $5 is not very attractive.

~~~
fragmede
_Which_ security patches?

The slides are light on details, but if I were doing this, the phones would
_not_ be running Android in any case, so while security is an important
consideration, you can't just say "but security!" and toss out the baby and
the bath water.

~~~
icebraining
What would they be running? Which other OS supports all thousands of models of
SoCs, with the necessary drivers to do everything described?

------
heisenbit
In practice so far new CPUs were much more power efficient than older ones -
so much that this approach makes little sense but .... it is worth noting that
one of the reasons this _might_ remotely work is on slide 7: Diminishing
growth CPU performance / end of Moore's Law. I'm fairly optimistic about the
10nm node still providing a power saving boost but in the long run this sort
of thinking could interesting.

------
9t3h4r3o5w1a4w2
I have at least 4 Android phones that have either a broken screen (but still
usable) or are just too old to run a recent version of Android. Anybody knows
how can I use them as computers or even servers? how to connect them to the
network without using wifi? they obviously don't come with a network port.

~~~
kbenson
A USB to ethernet adapter will probably work for a wired connection.[1]

Gambiting mentioned elsewhere in the comments that you can install GNURoot
from the Play store and run Linux along side Android.

I imagine there is, or soon will be, specific projects to pare down AOSP to
the minimum required to run a server without all the extra stuff (that is, the
Android part on top of Linux).

1: [http://plugable.com/2015/01/22/new-plugable-usb-fast-
etherne...](http://plugable.com/2015/01/22/new-plugable-usb-fast-ethernet-
adapter-brings-wired-ethernet-directly-to-your-tablets-microusb-port/)

------
Pica_soO
Imagine those on the attic, connected to a internet connection, forming a
mesh-net with all houses nearby- and activated if distributed computation
power is needed.

Converting abundant power into computation.

~~~
stephengillie
Imagine a mobile web server. For events, geocaching, emergency services, and
other on-demand situations. It could serve local wifi to serve its pages.

~~~
randomerr
There a bunch of LAMP apps on Android. You just need a phone that open enough
to let you 'share' a connections. Otherwise you would just be better off with
RPi setup as an access point.

[https://play.google.com/store/apps/details?id=com.esminis.se...](https://play.google.com/store/apps/details?id=com.esminis.server.php&hl=en_GB)

------
welder
Would love to see a community like Rasberry Pi for linux on old phones! Maybe
that already exists?

~~~
fabrice_d
yes: [https://www.postmarketos.org/](https://www.postmarketos.org/)

------
salad77
Isn't this the storyline to HBO's Silicon Valley ? Someone took it seriously?

~~~
fragmede
The original paper for _FAWN: Fast Array of Wimpy Nodes_ came out of CMU back
in _2009_ ; HBO's Silicon Valley has no monopoly over the level of idea which
would fit in a tweet.

------
mrmrcoleman
At a previous company we had a 'farm' of test phones that we used for testing
new versions of software. A large number of those test were 'stress testing'
which would probably be analogous to the sort of load you would have it they
were to be treated as a 'datacenter'.

Based on that I'm pretty sure that the biggest issue with managing the cluster
would be the extremely high failure rate.

That's not to say that this won't work because I haven't done the maths, but
it kid a unique challenge.

------
druidcz
Skimming through the article, I think it does not include cost of labor. In a
developed country, my guess is that the cost to have a human worker collect,
clean, setup, connect, etc. all the 84 phones would be actually higher than
buying a new server.

In third world countries, this could be a different story. I would be happy to
send my old phones to Africa to be used at schools.

~~~
HateInAPuddle
It would more likely end up in a place like this, though.

[https://en.wikipedia.org/wiki/Agbogbloshie](https://en.wikipedia.org/wiki/Agbogbloshie)

------
tpolzer
Add a factor of two to the material costs, because without ECC, on a large
scale you will have errors, so you need to double check every result. Now add
some more to their TCO because they don't take MTBF into account. Suddenly the
numbers do not look good anymore.

------
amelius
How does "FLOP per Joule" compare between such devices and an average desktop
PC?

------
toast0
I'm not sure they really did a good comparison here. Cost comparing an
8-socket system with 2 cpus installed buying new vs buying broken phones on
ebay isn't really fair. If I were going to for cheap compute, I'd look for
used (or otherwise discounted) chromeboxes. No distributed UPS, but small and
gigabit ethernet, reasonably current intel processors for good IPC, not
terribly large.

~~~
tedunangst
Yeah, the table is missing at least a few more columns. Whats the breakeven
point for a $200 server off eBay? 15000 savings in capex pays for a lot of
opex.

------
tammer
I saw a talk at my university by a prolific robotics engineer who explained
that for small drones designed to work by swarming & collaborating, it is much
more cost effective to use old Samsung Galaxy phones as the "brain" of a drone
platform rather than integrating standalone CPU's. As far as I know they still
use this as their primary design strategy.

~~~
mattip
They probably meant using the Odroid XU4 which is a nice platform built around
the Samsung Exynos-5422, not an actual phone

------
everheardofc
I used to make a joke that phones will be the future in datacenters because
nobody is designing ARM SoCs for servers and those that do made them perform
worse than phones.

The paper completely ignores the lack of ECC, hardware reliability and lack of
software support. Especially if you consider that the majority of mobile gpus
don't stupport opencl or don't even have drivers available for modern kernels.
You will need to support your software for each device type or rewrite your
software as an android app. But since developer and sysadmin time is far more
valuable you're better of just buying an x86 server.

------
AceJohnny2
This was a establishing plot point in Rudy Rucker's short story Hormiga
Canyon, published in Asimov's August 2007 issue. He also included the benefit
of voice recognition on any node :)

You can read it here:
[http://www.rudyrucker.com/transrealbooks/completestories/#_T...](http://www.rudyrucker.com/transrealbooks/completestories/#_Toc53)

(warning: Rudy's stories are... zany)

~~~
jacquesm
[https://en.wikipedia.org/wiki/The_Hacker_and_the_Ants](https://en.wikipedia.org/wiki/The_Hacker_and_the_Ants)

Is a good one too.

------
sengork
Energy efficiency relative to the same compute power for newer devices has
been a major factor for not using old computers to perform computations. Maybe
this principle carries over to low powered mobile devices, certainly some
basic economic principles between computations per power consumption prevail
at different orders of magnitude.

------
subway
Amazing little blackthrows too. Or so I've heard.

You can usually find a rootable phone in Walmart for about $15.

~~~
anotherbrownguy
But why buy it over a comparatively cheap single board computer?

~~~
subway
It's pretty difficult to anonymously buy an SBC with cash.

------
eveningcoffee
The question is can you trust these devices?

