Please enable JavaScript to view this site.

Performance Validator Help


The Symbol Servers tab allows you to specify Symbol Servers to retrieve symbols used in your application.


note You do not need to specify symbol servers if you do not wish to, and Performance Validator will work correctly without them.


interactiveRead on, or click a setting in the picture below to find out more.





Symbol servers


Symbol servers are entirely optional, but are useful for obtaining symbols from a centralized company resource or for obtaining operating symbols from Microsoft.


The default symbol server is the Microsoft symbol server used for acquiring symbols about Microsoft's operating system DLLs. You may also wish to add some symbol servers for any software builds in your organisation.


A symbol server is defined by at least the following:


the symbol server dll to be used to handle the symbol server interaction

a directory location where symbol definitions are saved

the server location - a url


Each symbol server can be enabled or disabled allowing you to keep multiple symbol server configurations available without constantly editing their definitions.


You can define up to four symbol servers and more than one can be enabled at a time.


Symbol Server Errors


Any symbol server entry shown in red indicates there is a problem with parts of the definition of that symbol server.


In the image shown above the symbol server at cannot be reached. It is either offline or does not exist.



Managing symbol servers


Add... instructionStep displays the symbol server dialog described below

Remove instructionStep remove selected symbol server(s) in the list

Remove All instructionStep remove all symbol servers


Enable All instructionStep enables all symbol servers in the list

Disable All instructionStep disables all symbol servers


You can also enable or disable an item in the list via the yellow check box at the left of each row.


To edit the details for a symbol server, just double click the entry in the list to show the symbol server dialog again.



Symbol server dialog


The dialog initially appears pre-populated with some default values and allows you to set up or edit the definition of a symbol server. Some of the default values can be changed.





Enable Symbol Server instructionStep enable or disable this server


The following three entries must be set to enable the OK button and define the symbol server.


doc-expand-icon OK button not enabled? The OK button will only be enabled when the following entries have a valid value:

- Symbol Server DLL names a dll present in the Memory Validator install directory.
- Symbol Store Directory has been specified and exists.
- Symbol Server URL has been specified (this value will not be checked for correctness).



Symbol Server instructionStep select a predefined public symbol server or enter the URL of the symbol server you wish to use - the Microsoft server is initially set as the default


Symbol Store Directory instructionStep enter or Browse to set the directory that will contain local copies of the downloaded symbols


Create Dir instructionStep creates a directory if you entered a directory name that does not exist yet


The Symbol Server DLL is set based on the Symbol Lookup settings you have chosen.



You can optionally associate a directory to scan when you are prefetching symbols (below)


Prefetch Directory instructionStep specify the directory to scan for symbols



Environment variables related to symbols


If you wish, you can set some environment variables to supply symbol paths.


Configure Symbol Handling Environment Variables instructionStep opens the dialog below


Check the desired options - if any.







Pre-fetching symbols


To avoid delays when using symbol servers, you can trigger the retrieval of symbols (by running SymChk.exe) to collect symbols for all executable files specified in the exe/dll which you associated with each symbol server.


Prefetch Symbols... instructionStep open the Prefetch Symbols dialog below to continue





Prerequisites for pre-fetching symbols


The pre-fetching of symbols requires the installation of Microsoft's Debugging ToolsexternalLink.


noteYou may already have Debugging Tools if you've previously installed the Windows Driver Kit (DDK or WDK) or the Windows SDK.


Install Debugging Tools for Windows instructionStep opens a web page (as above) to download and install the x86 or x64 Debugging Tools for Windows


After installing the Debugging Tools, you must specify the location of SymChk.exe from the installed area.


SymChk.exe instructionStep enter or Browse to SymChk.exe location


 A typical path might be C:\WinDDK\7600.16385.1\Debuggers\symchk.exe



Getting the symbols


note Note that prefetching symbols may consume a large amount of disk space and download bandwidth.


You should ensure that you have at least 2 or 3Gb of disk free space, because of the total size of the download packages.


Prefetch Symbols... instructionStep runs SymChk.exe to get all the symbols


The symbols for each symbol server are stored in the associated symbol store directory.


note If no symbol servers are specified in the symbol server settings above, you'll see a warning dialog and no symbols will be fetched.



Command line pre-fetching of symbols with the SymChk utility


The section on Pre-fetching symbols above is a convenient alternative to manually using the SymChk,exe utility.


To avoid delays when using symbol servers, you can pre-fetch symbols using the SymChk.exe command line tool that is part of Microsoft's Debugging ToolsexternalLink.


You may want to add the folder of the Debugging Tools for Windows package to the PATH environment variable on your system so that you can access this tool easily from any command prompt.




To use SymChk.exe to download symbol files for all of the components in the c:\windows\System32 folder, you might use the command:


 symchk.exe /r c:\windows\system32 /s SRV*c:\symbols\*



/r c:\windows\system32 finds all symbols for files in that folder and any sub-folders

/s SRV*c:\symbols* specifies the symbol path to use for symbol resolution.

In this case, c:\symbols is the local folder where the symbols will be copied from the symbol server.


seeAlsoTo obtain more information about the command-line options for SymChk.exe, type symchk /? at a command prompt.


Other options include the ability to specify the name or the process ID (PID) of an executable file that is running.



Reset All - Resets all global settings, not just those on the current page.



Reset - Resets the settings on the current page.