I’ve written before about building the Cheapest Solidworks Workstation. Things have changed a lot since then. Firstly, my budget has increased slightly. Secondly, my knowledge has increased greatly. In that post I claimed that modern Intel i5 and AMD FX chips could handle Solidworks. They will, but not in the best way.
In another post, I describe some things I learned about error-checking components and the “big picture” concept behind true workstations. In short, if you’re serious about using Solidworks (or some other machine-crushing software), you need a true workstation. The good news is that it can be had for a reasonable amount of money. We’re talking $300-$600 for something that won’t disappoint.
The bad news is that you’re going to have to shop, and you may have to get your hands dirty. I’m going to share with you the “Workstation Algorithm”, wherein we try to get the best performing, true Workstation for the least cost (not including the cost of your time). If you’re like me, you spend a lot of time looking before you leap. If you’re REALLY like me, you look and look and finally choose not to leap at all.
Let’s leap, though. I’m serious about building my own rig and doing CAD work freelance. I’m even serious about helping other people get CAD rigs. CAD is the future. 3D printing is here, and it’s getting ever better and ever cheaper. I hope my kids will be designing their own toys. It’s totally possible.
Second, you’re going to need to understand what we’re looking for:
Processors/Cooling System (Notice the plurality? You need more than one.)
Dual Socket Motherboard
I’ll leave the monitor/keyboard/mouse situation up to you. You know what you like, and you can find used monitors for reasonable prices at several places online.
Now, there are multiple approaches to this endeavor. We’re going to take the hard road first, because we’re math people and math people always do things the hard way first and then learn the shortcuts that make them say to themselves, “WHY DID I JUST SUFFER THROUGH ALL OF THAT HARD WORK WHEN I COULD HAVE JUST _______?” (Everyone does that, right?)
Approach 1: Build your workstation from piece parts!
Alright, I know that some of you are scrolling right past this section. You might just want the easy way out, or you might have a fear of tinkering with computers. No matter how you go about this, to get the best workstation for the lowest price, you’re going to have to open a computer case and replace some things. Later on, we’ll buy an existing workstation and upgrade it to “modern standards of performance.” Now, if you can’t handle that, feel free to bail on this whole project. It’s cool. Just go. You don’t want it bad enough.
1. Processors (YES, TWO OR MORE PROCESSORS)
If you read the other posts about this project, you know that you need processors that know what to do with error-checking RAM. In other words, you know that you need actual workstation/server processors. Intel makes the Xeon line, and AMD makes the Opteron line. I’ve already abandoned AMD, because I found it difficult to find Operton processors with the performance I needed at the price I wanted.
So, in this post we’re basically only going to shop for Xeon processors. First, open up http://www.cpubenchmark.net/multi_cpu.html. You’re looking at a list of benchmarked systems running multiple processors. At the top of the list, you’ll see the latest and greatest processors smashing through benchmarks with ratings somewhere around 30,000. You can’t afford these processors. On the right side of the list you’ll notice the prices. The price shown is the total for two processors.
As a starting point, the workstation I use at work ranks around 8,000 on the benchmark list. It runs Solidworks 2014 while I have tons of other stuff going on. I max out all of the cores when I render, and rendering takes a while. So, start your search for a set of processors around the 8,000 range. You’ll quickly notice that even some of these are expensive as hell. Don’t worry. These processors are typically 3-5 years old, and can be found used for reasonable prices. However, YOU ARE GOING TO HAVE TO DO SOME LEG WORK to find out what can be had for what price.
But, because I’m a pretty cool guy, who doesn’t afraid of anythin, I’ll do a little bit of the work for you. The table below shows an ESTIMATED cost for 2ea of the processor described, the benchmark listed at cpubenchmark.net, and the socket. (All values are as of 5/31/15, and are not guaranteed to be accurate.) The socket is important because it will determine what motherboard you can use. Please be aware: You need a workstation motherboard, not a server motherboard. This is important when you go shopping for motherboards, which is coming up next. Just to jump ahead some: The X7350 at the top of the list uses Socket 604. This is an old, old processor, and it supports old, old technology. The RAM you need will be relatively slow, the motherboard will be hard to find, etc. It looks like an amazing deal, but it’s likely to be more trouble than its worth.
You will need a cooling system for these processors! Browse your favorite computer retailer’s website for Heatsink/fan combinations that are compatible with the processor’s socket. Also, keep in mind form-factor. Just for example, an LGA1366 heatsink with fan costs about $30.
Processor prices are round-about, and do not include heat sinks/cooling systems.
So, you did some leg work and found a processor that is going to kick Solidworks in the pants. You’re far from done. The next step is to find a workstation motherboard that will actually take that processor. As mentioned before the processor table, you need to take the Socket into account. The sockets in the table in order of oldest to newest: 604, LGA771, LGA1366, LGA2011 (v1-v3). Now, you need to make a decision. It’s a tough one. This motherboard is going to determine the overall performance of your entire system.
Older technology is just slower. Moore’s law implies that processing power improves exponentially. Topping out your budget will help ensure that the system you build is fortified against future performance demands. The list of processors clearly shows newer technology that is slower than older technology. Don’t let that fool you. The newer, slower tech is low-end compared to the older, faster tech. The main difference is that you could upgrade your Socket 2011 CPU later on to something that will make your top-end LGA1366 feel slow. You wouldn’t be building a workstation if you weren’t planning on making money. So, plan ahead. It may be expensive and “slow” (relative to its benchmark neighbors), but in a year when you need more power, you could drop another $200-$400 and possibly double your power on the same rig.
The motherboard is also going to determine how much RAM you can cram in, how many video cards you can use, and how big those cards can be. The processor also plays a part in the RAM, as the RAM’s speed will be limited by the processor’s bus speed. Furthermore, DDR ram has gone through four generations of improvements. Your processor/motherboard combination is going to determine which generation can you use.
So, let’s get on to shopping for motherboards. Here’s what to search for: “Dual Socket XXXXXX Workstation Motherboard”. Fill in “XXXXXX” with whatever socket your processor is. Oh, hell, I’ll just do it for you:
Socket LGA2011 (be careful here, LGA2011 went through 3 versions, and the -0, -1 and v3 processors require -0, -1, and v3 sockets, respectively. Check your processor before committing!)
You’re going to be shocked by the cost of motherboards. This is where you step back and say, “Well, maybe older tech is okay, because it’s still pretty fast and relatively cheap!” And, you’re right to say that. LGA1366 motherboards can be had for about $90. If you chose the cheapest LGA1366 processors (with two $30 heat sinks), your total thus far would be about $190 and your benchmark rating could be about 9,000. For comparison, a brand new AMD FX8350 costs about $165 alone (no motherboard), and has a benchmark rating of 8,982 at the time of this writing. We’re winning!
Alright, now for the kicker. ECC Memory isn’t cheap. It can also be kind-of hard to find. You need to know the maximum bus speed that your chosen processor can handle. You may have to google and dig for it. You also need to know the pin count of the slots on your motherboard. Since you’re support two processors, each one has a set of memory slots. That implies that you need to supply memory in pairs, not just one big single stick.
You’ll be happy to know that it gets more complicated. Some memory is buffered, and some is not buffered. Some motherboards can take either. You really only need buffered memory if you’re planning to use a ridiculous amount. For example, some motherboard can handle 24GB of un-buffered memory on its own. BUT! If you use buffered memory, the motherboard could handle 96GB OF MEMORY. Imagine needing that. You won’t. Don’t think too hard about it.
When you’re searching, many listings will say “Non-ECC”, which is both helpful and annoying as hell. It’s annoying, because if you wanted non-ECC memory, you would just search for “memory” instead of “ECC memory”. Anyway, just include “-Non-ECC” into the search and jog on. Oh, you’re too lazy? Argh! Jeez! Here, I’ll just do it for you again:
Remember, Solidworks is a memory hog. You want between 12-16GB as a baseline. That’s easily $120 worth of DDR3, which is almost as much as you’re spending on the processors and cooling. But, it’s super important to ensure that everything runs smoothly, and you don’t waste time waiting for Solidworks to …work. (Keeping tabs? We’re at roughly $400 for a workstation at this point. But, I said $300 in the title. Don’t worry, that comes later.)
So, why do you need ECC memory again? Because, you’re going to be using Solidworks, and you’re going to have clients. The clients want the job done fast, and they want it done right. You want to do some finite element analysis to make sure your parts don’t break and kill someone. So, you set up a really thorough simulation and set it to run. It runs… FOR HOURS. So, you go to sleep. A typical desktop processor/memory combination might come across some corrupt data and plow through it, crashing Solidworks, the simulation, maybe the entire computer. You lose everything. You have to restart the simulation, but will it fail again? ECC memory helps prevent that. It’s checking for corrupt data as the data is accessed. It can even correct corrupt data is some instances. You want this. This will ultimately save you time and money, in the long run. Just trust me.
You don’t need two graphics cards. But, you do need a workstation-quality graphics card. Remember the last paragraph the of the last section on ECC memory? That’s why. These cards aren’t meant for gaming, and they won’t do well on typical gaming benchmarks. They’re meant heaving data around at incredible rates. So, you’re already buying old technology, and the strategy here is the same. Recall the very first blog post about cheap workstations: Solidworks is CPU-heavy and GPU-light. (I use the word “light” very loosely.) The GPU will keep you moving through the complex geometry as its being continuously rendered, but the CPU is going to be doing the brunt of the work. My suggestion: Go to http://www.videocardbenchmark.net/mid_range_gpus.html and look for the Quadro FX or AMD Firepro series in the 600-800 benchmark range. What? Are you kidding me? You want me to list them for you? … Fine:
Surprisingly, they can be had very cheap. The reason is because lots of companies lease their workstations and servers. Then, when the lease is up, the stuff gets sold off to the highest bidder. The market is flooded with these components, so their price is super low. Honestly, you don’t need to over-think this aspect. $35 for a graphics card is a steal, no matter which one you choose.
Workstations use a lot of power. They use server CPUs, heavy-duty GPUs, heavy-duty ECC memory, and require a fair amount of cooling. You need a power supply that matches. To be safe, don’t get anything less than 800W. But, to be safer, dig up the specs on the motherboard you’ve chosen and get the power supply specified by the manufacturer. You can’t miss it. This can be made even easier, which we’ll explore a little bit later.
Alright. The ruse must end. You’re going to start searching for workstation cases, and you’re going to find that they are rather hard to find (but not impossible). This doesn’t make a lot of sense, because their innards are all over the place. So, why not just buy an old, off-lease workstation and use the knowledge gained in the previous sections to perform upgrades? This will be the easiest path to take. It’s also probably cheaper, as no one will have to be paid to remove all those components from various systems. But, what workstation to buy?
Modifying an off-lease Workstation
Well, you have only a few big suppliers of workstations. HP, Dell, and Lenovo. I’m biased toward HP, because that’s what I use at work. HP offered the Z600 and Z800 with dual sockets. I honestly don’t know what Dell and Lenovo offer, so I’m not going to pretend like I can point you in the right direction there. However, the strategy here is to find a workstation with lackluster specs, and verify that it can be upgraded to meet your needs. In the case of the Z600 and Z800, some of them only have one CPU, leaving one socket empty. In some other cases, the existing CPU is worth keeping, and then you’re only on the hook for one CPU and the ECC memory. The money saved can be spent upgrading the hard disk to SSD, which Solidworks will LOVE.
For example, I’m looking at an ebay listing for “HP Workstation Z800 1x Quad Core X5550 2.67GHz 8GB RAM 4x 250GB HDD FX1800 768MB”. Its starting bid is $200. The Xeon X5550 benchmarks at 5398/ The Quadro FX1800 benchmarks at 595. Added another X5550 and heat sink for about $50, and you’re now benchmarking at 9,233. Throw another 8GB of ram at the new processor for $50, and you’ve got your Solidworks rig for about $300, assuming no one bids the base unit up.
So, to get the absolute lowest price workstation that can REALLY handle Solidworks, you need to know some stuff. The information I’ve provided is really just a road map. There are lot of details you need to discover on your own in order to make this work. The people who skipped this paragraph will run off and make some uninformed decisions, and possibly end up with components that don’t work together. But, you won’t. You’re diligent, persistent, and determined. You’re going to take everything I said here with a grain of salt, and assume that I screwed up somewhere and told you something wrong. (Don’t feel guilty, I’m going to assume that as well.)
Go forth, build a workstation, do CAD.