Regular DEVELOP3D columnist Rob Jamieson gives his top 10 tips on how to get more performance out of your workstation
By nature, human beings don’t like waiting; so no matter what workstation you use it will never be fast enough. If you have a brand new machine it will feel faster for a while but over time you will probably notice it getting slower. This could be because you’ve got used to the speed but maybe because your system is getting furred up like a kitchen kettle.
To help give you some extra performance, either for loading bigger assemblies or in order to wait less time for your system to do something, I’m going to run through my top ten tips for configuring hardware and tuning drivers. It’s mainly a focus on Windows XP as most of my recent experience has been on this platform, but some of it is applicable to other platforms.
While I work for a hardware corporation, my background has been in CAD software support and demonstration and before this I was a software user.
Some of the suggestions that follow involve installing software off the web, configuring drivers and editing critical files, some of which may damage your system if a mistake is made, so everything described here is done at your own risk! That said I have done this on several systems with no problems, so if you follow the instructions exactly, everything should be fine. Of course you should have a backup before you start. But you already backup regularly, don’t you?
Uninstall unnecessary applications
The simplest, most effective way to improve performance is to uninstall unnecessary applications as these just take up memory and clog up startup sequences. Make sure you do this in the correct way, through to Start, Settings, Control Panel, Add/Remove programs.
Not all software can be uninstalled in this way. For example, when Windows boots up, lots of little applications are started automatically and while most of them have an important role, not all of them are required.
For example, I have a Lenovo workstation laptop and an application called “IBM Messages” loads up on startup, retrieves the latest marketing info from IBM and displays this in the tools section of the laptop. This slows down the startup of the system and because it’s packaged with other applications I can’t uninstall it in the traditional way without getting rid of tools that I need.
To overcome this, click Start, Run and type MSCONFIG. Click the STARTUP tab and you will see all the processes that are run before the system is fully accessible by the user. Here’s the WARNING! Be very careful what you turn off. For example, if you take out ATI.ddl, on restart your screen will not display.
In the second figure I switched off the Adobe PDF update utility as I can manually do this without it taking up resources every time I startup my machine.
Minimum memory and matching your RAM
RAM (Random Access Memory) is a volatile type of storage that keeps your model data readily accessible. Once the workstation is powered off the data has gone. RAM is supplied in DIMM’s(Dual Inline Memory Modules) and the very minimum memory you should have is 2GB or 3GB. These must be installed in pairs (or threes in more modern systems) and also placed in the correct slots. Failing to do this can result in a significant reduction in performance or even stop the system from booting up.
Memory Usage(using your memory)
A common misconception is that once you load an application into memory and then switch to another application then the first is unloaded and all the memory is channelled to your current task. Unfortunately this is not always the case. Applications try to push some of their data in a swap file (Pagefile) that is a physical store of pseudo memory but located on the hard disk. As the hard disk is 10x slower than memory this can be a lengthy process.
The applications you use at the same time affect the amount of memory you have available for your 3D application. For example, the memory map in Figure 3 shows a 2GB system with Microsoft Outlook running with one email open. It is using nearly 500Mb of RAM, which is taken away from your 3D application. Other applications such as Adobe Photoshop can also use a lot of memory and fight for your resources of 3D applications.
Two possible solutions are to go for a 64-bit Operating System with a reasonable amount of RAM (4GB or more) or unload certain applications when you are working with intensive 3D models. A restart is even better as a lot of applications have minor memory leaks that cause memory to disappear the longer you use your workstation uninterrupted.
Extending memory in Windows XP
Microsoft’s Windows XP Professional continues to be popular with CAD users and is available in two versions. The 32-bit version is most common, but the 64-bit version is becoming increasingly important for CAD as it can address more RAM and hence work with larger assemblies.
For those already working with Windows XP (32-bit), this was built with a physical limit so it can only address 2GB per application. If you are working with large assemblies you may be running out of memory and want to extend this to 3GB. To do this a technique called PAE (Physical Address Extension) is used. While this was really designed to give Microsoft Outlook servers better access to memory, most of the CAD vendors provide support for their applications. The thing is that both these and a lot of other 3D applications need access to graphics memory.
The PAE effectively moves the graphics memory up by 1GB but not all drivers or applications recognise this has happened and can crash. If you add a line to the boot.ini (a hidden file in the root of C:\ that controls where Microsoft Windows XP starts from) you can lessen the amount of extra RAM given to PAE to make your system more reliable.
To do this you need to edit the boot.ini and add the USERVA switch. Here comes another WARNING! Backup before you start this because if you damage this file or type in something incorrect your system might not start.
To edit the boot.ini file go to Start, Settings, Control Panel, then click ‘System’, and the ‘Advanced’ tab. Next press “Settings” under the “Startup and Recovery”. Hit the Edit button and add a new line multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=“Microsoft Windows XP Professional /3GB” /noexecute=optin /fastdetect /3GB /USERVA=2750.
This can be seen in context in the bottom line in Figure 4. Save it and on the next restart you should have two startup options. One is as it was before and one with the /3GB /USERVA=2700 in. This way if you have problems you can go back to the original setting.
If you search for information on the web you might see values of USERVA=3000 or more, but remember this is for non-graphics applications.
If your CAD application is working fine with no issues and seeing up to 3GB already with no crashes you could already have drivers or patches that have fixed the problems with other versions so leave well alone.
BOOT INI image with caption Figure 4 Editing the boot.ini file can enable single applications to see more than the standard 2GB here.
Choose the right number of sockets and cores
Modern CPUs now comprise multiple processors (cores). When there was only one core per chip you had the choice of a single or dual processor workstation. Now things are measured in single or dual sockets and the number of cores per socket. On a single socket workstation four cores is now common, but older chips have two cores and six core chips have just been released. On a dual socket board this can double the amount of cores to four, eight or twelve.
The speed of the CPU has more of an impact on the performance of 3D software than the number of cores. This is measured in GHz. If you use a 64-bit OS, most 3D software needs two cores, as one core looks after the memory allocation while the other interface/modelling. Some elements of 3D software, such as assembly loading, can take advantage of multiple cores.
Today, in order to benefit from more cores, you will need to use specialist software for rendering or simulation. While rendering software works incredibly efficiently with eight or twelve cores, the benefits for simulation software often diminish above two or four cores. However, multi core workstations can be put to good use when solving multiple simulations at the same time.
What is best for your needs? If you don’t do that much rendering or simulation or have a dedicated render farm/compute server, then a fast single socket quad core workstation will be more than enough.
Drivers and Hardware
Hardware drivers are always important. Windows Operating Systems come with a base set of drivers but XP is eight years old now and while new devices were added in SP2 and SP3 you still you need to have more up to date ones. For 3D applications, graphics drivers, then chipset drivers are the most important. The first place to visit is your 3D application certification page. These are updated periodically but the graphics card vendor might have a later one so you could visit there as well.
Over the life of a graphics card, the driver updates can improve performance by up to 30%!
There are two standards in graphics Direct X (DX) (Windows only) and OpenGL which is multi platform. Both have their merits.
For CAD, you will need a professional card if you want good performance out of an OpenGL application as these are the only ones that support the extended OpenGL command set. For DX some people use gaming cards but any bugs are unlikely to be fixed by the hardware vendor. For example, the View Cube used in most Autodesk applications may not display correctly with a non-professional card.
For other drivers visit the workstation vendor’s site such as Dell, HP, etc to see what they recommend. If you are using Windows XP x64 Edition you need a “quality” system as not every device has a driver for this platform. Printers are sometimes one of the problem areas for Windows XP x64, particularly if they are of a certain age.
Defragment hard drives
Defragmentation helps bring order to your hard drive, but why is it so important to do it? Hard disks are spinning metal or glass platters with heads that read off the data. The disks spin at a constant rate so the outside edge has more data read from / written to per revolution than the inside. This difference can be as much as 20%.
If you use your system a lot the files get spread over the disk with one part in the middle and one part at the end and this gets worse the more you delete and add files. This also decreases performance because the head needs to physically move from one part of the disc to another and over a period of time your system starts to feel slower.
There are two fixes for this. The first one is to defragment your system on a regular basis, say at least once a month. Windows XP has a built in utility for this, but there are also third party products such as disk keeper. This software can move all the files back together and will defragment the swap space as well. There is a full trial available for free on the disk keeper website.
The second fix is to keep your disks half empty. To help you do this there are several things you can do.
Clear out web pages: While these files are not that big they end up being spread over the disk so it’s worth deleting them periodically.
Remove large files or duplicates: There are many shareware apps that let you search for large files or duplicates. Many software applications install temp files in the root of C drive. Once the application is installed it won’t need them. A good way to check you’ve deleted the right folder is not to empty the recycle bin straight away. Run the application and if it all works OK you know it’s safe to permanently delete.
Compress the mail archive: Mail applications like Outlook store every attachment you open in the temporary Internet folder. Each time you open an attachment it sequences the number. For example, Doc(1).PDF, then Doc(2).PDF, storing it again. If you open up the attachment a lot and/or have large attachments, over time this becomes a sizeable amount of storage that is not getting cleaned out. If you archive your mail it’s good to compress the archive.
Setting up a RAID
There are multiple types of drive sub-systems but I’m only going to concentrate on SATA (Serial) and SAS.
SAS is a replacement for SCSI and generally has the fastest drives but not always the largest capacity. They typically start at 10,000RPM. These are also the most expensive and are generally only found on multiple socket (more than one CPU) workstations. SATA drives are more common and have the largest capacity (now up to 2 Terabytes or 2,000GB). In high capacity disks, where the density of the disk (amount of data per area) is bigger, performance is generally better, as long as the platter speed is high – 7,200RPM is typical.
You can combine disks in multiple ways with a hardware solution called RAID. This comes in many forms but the differences in performance and reliability can have a big impact if you don’t select the correct options.
To start off with RAID 0 is where you take two disks and stripe the data across both. You get better performance than a single drive as when you read data these can be in the cache (RAM on the drive) which is fast. You also get the full capacity of both drives. So what’s the downside? Well if one drive fails you lose all your data, and while drive durability has got much better in recent years, they are still mechanical devices and will fail at some point. The hardware controller keeps the physical setup of the drives and if this gets corrupted then you can also lose your data. RAID 0 is available on most workstations.
RAID 1 is where the drives are mirrored. If one drive fails your data is backed up on the other, but you only get the capacity of one drive. It is available on most workstations and also offers some performance gain over a single drive when reading data.
RAID 5 is a combination of 0 and 1 and data is spread over multiple drives. It’s fast but expensive as it needs four physical drives, for only one third of the capacity of the drives added together.
Antivirus
My final tip concerns anti virus software. This is very important and I would always recommend using some, but what annoys me is when they are forced to run a full sweep on startup.
Setting up a full sweep is a good thing to do, but do it at a set time when you know it’s not going to interfere with your work. Some anti virus software checks every file created. You can setup antivirus to ignore certain files and CAD part and assembly data files might be the obvious ones to select.
Rob Jamieson is marketing manager for workstation graphics at AMD. This article is his own opinion and may not represent AMD’s positions, strategies or opinions.
{encode=”robert.jamieson@amd.com ” title=”robert.jamieson@amd.com “}
Maximizing workstation performance