Best farming hardware

I have been using this image >
and it has been performing well. Tip 1. if you use this image more than once you have to create a new MAC address on the device or you start seeing network issues :slight_smile:

rm /etc/smsc
reboot and new MAC is generated

Tip 2. From a SAFE side I have had more sucess building MaidSafe using Clang 3.5 on these devices - I would suggest using this compiler.

Off the top of my head these are the first things that I can think of - any issues shout I can definitely help here … honest gov :wink:

They are very solid machines - if you saw the tweet yesterday you will noticed they are breeding here…

1 Like

I live in Kazakhstan , Almaty

1 Like

My apologies for mispelling, and thank you for forwarding my Odroids! :slight_smile:

Hi @Ross, I’m finally attempting this, using the official Odroid Ubuntu 14.04 LTS image and have some questions - note I am almost completely unfamiliar with build environments on Linux so largely typing in instructions and crossing my fingers:

  • For Clang am I right to be following instructions Hacking with Clang llvm abi and llvm libc and doing so in full even though these refer to earlier Ubuntu versions? I’m asking because if theres stuff now included in Ubuntu 14.04 LTS I don’t want to mess it up by redoing it manually.
  • I replaced all refs to 3.4 in the apt-get line to 3.5 to pick up clang-3.5 which I assume is correct? If so, do the instructions need updating?
  • Is there somewhere recommended I should be installing libc++ (I’m wondering if the “svn … libc++” step should be executed somewhere special)?
  • I’m confused that the “svn … libc++” step appears twice, once as an essential pre-requisite and again for building libc++abi, but assume this is to ensure it isn’t missed by someone ignoring the pre-requisite. Not sure if that makes sense, but it makes me uneasy - not sure I’m interpretting the instructions correctly!

I have already made a start on these steps, but ignored the very first lines:

sudo wget -O -|sudo apt-key add -
vim /etc/apt/sources.list (add in the repository links for your distribution from the llvm page above)

…to see if they were necessary (that’s me sorry ;-)). It all seems happy without them, and if I repeat the instruction it reports everything is at its latest version, so:

  • Is adding the llvm repository really necessary with Ubuntu 14.04 LTS or any chance this is already catered for?

You are correct in 14.04 life got a lot easier to install Clang >

sudo apt-get update
sudo apt-get install clang-3.5

you now have clang installed :smile:

Follow the normal MaidSafe build instructions and when you get to

cmake -H<path to MaidSafe root> -Bbuild_maidsafe -DCMAKE_BUILD_TYPE=Debug


to make it

cmake -H<path to MaidSafe root> -Bbuild_maidsafe -DCMAKE_BUILD_TYPE=Debug  -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang

You can now go to the build folder and make Local Network Controller, Vault, etc

make local_network_controller

Note the above also builds vault.

Hope this helps.



This is much more in line with what I am familiar with. I have a gaming rig now that just mostly mines (actually folds for Standford), but that just uses GPU and a tad of CPU. All my HDD space is open. I dont see why mining/folding and farming would be mutually exclusive… they should not be. Therefore I suspect my computer could take on that role as well.
CPU: AMD 8350 8 core
RAM: 8GB expandable to 32GB
300GB Raptor
3 * 1TB WD Red
1 800GB WD Green
NAS with 2 2GB WD Red in mirror

Other minor drives, of which I can bring a total of 7 online at any one time (plus NAS)
2 * 160GB HDD
1 500GB HDD

Others thoughts:
While waiting on a NAS app to appear, I suppose I could just map a NAS drive to main PC and then indicate that as a local drive. Besides mirrored drives the NAS has its own dedicated UPS.

I am excited to be a part of such a engaging experiment.

1 Like

It may (but it may not, it depends) refuse to use a file share. You can try iSCSI instead of file share.

But if your system (CPU) is regularly maxed out, it may be slow to respond so who knows how it’s going to rank on the network in terms of fulfilling requests. You can lower the maximum CPU limit to 70% or something like that.

Hear hear! Many folks have been discussing storage space when talking about hardware. I’m not so certain that will be the most relevant factor either-- I think warren’s got it quite right. From my reading of the docs, you earn Safecoin for delivering data. So, the best mining rig would be the contraption (and I think he got it right by describing things that don’t really exist yet and I got it right using the word “contraption”) that would allow you to deliver the most data to the most people with the least latency.

Mesh cell phones definitley sound like winners under this model.

Does safecoin take into account the relative scarcity of data in a region? Say, for example inside of a national firewall or a war zone? Do rewards go up for delivering data to these hard to service areas?

On the other hand, assuming that we can piggyback effectively, do prices go down in places where 1gbps fiber is commonplace?

If you really want to prepare for safecoin, I Think that the best strategy is instead to network yourself as widely as possible. Look into exotic solutions, even. Have multiple layers of redundancy and multiple distribution techniques. Then, the hard drives matter :).

(and if I am wrong, please tell me so-- thsi is an exciting project and I certainly want to have a good grasp on this tech when it hits the worlld with its tidal wave of brilliance.


I have just bought an Odroid U3 and a XU. I will add two 2tb hard drives. I am completely new to this and you seem like the guy to ask. Can you tell me which steps I should take to set up my Odroids and hard drives to get them up and running for the start of Safemaid farming. Which are the steps and which guides or tutorials needs to be followed?
Thanks in advance.

1 Like

Do tell! When does farming start, anyway?


I added a FAQ that should help you get MaidSafe Built on Odroid and you’ll get great support on the Odroid forum too.

I suggest: 1) Get Ubuntu going, 2) Get a drive working (use the Odroid forum if you need help), then 3) Get the MaidSafe code built (using the FAQ link above).

1 Like

No fixed date, but hopefully before end of the year - see @janitor’s post above for more.

Big thanks, that’s a nice checklist. This will be a fun project and a challenge for the fall and winter besides the studies.

Been thinking about hardware and bandwidth. Bandwidth seems to me like a big issue for successfull farming, What bandwidth will be enough. Right now I have 100/10 Mbit/s but will be able to level up to 100/100 Mbit/s at most. But that speed is only just over 12MB/s, any hard drive and system will make that speed many times over.

Wonder how many hard drives Odroid U3 and XU will be able to serve and what load for farming each hard drive gets compared to it’s size. Maybe it is questions that the future will tell.

If your 100/10 Mbps network is not in data center but at home, then you probably won’t get the theoretical value.
Also you made a mistake with 12 MB/s. As a farmer you’re uploading (they’re downloading), so it’s 1.2 MB from the SAFE network viewpoint.
For that you need just one Odroid U3. That may be enough even for 12 MB/s.

Also seems to me that the most important factor is going to be your ability to upload data to the network. No point providing 40tb of storage if you only have a 1Mbps upload speed…


Intuitively I think it seems that big storage means big upload bandwidth, but I’m not sure what the reality will be. How often will any chunk on a particular drive be accessed? We don’t know. Think about your own hard drive - how much of that data just sits there unread? How much is read/written each day? Obviously it depends on what you do and the kind of data, which makes it hard to envisage what a typical vault might experience. And of course the rank system means that this will vary a lot according to how machine vault configuration and performance (storage, response time, and availability) translates into rank.

One app I’ve been thinking of writing, because it interests me and is simple, is a farming stats app (so I finally posted it: SAFEapp: Farming Performance Tables). App users would put any info in it they want to share about their hardware setup, type of connection, system availability, current rank, farm rate, and that data would be included in a shared database as a sortable/filterable table. I think it would be very popular! Although I’m guessing MaidSafe might have this kind of thing covered.

The reason it is so hard to estimate what bandwidth will be required is because we don’t know where the sweet spots will be. For instance, data that is in high demand will be cached local to the demand. So data that goes viral might get lots of GETS for a while, and then diminish. Data that is accessed regularly but doesn’t tend to hang around in a cache long enough to shortcut many GETS will probably turn out more lucrative over the long term.

I bet MaidSafe have some estimates - or working ranges - but even they don’t know. Its the same for de-duplication. I wouldn’t bet on anything except availability, storage size right now and power consumption right now. Others are thinking response time and bandwidth but I’m not convinced. I’m going to try a couple of low power Odroid-U3 with a big disk on each, sitting on a cable broadband connection (ADSL unfortunately :-()) as my main setup, plus see what happens with laptop (and if possible phone) on very intermittent connections. The data will be very interesting.


I meant of course the upgrade to 100/100 mbit/s equals approximately to 12 mb/s upstream. But thanks anyway. :slight_smile:

I see… You’re right!

if I use macbook pro to farm what is the difference and disadvantages? I can use external storage disk via usb port.