Instrumentation speed is affected by many factors, some of which are under your control, some of which are not under your control.
Factors that cannot be influenced
- Application size.
The size of your application is fixed and will most likely increase as development continues.
- Development computer.
Your development computer can be upgraded to a faster computer with more memory and faster disk drives. This however can only happen so often and is essentially another factor that you cannot manipulate with much success.
Factors that can be influenced
- Hooking method.
Choosing to perform hooking via PDB or MAP files can influence performance. The Line Hooking tab on the settings dialog allows you to specify how this is performed.
- MFC and C runtime.
You can choose not to profile MFC and the C runtime classes. The Hook Insertion tab on the settings dialog allows you to specify how this is performed.
- 3rd party software.
You can choose not to profile 3rd party software and software in any directories that you choose to exclude by listing them as 3rd party software. The File Locations tab and the Hook Insertion tab on the settings dialog allow you to specify how this is performed.
- Line timing.
You can disable line timing when you do not need line timing information. Line timing is enabled and disabled on the launch application dialog (in wizard and dialog user interface modes).
- Do not instrument all DLLs.
Use the DLLs to Hook and DLLs not to Hook tabs on the settings dialog to prevent certain DLLs from being instrumented.
- Only instrument specific file types.
Use the Hooked File Types tab on the settings dialog to specify which file types should be instrumented.
- Instrument specific source code files.
Use the Hooked Source Files tab on the settings dialog to specify source files which should be instrumented or which should not be instrumented.
- Restrict instrumentation by class, method and function.
Use the Class and function filter tab on the settings dialog to specify classes, methods and functions which should be instrumented or which should not be instrumented.