Hardware Recommendations and the Future of EVS and MVS

A common question asked of us at C Tech is information regarding suggestions for computer purchases. Read on to see our current recommendations, as well as a sneak peek at features in the upcoming Version 9 release of EVS and MVS.

EVS and MVS both are advanced software packages. Choosing the correct system configuration can help EVS perform tremendously, and is not always a matter of price. In fact, often times, less expensive equipment can outperform more expensive hardware in EVS and MVS – if the correct components are chosen.

Hardware recommendations are always difficult. The computer world changes at a fast pace – usually there are major improvements to computers every six months.

For this article, I’m going to list our current 2007 recommendations for systems, as well as explain some of the reasoning behind specific options.

There are three main factors in building a system for running EVS and MVS.

First, you need to decide on your memory, or system RAM.
The amount of memory required is completely dependent on the types of models you are going to build with EVS/MVS – in particular, the higher resolution model you create, the more memory you should have in your system. System memory doesn’t impact performance until you run out – once you use up your memory, the performance of the entire system slows dramatically.

Fortunately, RAM has dropped significantly in price over the last few years. Over time, larger amounts of memory have become available at lower prices, so this is a fairly easy one to improve in your system. Also, having extra RAM will not hurt anything in your system. Given current ram prices, I always recommend at least 1 GB of RAM for any system running Windows XP, and 2 GB of RAM for any system running Windows Vista. If you plan on making large or detailed models, adding at least 1GB of extra RAM is an easy way to help the performance of your system. For making high resolution models, I’d recommend at least 2 GB of RAM, and preferably 4 GB. That being said – 2 GB is very useful, but adding much beyond that becomes less of an improvement. This is due to the way Windows handles memory – only 2 GB of system memory will be allocated to a single process, so adding 4 GB is only useful in that you are guaranteeing that there will always be enough memory for EVS, as well as the operating system and any other programs running. However, Windows Vista, in particular, can easily use nearly a full GB of ram for the operating system tasks, since it pre-loads a lot of process information into system memory, so 3 or 4 GB is quite useful there.

Second, you need to decide on a graphics card.
This is an important one for EVS/MVS – so much of what you do will be impacted by the choice of graphics card, since this will determine how well the Viewer responds to user interaction. Fortunately, graphics card manufacturers improve their products at an amazing pace. Unfortunately, they are not always good about keeping their OpenGL drivers in perfect shape, and EVS/MVS uses (and needs) a feature rich implementation of OpenGL.

The most important factor in determining a graphics card isn’t price, or even features – it’s the quality of the graphics card driver. Even a (now) older generation card will perform very well in EVS/MVS if the drivers are of high quality. For this reason, we recommend graphics card solutions with an NVIDIA-based chipset. We have found, over the last few years, NVIDIA has consistently delivered higher quality drivers for running OpenGL applications than any other graphics card manufacturer.

My typical recommendation is to look at NVIDIA’s current product line, and always choose one of the top two models in their Desktop graphics cards line, in either the current generation or the last generation. [Currently, this would be a GeForce 8800, 8600, 7900, or 7600 based card.] This typically provides the most performance per dollar spent for EVS. The lower-end models in the current generation typically dramatically underperform compared to the last generation’s high end models, which usually cost less!

If this isn’t a possibility, the NVIDIA Quadro Fx cards are a great option, although they do cost a fair amount more. Many systems integrators (like Dell) will, by default, ship a system with a Quadro NVS-based system. This, unfortunately, is not a 3D-oriented graphics card, even though it costs more than many of the Desktop cards. NVIDIA specifically markets the NVS line for “General Purpose Business and Corporate” or “Financial Trading” use. I do not recommend these cards if it is possible to avoid them. The Quadro Fx cards are their professional 3D line, and do offer outstanding performance, but they are at a much higher price point.

Third, choose your CPU.
The final decision you need to make for building a system to run EVS and MVS is the processor. This has always been an easy decision in the past – EVS/MVS is a computationally hungry program, so buying a faster processor was always a fairly good way to improve your performance. Also, processors used to quickly get faster, so new systems almost always dramatically outperformed older systems.

However, the computing world has changed here in the last few years. In the 1990s, processors dramatically increased in speed from year to year. EVS/MVS has always run on any processor – a faster one just meant less time spent waiting for a kriging job to finish, or less time waiting on surf_cut, etc. For EVS and MVS, the dramatic speed increases in processors were great – every couple of years in the 90s you could buy a new computer, and cut your processing time in half.

Over the last few years, however, computers have not sped up dramatically. To combat this, Intel and AMD have recently started creating multi-core CPUs – where there are multiple individual processors on each CPU. Since EVS has never been multi-threaded, this doesn’t help it run any faster, other than allowing the operating system to use one CPU core while EVS or MVS processes on the other.

Through C Tech’s Version 8.54, multiple CPUs and multi-core CPUs have not been particularly relevant. Today’s processors are no longer getting dramatically faster each generation – they’re adding more cores. Intel now has mass-marketed 4 core processors, and both Intel and AMD have 8 core processors in their current roadmap. Instead of focusing on speeding up CPUs, they are adding parallel processing capabilities.

There is good news, though. We at C Tech have been paying attention, and one of the many exciting improvements in Version 9 of EVS and MVS (due to be released later this year) will be multi-threading of many key processes.

EVS and MVS Version 9 will be the first release which will directly take advantage of and fully utilize multiple processors and multiple cores in a system. Several of the fundamental routines in EVS/MVS have been reworked or rewritten from scratch for Version 9 to allow them to run in parallel and take advantage of multiple processors. The most notable of these is the kriging routines, all of which will be multi-threaded in Version 9. This will provide dramatic benefits to having a multi-core or multi-CPU machine. Other threaded routines include surf_cut and overburden in MVS – two of the slowest running modules in our software!

This dramatically changes our recommendations for systems. Instead of focusing on the highest clock speed for a processor, we now highly recommend trying to get a system with more CPU cores. Intel’s Core 2 Quad processors (with 4 CPU cores), in particular, are often only a small amount more money than the typical dual core system, and will cut kriging times roughly in half! For those of you running very large models who are willing to spend some extra money, some system integrators (like Dell) offer systems with two Quad Core CPUs in a single machine – giving a total of 8 CPU cores. EVS v9 will split the kriging process across all 8 cores, which will give a huge (nearly 4x) speed increase over a typical dual core machine!

So – here are the main things to focus on if you are considering purchasing a new system:

1) RAM
At least 1 GB for XP, 2 GB for Vista. 4 GB is a worthwhile upgrade if you are doing very large models.
2) Graphics Card
Try to get a system with an NVIDIA 8800 (best) or 8600 (good) chipset, if possible. Otherwise, see the recommendations above.
3) CPU
Intel Core 2 Quad – When Version 9 is released, this will dramatically increase the speed of all of the kriging operations (causing reduced compute times) in EVS/MVS, as well as other slower modules like surf_cut. If money is no object, get a dual quad core system – the 8 processor cores will dramatically shorten your runtimes.

That’s all for now! If you have any questions or comments, please post them below or contact support, and we’ll give you our current advice.