Build a Virtual Cluster

A virtual cluster can be built from your existing resources and dedicated to completing computationally intensive engineering tasks.

A virtual cluster can be built from your existing resources and dedicated to completing computationally intensive engineering tasks.

By Peter Varhol and Jamie J. Gooch

When it comes to today’s multi-core workstations, the sum of the parts can be greater than the whole. Many everyday computing tasks—checking email, online research, even CAD modeling—don’t begin to tax multi-core processors, and only use a fraction of the memory and hard drive space available. There’s a lot of untapped potential sitting in that unassuming computer case. Why let it go to waste?

Virtual Cluster

That’s where virtualization comes in. With the right software, a virtual machine—one that doesn’t physically exist but shares the resources of one or more workstations—can be created. Even a single workstation can be partitioned to hand over some of its resources to a virtual machine. The more workstations that contribute resources to the virtual machine, however, the more powerful it becomes. Even a small cluster of four 12-core workstations or eight six-core workstations can create a virtual resource of 32 cores. That’s enough processing power to significantly speed intensive tasks like simulation or rendering jobs.

And the best part, aside from the fact that you may already have the hardware needed to create a virtual machine, is that the physical workstations are not noticeably hampered by dedicating some of their resources to the virtual machine. So how do you go about creating this unseen processing powerhouse?

Step 1: Make an Assessment
First, determine if you already have the resources available to create and use a virtual cluster. You’ll need enough unused workstation resources—specifically processor cores, memory and hard drive space—to dedicate to a virtual workstation cluster.

You should also consider how you’ll connect the workstations. You’ll need a high-speed interconnect such as gigabit Ethernet or InfiniBand to handle the traffic. You may also need to install additional networking cards so that the workstations can communicate with each other on one network, and with the rest of the company on another to avoid congestion.

Step 2: Choose the Software
Next, decide on the virtualization software you’ll need. Virtualization software from companies such as Parallels Holdings Ltd. and VMware, Inc. have steadily improved over the past few years. It’s now common to run two operating systems on one workstation via virtualization. The same concept—using one computer’s resources to virtualize another—holds true when creating a virtual cluster from multiple workstations.

Virtualization software offers even better performance when paired with hardware-assisted virtualization technologies. In most virtualization technologies, you use software to map the input and output among the virtual machines, the physical devices, and the computer ports. This is satisfactory for most usages; however, the high input/output (I/O) rate and performance required in many engineering applications is greater than what’s possible with typical virtualization technologies. In most virtualized environments, drawing to the screen is significantly slower, and network speed is less than it is from the native operating system.

Hardware virtualization technologies provide a more direct path for input and output for better efficiency.

Step 3: Choose the Hardware
Some workstations are now being designed for virtualization. They may bundled with virtualization software that can take advantage of hardware virtualization.

In the Intel Xeon chipset, Intel Virtualization Technology for Directed I/O (VT-d) provides for direct access from a virtual machine to I/O devices and ports, eliminating the need for a higher-level—and slower—software interface. Instead, devices can deliver I/O just as they would in the native operating system’s environment, so performance is comparable to the native environment. Such a setup is necessary in graphics display and network access, where high performance is imperative.

AMD calls its virtualization technology AMD-V. According to the company, it is a set of hardware extensions that allow you to make better use of your resources. All new AMD processors, including the 12-core Opteron processors, are designed to use AMD-V features, such as hardware-based virtual machine memory management and direct device access by virtual machines.

In addition to hardware virtualization, you should ensure the workstations you plan to use have the ability to accept multiple networking cards and can be configured with a sufficient amount of memory.

Step 4: Divide and Conquer
The next step is to allocate resources from each workstation that will be used by the virtual cluster. It’s possible, for example, to allocate four cores and 8GB of memory on one workstation to a design engineer’s interactive tasks, and eight cores and 16GB of memory for the same purpose on another system in the same cluster.

Some engineering applications can make use of all of the cores and memory available, while others require a great deal of network bandwidth. Cluster administrators have to take into account the needs of the application and the type of work being done in order to appropriately configure each workstation.

Taking a Deeper Look
This article concludes a series that looked at Parker Hannafin’s engineering practices, specifically how Parker Aerospace used a virtual cluster to speed simulations. DE also produced a white paper on workstation cluster computing, which was sponsored by Intel and HP. It can be downloaded for free at If your company would like to be the subject of a “DE On the Case” story, email us at [email protected].

Users of CAD software, for example, typically only use a small number of cores when running their applications. As reported in the September issue of DE, airplane component and system supplier, Parker Aerospace built a virtual cluster to relieve simulation and analysis bottlenecks. The company allocated individual cores and memory for the desktop operating system, productivity applications, and any other applications. It was able to leave six or eight cores of each of the four 12-core workstations available for clustering.

This one-time setup of each individual application (e.g. ANSYS, Microsoft Office, LS-Dyna, CFD Design) on each clustered workstation took anywhere from a few minutes to a few days for Parker Aerospace, depending on the characteristics of the jobs and underlying applications. Some were very predictable, while others varied a great deal. But this only had to be done once to determine how many cores to initially allocate. Once the computational behavior of a task was ascertained, Parker Aerospace could allocate the appropriate amount of computing resources to its purpose.

Making the Decision
If you’ve performed a hardware upgrade in the last few years, you may have already invested in a fair number of multi-core workstations. Since complex simulation and analysis jobs have become standard practice in the industry, creating a virtual HPC cluster to process these tasks out of existing workstations gives an organization the benefit of an HPC server without the cost and expense of purchasing and maintaining one.

If you’re looking at upgrading hardware, keep virtualization options in mind. Even if you don’t need a virtual cluster now, investing in the right hardware will give you the option in the future.

Peter Varhol is a Contributing Editor for Desktop Engineering covering high-performance computing. Jamie Gooch is Managing Editor of Desktop Engineering. Contact them via [email protected].

Share This Article

Subscribe to our FREE magazine, FREE email newsletters or both!

Join over 90,000 engineering professionals who get fresh engineering news as soon as it is published.

About the Author

DE Editors's avatar
DE Editors

DE’s editors contribute news and new product announcements to Digital Engineering.
Press releases may be sent to them via [email protected].

Follow DE