|
Fast is never fast enough if you are waiting for your system to complete a task. This becomes more of a focus as typical assemblies and parts become ever larger.
There are a number of operating system, computer-related settings; SolidWorks® settings; and methodologies that can be employed to produce significant increases in overall performance. There are many best practices available on the SolidWorks Support web site, http://www.solidworks.com/pages/services/subscription/index.html, under the Guides section, but not an overall list ranked in order of importance. The following is a list of these performance-related settings, recommendations, and methodologies from most important to least. The rankings are subjective and may be different based on your individual needs.
Note that many of these items will require administrative privileges to your system or the involvement of your computer/CAD support group.
1. Hardware - RAM
The reason RAM makes the top of the list is simple if you run out of physical memory (RAM), the system becomes extremely slow and inherently unstable, even if the virtual memory is large enough to handle the additional requirements. RAM is a fairly small investment considering the return on the investment.
To answer the question How much RAM do I need, you will need to determine how much you use on a typical basis. The best way to do this is to use the Windows Performance Monitor (see Figure 1). The performance monitor can track and report many different aspects of system performance and should be used throughout this process to baseline and test changes to the system. Based on the changes being made, OS or hardware, the performance monitor can be used to help validate and quantify the change.
 |
Figure 1 - Windows Performance Monitor |
If your datasets require more than the 2 GB Windows® addressable limit, Windows XP can be set up to use 4 GB of RAM. Remember that just because your system has 1 GB of RAM, it does not mean that SolidWorks can use the entire 1 GB. The system kernel, other system processes, other applications that may be running, and video hardware acceleration all consume RAM and that leaves the remainder for SolidWorks.
Windows XP Professional has 3 GB mode which allows for 4 GB to be used by the system. In this mode, 1 GB is reserved for the Windows kernel, and the remaining 3 GB is available for applications. For more information on the 3 GB switch, visit http://www.microsoft.com/whdc/hwdev/platform/server/pae/PAEmem.mspx.
2. Hardware - CPU
For SolidWorks, CPU speed is key. While the different types of processors available make it difficult to compare clock speeds directly, the best approach is to look at or test the machine with the SolidWorks benchmark or your own performance metrics. Many vendors have these benchmarks.
While many processes within SolidWorks are multithreaded, there is limited gain in a multiple CPU system. Typically, where the multiple CPUs make the most sense is where other computer-stressful applications (e.g., FEA) are run at the same time. Again, a good benchmark or performance test will help determine the value.
The major hardware vendors, all of them SolidWorks hardware partners, extensively test and provide support for their systems. Systems put together at your local PC store or kits do not offer this same level of testing and can be the source of issues later. Also there is a difference between a computer meant for CAD usage (workstation) and a plain desktop PC. Evaluate and understand the differences when purchasing systems meant for CAD usage.
3. System Options - General
There are a number of SolidWorks settings that will be discussed. The System Options are defined within the Tools/Options dialog boxes and can be shared by setting up a system and using the Copy Option wizard available within the SolidWorks Start menu under SolidWorks Tools. Once these settings are exported, another user can just double-click the file (SWOptions.reg) to load these SolidWorks settings into the system.
The General options to note are Show thumbnail graphics in Windows Explorer (on by default) and the Save eDrawings information (off by default), which should not be selected.
 |
Figure 2 - General System Options |
4. Operating System Setup - Virtual Memory
A large performance improvement can be made by following a system setup best practice of putting the virtual memory on a physically separate hard disk.
Performance gains of 15-30 percent are not uncommon for opening and saving files with the virtual memory on a separate hard disk.
Note that this disk needs to be a separate hard disk and should not be fragmented or used mainly for other tasks. The minimum and maximum values should be set to the same value so that the space allocated for the virtual memory does not get fragmented. The standard disk defragmenter that comes with Windows does not defragment the virtual memory.
5. Large Assembly Mode
Large assembly mode makes it this high on the list for a simple reason, the main SolidWorks performance settings can all be defined here and also within the individual sections that follow. The difference and advantage of large assembly mode is that a threshold can be set (default = 500 components) and then the performance-related settings can be applied. The advantage here is that many of these settings may be desirable with a smaller assembly, but with a larger assembly, the overhead for many of the features warrants turning them off.
 |
Figure 3 - Large Assembly Mode |
6. System Options - Drawings
The highlighted items below are the performance-related settings for this section. Many of these items can also be set within large assembly mode and left on/off for smaller documents.
 |
Figure 4 - Drawings system options |
7. System Options - Performance
The highlighted items below are the performance-related settings for this section. Many of these items can also be set within large assembly mode and left on/off for smaller documents.
 |
Figure 5 - Performance system options |
8. Best Practices - Assemblies
There are a number of best practices that can be employed within assembly design. These practices include:
- Lightweight components and subassemblies
- Save As Part
- Configurations
- Mating
- Subassemblies (assembly structure)
- Skeletons
- Always resolve mate errors (assemblies)
- Understand mate warnings (assemblies)
9. Best Practices - Parts
There are a number of best practices that can be employed within part design. These practices include:
- Feature order
- Model only what you need (i.e., threads)
- Pattern (geometry pattern)
- Functional group features
- Combine fillets and fillet order
- Always resolve rebuild errors
- Always resolve import errors
- Use of Feature Statistics
10. Best Practices - Drawings
There are a number of best practices that can be employed within drawings. These practices include:
- Use of lightweight drawings
- Detachable (Rapid Draft)
- High Quality and Draft Quality
- Minimize what's required
- Other performance options
11. Document Properties
The highlighted items below are the performance-related settings for documents. The difference with document properties is that they are not global settings; instead they are defined within the document (part, assembly, or drawing). These settings can be defined within a document template and then:
- Set in templates
- In Assemblies, these settings can be applied to referenced documents
 |
Figure 6 - Document Properties, Image Quality |
12. File Management
 |
Figure 7 - PDM systems and the Windows Explorer |
File management plays into performance for a couple of reasons. The first is that many PDM systems allow for a local workspace. This increases performance as the files do not have to be opened and saved to a network server. The time required to access these documents is less on a fast, local hard disk. The only time the network is accessed is when checking in or out documents. Otherwise, the local workspace is used.
While this could be done manually, the other advantage here is productivity. When copying a project or changing the lifecycle status of a document or set of documents, a PDM application is used to manage and automate parts of the process.
13. System Options - File Locations
The file locations for common templates, journal files, etc. are set within the Tools/Options File Locations dialog box. The performance-related item is the SolidWorks Journal file.
 |
Figure 8 - File Locations System Options |
14. Network and Anti-Virus
The quality and speed of your network can also be another one of the performance bottlenecks. The design and monitoring of the network can have a big impact on overall performance. This is particularly true when using a file server for document storage.
There are a number of good hardware and software network monitors available on the market. Ask your IT support group to see if they monitor or test the QOS (Quality of Service) of your network on a regular basis.
Another aspect that should be considered is the use of anti-virus software. If you do anti-virus software scans on each SolidWorks document when it is opened, performance will suffer. The downside of this is that a SolidWorks file could be corrupted with a virus. An option may be to ignore file open scanning on sldspt, sdlasm, and slddrw SolidWorks file extensions. Then the system administrator can do regularly scheduled scans of the SolidWorks data directory. Anti-virus software will also slow down the installation process as the installation files are scanned before opening.
15. System Maintenance
Regularly scheduled system maintenance can help keep your system performing well and prevent issues from occurring.
- Disk defragmenter
- Note: The standard Windows defragmenter does not defragment the virtual RAM. To defragment the virtual memory, a third-party application must be used.
- Clear temp and backup files
- Best practices
- Installation (virus scan, uninstalling applications and Windows registry, administrative installs)
- System setup (virtual memory, service packs, etc.)
- Use a recommended operating system
- Software deployment
16. Hardware - Misc.
A faster video card with a good driver would be a bigger factor if you were using a game grade video card or an older card. If you are using Software OpenGL due to your current card, consider replacing the card with a supported one. See the video card page at http://www.solidworks.com/pages/services/subscription/index.html for more details.
The Windows display setting, Show window contents while dragging, should be de-selected as shown in Figure 9.
 |
Figure 9 - Display/Effects settings dialog box |
Conclusion
The items listed above offer a number of different techniques that can be used to improve performance. The next questions to answer are which ones fit your company's requirements and how to quantify and test these options.
Throughout this process, having a good baseline is important for a number of reasons. First, a performance baseline allows quantifiable measurement of each of the changes and helps document the net effect that can be used as a rationale to purchase hardware or training. The ability to list these benefits also makes change management easier for others within your company. When they can see the payback, getting them to apply a different methodology or setting is typically easier.
The first step is to determine a baseline performance number. The SolidWorks benchmark can be used to test hardware settings. The benchmark is not good for testing SolidWorks settings, as it works with worst case performance settings. For more information, see http://www.spec.org/gpc/downloadindex.html.
Another benchmark should be used to determine the effect of SolidWorks settings. This could be one of the benchmark assemblies or a dataset from your company. The dataset should be large enough to tax the system's performance. These tests should be done on one machine and documented for final review.
Once the hardware, OS, and SolidWorks settings have been defined, be sure to document and communicate this information, and the data behind these settings and changes, to all SolidWorks users.
|