Choosing a New GPU for Your CAD Workload on a Budget

When looking into a new GPU, there has to be a definite performance gain after you purchase it. The goal is to justify the expense of an upgraded GPU to both yourself and your manager. In this post, we will discuss a workflow that is characterized by using SOLIDWORKS  as your primary software. First, let’s go over some basic starting points and then let’s check out what NVIDIA’s recommended graphics solutions are for the software.


Let’s say your typical workflow is creating large assemblies (500 to 1000+ parts), and up to this point you've only been doing large rendering jobs every once in a while. You have a GPU with 2GB of memory, but you know it's not going to cut it for the next project, which requires generating, rendering and simulating even larger, more complex assemblies. Do you need something with at least 4 to 6GB of memory to manipulate larger projects that need higher resolution and require more detailed design? 



Everyone’s budget is different: An engineer's budget varies greatly and is usually determined by what type of work they do and who they work for.  What’s perfectly clear is that to justify the expense to your manager you will need to demonstrate that there will be a definite performance gain after you purchase and install a new GPU. For the purpose of this post, we will not spend more than $1,400. 

Of course, many engineers would like the latest NVIDIA board for the horsepower alone. But unless they really need the fancy graphics, animation, rendering and simulations, it's not really money well spent. In fact, some of the high-end graphics cards have actually resulted in less performance if used in more mundane CAD functions. 

Let’s go over some basics you’ll want to keep in mind.

Getting Started:

1. SOLIDWORKS Support – Video Card Testing. This is a great resource for eliminating some GPUs for your version of SOLIDWORKS.   

2. Share Your Score is another great resource to see how your current configuration can be improved. You can check out the brands, model numbers, graphics cards, CPUs and memory which give you a great starting point to figure out how to improve your computer’s performance on SOLIDWORKS.

3.) MCAD Forums: Eng-tips, TenLinks and SolidWorks forum are all great resources for any questions you might have. 

What SolidWorks functions and workflows are best improved by a better GPU?

Before we get to NVIDIA’s recommendations, let’s figure out if the work you are doing will actually see a performance boost from a better GPU. 

Large, complex models that are too complicated for your current workstation configuration can cause performance issues. Sometimes they are also caused by inefficient modeling techniques, which is important to keep in mind. One way to improve performance within SOLIDWORKS is to use AssemblyXpert. It provides an option for improved assembly performance to consider against your design intent. 

To run the AssemblyXpert: Click AssemblyXpert (Assembly toolbar) or Tools > AssemblyXpert. A dialog box will open and display icons indicating the status of the test and you will also see statistics about the components and mates in the assembly.

CFD and FEA Analysis: These use algorithms that depend on large amounts of floating point arithmetic and can be run in parallel. This can have a significant impact on your throughput, especially when working with large and complex assemblies. These demanding simulation tasks are using highly parallelizable algorithms that are chock full of floating-point arithmetic. 

RealView Mode: This rendering mode allows you to see high quality interactive models from your 3D viewport, which enables you to see the visual effects of different design iterations early in the product development process. With a professional GPU, SolidWorks RealView is instant, so designers and engineers don’t have to spend time producing offline renders.

Physically-Based Rendering (PBR):  Whether you are using rendering plug-ins that work alongside SOLIDWORKS, like Bunkspeed and Keyshot, or fully integrated real-time ray trace rendering tools such as PhotoView 360, higher fidelity images require more significant computational resources. 

When truly photorealistic visuals and animations are required, ray trace rendering comes into play with options like PhotoView 360, a fully integrated add-in for SOLIDWORKS, or Bunkspeed, a third-party tool that works alongside SOLIDWORKS. Raytraced rendering performance is especially boosted by a better GPU because it is so fundamentally different from OpenGL and DirectX raster-based rendering. 


Since these types of visualizations have generally required more computing resources, they’ve been somewhat out of range for the 3D mechanical CAD community, and more in tune with the entertainment and digital arts community. However, as more scalable computational resources become available on cloud platforms like Microsoft Azure, PBR will become easier and less expensive to perform. I’ll get to that in the next post. For now, let’s look at what NVIDIA currently recommends for upgrading GPUs. 

NVIDIA’s Recommended Graphics Solutions for SOLIDWORKS

Usage

Small medium assemblies with simple parts

Large assemblies with simple parts and small assemblies with complex parts

Large assemblies with complex parts and GPU accelerated rendering

Desktop Workstation

Quadro K2200

Quadro K4200

Quadro K5200

GPU Memory

4GB GDDR5

4GB DDR5

8GB DDR5

Replaces

Quadro K2100 or Quadro 2200

Quadro K4000 or Quadro 4000

Quadro K5000 or Quadro 5000

Mobile Workstations

Quadro K2100M or K2200M

Quadro K3100M or K4100M

Quadro K5100M

GPU Memory

2GB GDDR5

4GB GDDR5

8GB GDDR5

Replaces

Quadro K2000M or Quadro 2000M

Quadro K3000M or Quadro 3000M Quadro K4000M or Quadro 4000M

Quadro K5000M or Quadro 5010M

NVIDIA’s recommendations are a good place to start, but they are only one set of recommendations. Besides all of these technical factors that influence your decision to upgrade, there is the vital non-technical question:

How much does it cost?

Let’s take NVIDIA’s recommendation at face value and put a dollar amount to it. It recommends the K5200. After shopping around I found that it currently costs an average of $1,800 to get this card. Well, this goes over our budget of $1,400, so it’s no good. Let’s look at the two GPUs that replace the recommended K5200: the K5000 and the Quadro 5000.

Then let’s throw in the old king of the hill, the Quadro 6000. 

Cost

Name

Specs

$1,800

K5200

CUDA Cores 2304 

GPU Memory 8GB GDDR5 

Memory Interface 256-bit 

Memory Bandwidth 192GB/s 

System Interface PCI Express 3.0 x16 

Display Connectors DVI-I DL + DVI-D DL + DP 1.2 + DP 1.2 

DisplayPort 1.2 Yes 

Warranty 3 Years 

$1,000-$1,500

K5000

CUDA Cores 1536 

GPU Memory 4GB GDDR5 

Memory Interface 256-bit 

Display Connectors DVI-I DL + DVI-D DL + DP 1.2 + DP 1.2 + Stereo 

SDI Output Card Connectors 2 SDI Outputs, Fill and Key (BNCs) + Genlock (BNC) 

Warranty 3 Years

$420

Quadro 5000

CUDA Cores 352

GPU Memory 2.5GB GGDR5

Memory Interface 320-bit

Display Connectors DVI-DL + DP + DP + ST

Warranty 1 Year

$1,150

Quadro 6000

CUDA Cores 448

GPU Memory 6GB GGDR5

Memory Interface 384-bit

Display Connectors Dual link DVI

Warranty 3 Years

I added in the Quadro 6000 to introduce another factor that pops up when trying to figure out the right GPU for you: How does newer GPU architecture factor in to the memory speed vs CUDA cores tug of war when considering a potentially tight budget?

The Quadro 6000 has Fermi architecture, while the K5000 has the new Kepler architecture. As you can see, almost every computing function has increased.



The computing power, display support and visualization performance per watt has doubled in capacity. Meanwhile, the on-board memory increased 75 percent, while the memory interface speed and visualization performance increased by 50 percent. 

Now we have a situation. For a similar cost, I can get a GPU with newer architecture, more CUDA cores, but less memory speed in the K5000. Or I can get less (and older) CUDA cores with more on-board memory and a faster memory interface speed. 

Resolving a choice of more (and newer) CUDA cores with a 33 percent slower memory interface speed, but more GPU memory brings us back to the question:

What are you going to be doing most with your workstation? 

Are you following this post because it hits the nail on the head and you are going to need the ability to perform simulations (CFD and FEA analysis)? Do you also need more ray-traced rendering capabilities for a long-term project? If so, choose something like the Quadro K5000 over the similarly priced Quadro 6000. Those CUDA cores are newer and more efficient, which allows higher clock rates to be maintained and makes up for the lower memory interface speed. And each core operates on very simple circuitry, performing only a few repetitive calculations like a simple math program. At any given point in time, you can perform more of these calculations when you have more cores.



There are so many factors on the road to optimization when you move up a level in terms of size and complexity of your assemblies. Everybody at some point runs into performance walls. It’s inevitable. 

The more you know the way that each part of your CAD workstation functions with your primary software, and the more you utilize CAD best practices, the closer you will get to optimizing your system for your current or impending workloads on a tight budget. 

Don’t forget to use free resources provided by the company that built your workstation, the company that makes the GPUs and the company that creates your go-to CAD software.