Setting up your water cooling system can be confusing at first. What components should you buy? Are there things you should avoid? Where do you even start?
With justinjja's tremendous help, we crafted this guide to make your life easier! (thanks justinjja!) This is a list of recommended water cooling components that you can reference before installing your water cooling system on your FPGA board.
First, you need a water block. Currently, the only water blocks available are made by TUL. However Dimastech is currently testing their water blocks and estimated to be available in December.
Water block by 🔰 TUL
This block is made from copper & anodized aluminum and covers the entire PCB. It is compatible with most water cooling kits on the market and is available at FPGA Guide Shop. You can use this with VCU1525 - Active/Passive and BCU1525.
Water block by DimasTech
The DimasTech water block is made from only copper, but it is also compatible with VCU1525 - Active/Passive and BCU1525 (just like the TUL water block). These however have not been produced and are currently in testing.
FPGA.guide will get a test unit soon though, so stay tuned!
Next, you need to pump fluid through the loop. When purchasing pumps, keep a few things in mind :
- Flow rate or GPM (gallons per minute) is the number of gallons per minute that the pump can move without restriction. Usually, the actual flow rate will be considerably lower than the rating when going through all parts of the loop.
- Head pressure measures how high (in feet or meters) you can pump water up in open air before the flow rate stops.
- Voltage & current is just what it sounds like. Different pumps will have different specs. Most pumps run on 12 VDC, some on 24 VDC, and others on 120/240 VAC.
We recommend pumps with higher head pressure, especially if you plan to run multiple FPGA's in series, since your loop will be very restrictive.
You can run your pumps in two ways: a) in series and b) in parallel.
Running two pumps in series will double the head pressure, but does not improve the maximum flow rate. On the other hand, running two pumps in parallel doubles the maximum flow rate, but doesn't improve the head pressure.
If a water cool pump stops working, it will almost always fail to "open." This means having two pumps in series gives you redundancy (i.e. if one pump goes offline, the remaining pump can kick on to handle the peak flow of the system). Meanwhile, setting up two pumps in parallel doesn't give you redundancy:
The issues with parallel can be avoided with a one-way check valve.
Below are justinjja's recommended pumps:
These have a 3.8 GPM - 15FT head pressure and runs on 12V. The estimate price is around $70. Overall, they are great pumps, with an above-average head pressure.
- one MCP50X if you are running from one to three FPGAs,
- two MCP50X in series if you are running from four to eight FPGAs.
These are very similar to the MCP50X, but they:
- get hotter,
- need a heatsink,
- have slightly lower head pressure,
- are usually more expensive.
They cost from $70 to $110, depending on the model. You can get them here.
They have a 5.5GPM - 13Ft head pressure and run on 12V or 24V (24V is not required for full speed). They are also good pumps with higher maximum flow, but lower head pressure than the MCP50x.
There are a few models of them—the cheapest one is the MCP655B, which does not offer speed adjustment and is fixed at ~90%. There are also models with a switch on the pack to set the speed, and other models can be speed-controlled via a computer's PWM fan header. They cost around $70-$120.
A radiator moves the heat from the water to the air. Since there are a ton of radiator models, make sure to avoid radiators with an aluminum core. Instead, find a radiator that has a copper or brass core because it touches water (aluminum fins are fine).
Radiators are typically designed for 120mm or 140mm fans. One 240 radiator is 120mm x 240mm, designed for two 120mm fans. Radiator sizes usually come in multiples of 120mm (120mm, 240mm, 360mm, 480mm) or multiples of 140mm (140mm, 280mm, 420mm, 560mm). There are also a few 1080 radiators, which are 360mm x 360mm and support nine 120mm fans.
Radiators come in a range of thicknesses. Thinner radiators work better for slower, quieter fans. Thicker radiators can dissipate more heat, but need stronger, louder fans.
- Fins per inch (FPI)
FPI works the same way as thickness: the more FPI, the more heat it can dissipate, but you also need stronger and louder fans for higher FPI radiators:
We want around 350W of cooling for VU9P-based FPGAs (such as the VCU1525, the BCU1525, or the BTU9P). The CPV-13 will need 500W of cooling. If you want your system to be quiet, aim for at least 120mm worth of radiator per 175W .
For example, if you have three BCU1525's and one CPV-13, you need 1550W of cooling, or three thin 360mm radiators (Swiftech MCR320 Quiet Power Series Triple 120mm - Black).
If you are going with loud fans and thicker (or higher) FPI radiators, you can get away with close to double that power, or around 300W. That means, for the same 1550W of cooling, you need two thick 360mm radiators. It won't hurt to add more radiators and drop your temps by a few extra degrees, just to be sure.
Tips: Don't forget to clean your radiator before using it.
Barbs connect your parts to your tubing. All computer water cooling components use the same thread for barbs: G1/4 computer water cooling typically uses either 1/2-inch tubing or 3/8-inch tubing. The difference between 1/2-inch and 3/8-inch is minimal. We recommend you go with the 1/2-inch since it isn't any more expensive.
Each part in the loop needs two barbs, most parts don't include them.
For our example loop, with
- four FPGAs,
- two pumps,
- three radiators,
- one reservoir,
we need 20 barbs. Any G1/4 1/2in barb should do fine.
Tubes connect all the different parts of your water cooling system. Typical tubing is flexible and can be cut with scissors or a razor blade. You want to focus on the inside diameter (ID) of your tubing and match that to your barbs' size.
There are lots of options for tubing as well, below are 2 good options:
- If your loop is indoors and doesn't get any sunlight, clear tubing is fine. PrimoFlex LRT is recommended, you can get it on Amazon in 10ft packs.
- If your loop is exposed to sunlight, you should consider something that doesn't let light through (prevents growth). Tygon R3400 is a good option.
You can get the tubing here.
These prevents your hose from coming off your barb and spilling water everywhere. Get them on Amazon, or at your local auto part store.
A reservoir makes filling and draining your loop easier. The size of your reservoir is has nothing to do with your temperatures. Pick one you think looks good and isn't too expensive. Like this one below.
Fans can cool both the radiator and the FPGA. But which fan should you buy?
The parameter you're looking for are flow rate (CFM or cubic feet per minute) and static pressure (mmH2O or inH2O). Higher flow rate and higher static pressure mean better cooling for your radiator and your board. You just have to get the most bang for your buck. More about this here.
Lastly, you will need fluid to complete your water cooling system. DO NOT use colored coolants as we have mentioned in our previous post. Instead, we recommend using either clear coolants or combine the coolant with distilled water.
When using distilled water, you might want to add a small amount of treatment to the water to prevent stuff from growing in it. The purpose of the treatment is to protect against corrosion and microbial.
Assembly and Testing
After purchasing all your components, start by planning out your loop; where everything is going to go.
A few things to note:
- Try not to put any liquid tubing connections too close to each other, as this can create tight bends between hoses. If this is unavoidable, you can buy plastic/metal 90/45 degree parts.
- Your pump should go right after/below your radiator. This makes filling your loop with water a lot easier. In general it is better for your reservoir to be at a higher point in your loop, but not required. You can also add a T-splitter and a valve at the bottom of your loop to make draining easy.
- Install your barbs tightly but not too tight. We recommend you screw them on as tight as you can by hand, then get them a little bit tighter with a small wrench. Your barbs are usually metal, but the water block they screw into are often plastic/acrylic/acetal any of which could crack if you way over tighten them.
- Tighten your hose clamps depending on your barb's material. If you are working with a metal barb, you can go very tight with hose clams. But if you are tightening down on plastic, don't over tighten or you will crack the barb.
We recommend to do tubing last, since it gets in the way more than anything else. Cut each piece of tubing to the right length and install them.
Fill your loop with your chosen coolant, pour it in the reservoir and let it flow into everything. Water usually won't be able to fill the whole loop on its own, power up your pump separate from your computer. So it can push out all the air, keep topping off the reservoir until the air bubbles are gone.
Check each fitting/connection for leaks. If you find one, it is usually best to take that part apart to fix the leak properly. It may be tempting to try to tighten it in the loop, but this rarely works.
A water leak has almost no chance of damaging your components when they are powered OFF. This is why running the pump separate from the rest of your computer is important. If something does get wet, let it dry for longer than you think it needs, often taking whatever got wet apart will help in drying. Rubbing alcohol can also be used to help get water out of something that got wet.
Lastly, let your water loop run for a while before powering it on (we recommend 24 hours).
As always, thank you so much for reading.
If you have any feedback, feel free to email us at firstname.lastname@example.org.
Happy mining folks!
FPGA.guide is a community-first guide to FPGA Crypto Mining. Check out https://fpga.guide/ to see the latest news and downloads in FPGA Mining!