Performance Monitoring
The Windows Performance Monitor (PerfMon) tool has been integrated into IxServer to help identify system-level and application-level performance issues. PerfMon is a powerful diagnostic tool that monitors the state of IxServer and creates log files that can be accessed by you and/or submitted to Ixia Technical Support, if the need arises to request help to diagnose and correct any problems.
Some of the features of the Performance Monitor are mentioned in the following list:
- The monitoring process runs automatically when IxServer starts.
- Log files are created and stored in the folder %LOCALAPPDATA%\Ixia\IxOS\9.18.X.Y\IxServer\PerfMon\. To view these files select File and then select Open IxServer Logs Location.
- Log files are identified by the name IxServerPerfMon_<timestamp>.blg and can be opened by double-clicking and viewed in Windows Performance Monitor. Use the relog command to post-process these files if desired.
System Specific Counters
System-specific counters that are implemented and recorded in log files include the following:
- Processor(_Total)\% Processor Time: How `loaded' the CPU is at any given time.
- PhysicalDisk(_Total)\Avg. Disk Queue Length: The average number of both read and write requests that were queued for all the disks during the sample interval.
- Memory\Pages/sec: The rate at which pages are read from or written to disk to resolve hard page faults. This counter is a primary indicator of the kinds of faults that cause system-wide delays.
- Memory\Available MBytes: The amount of physical memory available to processes running on the computer.
- Memory\Pool Nonpaged Bytes: The size in bytes of the nonpaged pool (system memory area for objects that cannot be written to disk but remain in physical memory as long as they are allocated).
- Memory\Pool Paged Bytes: The size in bytes of the paged pool (system memory area for objects that can be written to disk when they are not being used).
- Memory\% Committed Bytes In Use: The ratio of committed memory and commit counter. This counter displays the current percentage value only, not the average. Committed memory is the physical memory in use for which space has been reserved in the paging file should it need to be written to disk.
- Memory\Commit Limit: The amount of the virtual memory that can be committed without having to extend the paging file(s). Committed memory is the physical memory which has space reserved on the disk paging files. There can be one paging file on each logical drive. If the paging file(s) are expanded, this limit increases accordingly. This counter displays the last observed value only, not the average.
- Memory\Committed Bytes: The amount of committed virtual memory, in bytes. Committed memory is the physical memory which has space reserved on the disk paging file(s). There can be one or more paging files on each physical drive. This counter displays the last observed value only, not the average.
IxServer Specific Counters
- Process(IxServer)\%Processor Time: The percentage of elapsed time that all IxServer threads used the processor to execute instructions. Code that was executed to handle some hardware interrupts and trap conditions is included in this count.
- Process(IxServer)\Working Set: The current size (in bytes) of the set of the memory pages touched recently by IxServer threads. If free memory in the computer is above a threshold, pages are left in the Working Set of a process even if they are not in use.
- Process(IxServer)\Handle Count: The total number of handles currently open by IxServer. This number is equal to the sum of the handles currently opened by each thread in IxServer.
- Process(IxServer)\Page File Byte: The current number of bytes that this process has used in the paging file(s). Paging files are used to store pages of memory used by the process that are not contained in the other files. Paging files are shared by all processes, and the lack of space in paging files can prevent other processes from allocation memory.
- Process(IxServer)\Pool Nonpaged Bytes: The size in bytes of the nonpaged pool, an area of system memory (physical memory used by operating system) for objects that cannot be written to disk, but must remain in physical memory as long as they are allocated. Memory\\Pool Nonpaged Bytes is calculated differently than this, so it might not equal Process\\Pool Nonpaged Bytes\\_Total. This counter displays the last observed value only, not an average.
- Process(IxServer)\Pool Paged Bytes: The size in bytes of the paged pool, an area of system memory (physical memory used by the operating system) for objects that can be written to disk when they are not being used. Memory\\Pool Pages Bytes is calculated differently than this, so it might not equal Process\\Pool Pages Bytes\\_Total. This counter displays the last observed value only, not an average.
- Process(IxServer)\Virtual Bytes: The current size, in bytes, of the virtual address space that IxServer is using. Use of virtual address space does not necessarily imply corresponding use of either disk or main memory pages. Virtual space is finite, and the process can limit its ability to load libraries.