Blog

Welcome to the Node Lab!

Keith Millette, Node Engineer, gives an inside look into the xx network Node Lab.

Posted by: Keith Millette
Posted on: March 25, 2020

This is cross posted from the xx network BetaNet forum! See it here to join the community and discussion.


Greetings everyone. My name is Keith Millette. If you’ve spent time on the xx network Discord channel you may know me as Lord Vetinari. A few weeks ago I joined the xx network team to set up a node lab in South Korea. The node lab will serve as an empirical environment for the xx network teams to test code,  software delivery methods, and gather useful metrics. The goals of the lab are to finalize the deployment strategy and to recommend tried and tested hardware to those of you who submitted applications to be node runners. xx network aims to set node runners up for success from the very start.

Much time has passed since the initial specs were published. In the planning stages of the GPU nodes, Benjamin Wenger calculated the BetaNet node requirements and published them in early 2018. The specs suggested an AMD Ryzen 2700x GPU, Nvidia RTX 2070 GPU, 16 GB RAM, ASRock AB350 Pro4 and 1TB of storage which would cost about $1600. After discussing this configuration with the developers of cMix and xxBFT, all agreed that the lab should house nodes built using budget to mid-range components. We aim to determine the minimum requirements and the most cost effective configurations. We intend to prove the xx network is not like other blockchains. Expensive and overpowered nodes are not a requirement. 

Here’s a breakdown of the hardware we’ve selected to use in the lab: 

  • I’m using the AMD Ryzen 3700x rather than the 2700x. The disruption to the global supply chain and reduced price made this the best option. I chose to include the Intel i7-9700K processor because they do meet the specs and we want people who have Intel CPUs to be able to use them. 

  • I’m using some ATX and mATX form factor motherboards from multiple manufacturers. I’m using four different chipsets with the AMD CPUs, the A320, B350, B450, and X370. And with the Intel CPUs, the Z370 and B360 chipsets. This allows us to recommend the widest range of motherboards to meet the requirements of the network and also the budget of the node runners.

  • The GPUs are still limited to the RTX family of Nvidia GPUs due to the fact the Nvida Turing architecture has 32 bit multiplication units in its shaders which massively improve the performance of precomputation. In the lab I chose to use the RTX 2070 from many manufacturers so as to meet the computational requirements and also node runners’ budget. I also selected an RTX 2060 and GTX 1660 ti to test the lower boundary. 

  • As for memory and storage capacity both cMix and the blockchain have different requirements and to determine the appropriate amount we settled on 8-32 GB of RAM using 4 or 8 GB modules. During testing I will be using 512GB Samsung EVO SDDs but we will ultimately recommend each node to use an enterprise level SSD due to write endurance. 

  • In all there will be 10 nodes used for the in-house testing.

In the end, we expect to be able to recommend configurations for an individual node that will cost less than previously projected.

I, and the rest of the xx network team, look forward to working with the community on setting up and deploying the xx network BetaNet. I’ll be detailing what you will and won’t need as far as hardware and network requirements so as to bring BetaNet to fruition.

Join the discussion on the xx network BetaNet forum!



Eddy March 26, 2020

I hope these are more basic requirements than those originally requested, however I am prepared

Keith March 26, 2020

Fair enough. The specs of the node will only make a difference if the node cannot keep up with the workload or network. The lab I’m hosting will assist to determine the minimum requirements.

I think many will be surprised that the hardware requirements are not what most are accustomed to seeing in blockchain.

Strob March 26, 2020

Ok thanks. I just wanted to know if it makes any difference to choose more powerfull hardware or not.

Keith March 26, 2020

I’m going to refer you to another source for the time being.

That’s out of the scope of this thread.

Strob March 26, 2020

Ok so there is no scoring system for nodes? How will the reward system work?

Keith March 26, 2020

Apologies for the wrong page, I replied from my phone and thought it was page 3. Teams are selected at random.

Strob March 26, 2020

You mean p.5:
"Teams
Unlike other decentralized protocols, in Elixxir,
groups of nodes are unmanipulatably
organized into small ephemeral Teams. Elixxir
teams are temporary and only exist to mix a
single batch of messages. The teams are
formed in an unmaipulatable manner by
Praxxis’ xx consensus. Teams independently
agree to process all messages beforehand,
then mix and decrypt them, delivering the
1
results to the recipients and payments to Praxxis’ xx consensus. Following
completion, the team disbands and member nodes become available to be placed
on a new random team.
"

That doesn’t realy answer my questions though…?

Keith March 26, 2020

Have a look at the Architecture Brief. (https://elixxir.io/elixxir-architecture-brief-v1.0.pdf) On page 3, the section titled “Teams”.

Strob March 26, 2020

Hi! Will there be some form of competition between the nodes? A scoring system? Or will you just count uptime? Will a node with a faster hardware and lower latency have any advantages over another node?

Keith March 26, 2020

For the time being the nodes are currently in the cases you see above. That is an actual picture of node01 through node04. I do have 2 other style cases because some of the graphics cards are just enormous.

As far as cooling goes, heat isn’t much of an issue. The nodes don’t need to be workhorses. Despite popular belief multi-GPU mining style rigs are not required.

pk March 26, 2020

Thanks for the post and sharing the information – it is really useful for our planning purposes.

What case are you using?
Are you building any servers w/ cooling for MOBO & GPU?
Keen to get started on building, testing, and participating…

lonewolf March 25, 2020

Thanks for the update Keith, glad to see you officially onboard the xx network team. From your great contribution to the Discord channel, I’m confident you’ll do a terrific testing job in the Node Lab.

fiftyseven March 25, 2020

That sounds interesting… it’d certainly be easier in the early days to run the thing from home. The line is dedicated so I’d have the whole 500Mbps… in 3 months or so it should go back up to a gig so if beta can be slower that helps me!

network requirements go back to 500Mbps

One of the upgrades we made as a result of what we learned from AlphaNet was a partial rewrite of how the nodes communicate and we moved to a streaming model which allows for comms and computation to both occur on a batch of data simultaneously. Using the node lab, we will test how this impacts required bandwidth, but I am hopeful it will allow us to reduce the network requirements.

Keith March 25, 2020

Thanks for joining me here. There’s no concrete date set yet. However, the lab will speed up the in-house testing.

Great! We’re very interested to see how budget cards compare to more expensive cards. We have a feeling most GPUs are created equally when it comes to cMix.

Bandwidth rate is going to be tested but no promises. I didn’t mention it in the post but on my to-do list is to build and document how to get a node into a 1U rack-mount chassis specifically for node runners who decide to co-locate.

Eddy March 25, 2020

I think that one way to help and support the network a greater number of people we will have to upgrade the equipment to cheaper ones, make the network safe has to be suitable for all users in need of powerful equipment and very high price

fiftyseven March 25, 2020

Also ready and waiting for instruction. Hoping that network requirements go back to 500Mbps as my provider has had to limit things with people streaming so much with the Covid epidemic… or I’m going to have to find a way to colocate a machine whilst locked down!

Andrey March 25, 2020

I’m also ready to start betanet, it remains only to choose a GPU model, since RTX has a large price range.

Eddy March 25, 2020

Perfect, I was already looking forward to hearing something about beta testing, when we start? I’m ready!

xx network does not distribute, offer, solicit sales of, or sell any xx coins in any state or jurisdiction in which such a distribution, offer, solicitation or sale would be unlawful prior to registration or qualification under the securities laws of any such state or jurisdiction.

Google Play and the Google Play logo are trademarks of Google LLC.