These Performance Monitor counters can be used with TypePerf or LogMan to record Performance data:
Disk: \LogicalDisk(*)\Avg. Disk sec/Read The average time, in seconds, to read a block of data \LogicalDisk(*)\Avg. Disk sec/Write The average time, in seconds, to write a block of data \LogicalDisk(*)\Disk Transfers/sec Rate of read and write operations on the disk (>80/sec) \PhysicalDisk(*)\% Disk Time \PhysicalDisk(*)\Avg. Disk Bytes/Read \PhysicalDisk(*)\Avg. Disk Bytes/Write \PhysicalDisk(*)\Avg. Disk Queue Length \PhysicalDisk(*)\Avg. Disk Read Queue Length \PhysicalDisk(*)\Avg. Disk sec/Read Average time, in seconds, to read a block of data \PhysicalDisk(*)\Avg. Disk sec/Write Average time, in seconds, to write a block of data \PhysicalDisk(*)\Avg. Disk Write Queue Length \PhysicalDisk(*)\Disk Read Bytes/sec \PhysicalDisk(*)\Disk Reads/sec \PhysicalDisk(*)\Disk Transfers/sec \PhysicalDisk(*)\Disk Write Bytes/sec \PhysicalDisk(*)\Disk Writes/sec Processes: \Process(*)\IO Data Operations/sec The rate of file, network and device Reads/Writes. \Process(*)\IO Other Operations/sec The rate of file, network and device I/O's (not read/write) Memory: \Memory\Available MBytes Amount of physical memory available MB (>10%) \Memory\Free System Page Table Entries The no. of page table entries not currently in use (>10000) \Memory\Pages Input/sec The rate at which pages are read from disk (> 10/Sec) \Memory\Pages/sec The rate at which hard page faults are resolved (<1000) \Memory\Page Reads/sec \Memory\Page Writes/sec \Memory\Pages Input/sec \Memory\Pages Output/sec \Memory\Pool Nonpaged Bytes (>40% available) \Memory\Pool Paged Bytes (>40% available) User Mode Memory: \Process(*)\Private Bytes The current non-shared memory consumed by this process, in bytes. \Process(*)\Working Set The current private + shared memory for this process, in bytes. (On Win32 target a 250MB delta between Min size and Max size) (Win64 = 500MB) \Process(*)\Thread Count The no. of threads currently active in this process. \Process(*)\Handle Count How many handles each process has open. Network: \Network Interface(*)\Packets/sec \Network Interface(*)\Output Queue Length (<1 thread waiting) \Network Interface(*)\Bytes Total/sec The rate bytes are sent over each network adapter \Network Interface(*)\Current Bandwidth (<50%) \Server\Bytes Total/sec The no. of bytes sent over the network (<50% of capacity). Processor: \Processor\% Processor Time The primary indicator of processor activity. (<70%) \Processor\% Privileged Time (<75%) \Processor(*)\% Interrupt Time Receiving and servicing hardware interrupts. (<30%) \System\Context Switches/sec Thread re-prioritisation (5000/Sec) \System\Processor Queue Length Threads waiting to execute (<3) \Processor(*)\% User Time SQL Server: \Process(sqlservr)\% Privileged Time \Process(sqlservr)\% Processor Time \Process(sqlservr)\% User Time \Process(sqlservr)\IO Data Operations/sec \Process(sqlservr)\Page Faults/sec \Process(sqlservr)\Private Bytes \Process(sqlservr)\Thread Count \Process(sqlservr)\Virtual Bytes \Process(sqlservr)\Working Set \SQLServer:Buffer Manager\* \SQLServer:Cache Manager(*)\* \SQLServer:Databases(*)\Data File(s) Size (KB) \SQLServer:Databases(*)\Log File(s) Size (KB) \SQLServer:Databases(*)\Transactions/sec \SQLServer:General Statistics\* \SQLServer:Locks(*)\* \SQLServer:Memory Manager\* \SQLServer:SQL Statistics\Batch Requests/sec \SQLServer:SQL Statistics\SQL Compilations/sec \SQLServer:SQL Statistics\SQL Re-Compilations/sec
The values in parenthesis are recommended/typical values, items consistently outside these ranges normally indicate a performance bottleneck. High Memory and CPU figures are not automatically a bad thing, combined with low disk activity this often indicates a well tuned, if busy, system.
Example
The % processor on the local machine: \Processor\% Processor Time
The % processor on a remote machine: \\server214\Processor\% Processor Time
"The time you enjoy wasting is not wasted time” ~ Bertrand Russell
Related
TypePerf - Write performance data to a log file.
LOGMAN - Manage Performance Monitor.
Process Explorer -
Map processes to DLLs and executables.
Using perfmon for Sql Server