Alright, I know this isn’t the ULTIMATE build. There are plenty of systems that can do ‘more better’. But this one is going to be pretty cool! One quick thing to note before we get started, you don’t need an *ultimate* PC to smesh, Spacemesh is purposely designed to allow smeshing on almost any modern-ish PC. So this post goes against a few of Spacemesh’s core goals: You should not need to buy hardware to smesh, and you should not need top of the line hardware to smesh.
But why not right? Plus I have some lofty goals for this. This machine will have three requirements:
It must be able to handle at least 66TiB of PoST data using both a 12H and 24H PoET Cycle Gap on different phases.
It must be able to generate PoST data while smeshing
It must be able to use 1 core to run a PoET server and not have much of a hit to performance.
I have some specific hardware in mind. But before you read on, there are some links for the parts I purchased in the article below. These are affiliate links and I do earn a commission if you buy something. This is an easy, free, and unobtrusive way (no ads!) to support what I do and help me continue to write articles like this. I do not have any sponsors, and purchased everything below after performing my own research.
CPU
AMD is the obvious choice here. It is just plain better at RandomX which is what is required for the first stage of proofing. I’m going to be running 15 HDD, so lots of cores will be helpful as well to ensure the HDDs do not become a bottleneck. I thought about building an EPYC system, but I wanted something that used standard hardware. Lots of cores and decent clock speeds were at the top of my list for must-haves, so I settled on the AMD Ryzen 9 7950X. With 16 cores and clock speeds up to 5.7Ghz it will get the job done. It can can easily handle my expected PoST Data size. As for running a PoET, benchmakrs show this will get around 69K leaves which is not even close to a 14900K, but will be a solid option, especially as a back up.
Memory
Originally I was thinking about going with 2x32GB DDR5 for a total of 64GB, but with 20 nodes + postcli + a poet running, it made sense to go with more. I ended up with 128GB of Corsair Vengeance DDR5 5200MHz CL40 RAM. RAM probably matters the least out of everything, so my plan was to go with whatever was cheap.
When running a node, you can expect slightly more than 4GB of usage while proofing. 20 nodes x 4GiB is 80GiB of RAM. So 128GB was necessary but did add a bit of cost to the build.
Motherboard
I’ll admit I did not do a ton of research on motherboards. There was a good deal on the ASUS Prime X670-P board, so I grabbed that. The reviews were decent and it had 3 full length PCIe slots. I knew for sure I needed at least 2 (one for the 4090 and one for the HBA). So three gives me an extra one in case I want to throw something extra in there. I don’t plan to overclock, so this is probably over kill.
Power Supply
Since I will be running a packed system, 1000W was my minimum. I also wanted a 12VHPWR cable for the 4090. The Thermaltake Toughpower GF3 was a solid choice. Great reviews, and has all the features I need. The GPU will draw about 420W, CPU is about 170W, all the hard drives and other peripherals gives me plenty of head room at 1000W. You can tune down the 4090 and run low 300W but I want to allow for worst case scenario.
GPU
I had to go with a 4090. Even with a 4090 the plot speed is only going to be about 7MB/s. My almost any standard that is slow. But it’s basically the best you can do. I decided to grab the ZOTAC Gaming GeForce RTX 4090. The price wasn’t too bad (considering the current times). And I plan to have this plotting for the next year nearly non-stop. Amazon seems to have them in stock most of the time. I’ve been plotting with one of these since genesis and it’s been rock solid.
File System Storage
For file system storage I definitely wanted an SSD. The 2.5” ones are so cheap these days you might as well grab one. An NVME would be a great option as well. Although I don’t recommend these for sustained reads or writes, the Crucial P3 Gen3 NVMEs are dirt cheap and great for file systems.
Case
I already had the case from my last build with dual Xeons. I have a full height rack that I got a while back and wanted something I could rack mount. This rack is seriously awesome and saves me so much space. The Rosewill 4U Server Chassis has space for 15 HDDs and can fit nearly any motherboard size, including ATX-E. There are tons of fans to keep the drives cool, and will work with a wide range of parts. There is not really a space for watercooling though, so if you plan to overclock you will want to do something like the Meshify 2 XL, that can also hold a TON of drives.
Drives
I’m going to run a bunch of various drives, but I’ve been buying these Renewed Dell Exos X18 18TB SATA 6Gb/s 7200RPM drives on Amazon for dual phase smeshing. They are a bit over priced but you can’t beat Amazon customer service if something goes wrong. Plus you get a 2 year warranty. The price does go up and down, so if it’s over $179.99 you may want to wait or try and find another
Extras
Since I’m running 15 HDDs I needed an HBA that could handle that. The LSI 9300-16i was a perfect match. With its 12Gb/s SAS controller it had plenty of bandwidth for the 15 HDDs. It’s a bit pricey, but the case I had did not have a back plane so this was a requirement. Grab it here: LSI 9300-16i 16-Port
Conclusion
And that’s really it. There are a ton of ways to build a system but the idea here is:
CPU with lots of cores that does well with RandomX
Fast HDDs with 16/18TB of space to dual phase smesh
Best possible GPU for plotting (you could remove this from your host and do a dedicated plotter)
Lots of ram to handle lots of nodes
Sufficient power supply to handle HDDs, CPU, GPU
Fast file system storage (NVME or SSD) to ensure node is performant. This will help you sync faster.
Hi Alex, could please tell if there is kind of trick in order to run the HBA.
I've purchased the exact same HBA and MB and already spend days trying to run this HBA, but with no luck.
I will be really thankful if you could give me some directions.
Thank you for this article.
I don't know how to run multiple drives with Spacemesh. I currently have three drives, one drive on its each computer. I am running the Spacemesh GUI program in Windows.
Could you point me in the right direction? I see you have a ton of videos.
1. Spacemesh in Windows will only allow you to run one drive, is that correct?
2. Do I need to get off of Windows in order to do a multiple drive system?
3. Are the videos of you detailing how to run Linux and Proxmox what it takes to run a setup like you have listed above? I am not familiar with Linux so that would be a little more complicated for me.
I am so confused as where to begin.
I am looking to run just a few hard drives I have that are 6tb and 8tb each. Like 4 total drives.