Quantcast
Channel: VMware Communities : Popular Discussions - Hyperic User Forums
Viewing all articles
Browse latest Browse all 52618

How to get correct Windows virtual memory % usage and Avg Disk R/W Q Len metrics

$
0
0

Hi,

 

Your help is greatly appreciated!  I am getting different Windows metrics values from SIGAR with the values comparison against the Windows Performance Counter Objects.  Below are the detail info:

 

Background

     SIGAR version: 1.6.4  [using Java APIs]

     OS: Windows 64-bit on a quad-processor machine [haven't done the testing on 32-bit yet]

     JRE version: 1.6.x

 

Windows Metrics

  1. Virtual Memory % usage ( _Total):  this is equalvant to Performance Counter Object [paging file\%usage\_Total].
  2. avg Disk Read Queue Length
  3. avg Disk Write Queue Length
  4. System Load for Windows - Will this feature be available in the next release and when will that be?

 

Issues[All SIGAR metrics values were comparing against Windows Performance Counter Object, retrieved by Powershell command + PerfMon + ResourceMonitor.  SIGAR Pdh values are generated by the use of getFormattedValue method, not getRawData. ]

 

    1) Virtual Memory % usage ( _Total):

          - first, used SIGAR Pdh API to retrieve "Paging File" performance counter object.  I am interested in _Total instance.  The returned value is in bytes or so.

          See sample below:

               From SIGAR- Pdh:

Paging File
  \??\C:\pagefile.sys
    % Usage      = 587816.0
    % Usage Peak = 1241303.0
  _Total
   % Usage      = 587816.0
    % Usage Peak = 1241303.0

 

              - switch to use SIGAR Swap object, the returned value does not return what it's expected.  [also compared against Powershell Performance Counter object "Paging File."

 

 

     Result from PowerShell:

 

PS C:\Windows\system32> Get-Counter -counter (get-counter -listset "Paging File").paths

 

Timestamp                 CounterSamples
---------                 --------------
4/2/2013 7:09:55 AM       \\my-xyz\paging file(\??\c:\pagefile.sys)\% usage :
                          14.0746880952221

 

                          \\my-xyz\paging file(_total)\% usage :
                          14.0746880952221

 

                          \\my-xyz\paging file(\??\c:\pagefile.sys)\% usage peak :
                          29.8074013810353

 

                          \\my-xyz\paging file(_total)\% usage peak :
                          29.8074013810353  

 

      2) avg Disk Read Queue Length and avg Disk Write Queue Length (under _Total).  The Pdh of SIGAR does not return comparable values to the Performance Counter object returned by Powershell.  Also, for any returned PhysicalDisk performance counter object, it's my understanding that

          Avg. Disk Queue Length = (Disk Transfers/sec) *( Disk sec/Transfer)

 

        **  Based on the returned values of "Disk Transfers/sec" and "Disk sec/Transfer" from SIGAR Pdh for "PhysicalDisk" can't yeild the multiplication result which agrees with Avg. Disk Queue Length.

 

           - used SIGAR Pdh API to retrieve "PhysicalDisk", see result below:

PhysicalDisk
  0 C:
    Current Disk Queue Length    = 0.0
    % Disk Time                  = 2.126755734E12
    Avg. Disk Queue Length       = 2.126755734E12
    % Disk Read Time             = 1.694475578E12
    Avg. Disk Read Queue Length  = 1.694475578E12
    % Disk Write Time            = 4.32280156E11
    Avg. Disk Write Queue Length = 4.32280156E11
    Avg. Disk sec/Transfer       = 4.5545175873E11
    Avg. Disk sec/Read           = 3.62877536798E11
    Avg. Disk sec/Write          = 9.2574221931E10
    Disk Transfers/sec           = 5589158.0
    Disk Reads/sec               = 1768996.0
    Disk Writes/sec              = 3820162.0
    Disk Bytes/sec               = 1.34747092992E11
    Disk Read Bytes/sec          = 2.4574563328E10
    Disk Write Bytes/sec         = 1.10172529664E11
    Avg. Disk Bytes/Transfer     = 1.34747092992E11
    Avg. Disk Bytes/Read         = 2.4574563328E10
    Avg. Disk Bytes/Write        = 1.10172529664E11
    % Idle Time                  = 1.585261987E12
    Split IO/Sec                 = 339173.0


  _Total
    Current Disk Queue Length    = 0.0
    % Disk Time                  = 2.126755734E12
    Avg. Disk Queue Length       = 2.126755734E12
    % Disk Read Time             = 1.694475578E12
   Avg. Disk Read Queue Length  = 1.694475578E12
    % Disk Write Time            = 4.32280156E11
    Avg. Disk Write Queue Length = 4.32280156E11
    Avg. Disk sec/Transfer       = 4.5545175873E11
    Avg. Disk sec/Read           = 3.62877536798E11
    Avg. Disk sec/Write          = 9.2574221931E10
    Disk Transfers/sec           = 5589158.0
    Disk Reads/sec               = 1768996.0
    Disk Writes/sec              = 3820162.0
    Disk Bytes/sec               = 1.34747092992E11
    Disk Read Bytes/sec          = 2.4574563328E10
    Disk Write Bytes/sec         = 1.10172529664E11
    Avg. Disk Bytes/Transfer     = 1.34747092992E11
    Avg. Disk Bytes/Read         = 2.4574563328E10
    Avg. Disk Bytes/Write        = 1.10172529664E11
    % Idle Time                  = 1.58526202E12
    Split IO/Sec                 = 339173.0

 

            - Use PowerShell get-counter, the returned value are listed below: Please note, for the returned value from Powershell was multiplied by 100 in order to do the comparison.


PS C:\Windows\system32> Get-Counter -counter (get-counter -listset "PhysicalDisk").paths

 

Timestamp                 CounterSamples
---------                 --------------
4/2/2013 7:25:37 AM       \\my-xyz\physicaldisk(0 c:)\current disk queue length :
                          0

 

                          \\my-xyz\physicaldisk(_total)\current disk queue length :
                          0

 

                          \\my-xyz\physicaldisk(0 c:)\% disk time :
                          27.7964698483293

 

                          \\my-xyz\physicaldisk(_total)\% disk time :
                          27.7964698483293

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk queue length :
                          0.277964698483293

 

                          \\my-xyz\physicaldisk(_total)\avg. disk queue length :
                          0.277964698483293

 

                          \\my-xyz\physicaldisk(0 c:)\% disk read time :
                          27.5664990546201

 

                          \\my-xyz\physicaldisk(_total)\% disk read time :
                          27.5664990546201

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk read queue length :
                          0.275664990546201

 

                          \\my-xyz\physicaldisk(_total)\avg. disk read queue length :
                          0.275664990546201

 

                          \\my-xyz\physicaldisk(0 c:)\% disk write time :
                          0.229970793709199

 

                          \\my-xyz\physicaldisk(_total)\% disk write time :
                          0.229970793709199

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk write queue length :
                          0.00229970793709199

 

                          \\my-xyz\physicaldisk(_total)\avg. disk write queue length :
                          0.00229970793709199

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk sec/transfer :
                          0.0126363599431724

 

                          \\my-xyz\physicaldisk(_total)\avg. disk sec/transfer :
                          0.0126363599431724

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk sec/read :
                          0.0275699697366326

 

                          \\my-xyz\physicaldisk(_total)\avg. disk sec/read :
                          0.0275699697366326

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk sec/write :
                          0.000191646202354419

 

                          \\my-xyz\physicaldisk(_total)\avg. disk sec/write :
                          0.000191646202354419

 

                          \\my-xyz\physicaldisk(0 c:)\disk transfers/sec :
                          21.9982434547444

 

                          \\my-xyz\physicaldisk(_total)\disk transfers/sec :
                          21.9982434547444

 

                          \\my-xyz\physicaldisk(0 c:)\disk reads/sec :
                          9.99920157033838

 

                          \\my-xyz\physicaldisk(_total)\disk reads/sec :
                          9.99920157033838

 

                          \\my-xyz\physicaldisk(0 c:)\disk writes/sec :
                          11.9990418844061

 

                          \\my-xyz\physicaldisk(_total)\disk writes/sec :
                          11.9990418844061

 

                          \\my-xyz\physicaldisk(0 c:)\disk bytes/sec :
                          467418.67692641

 

                          \\my-xyz\physicaldisk(_total)\disk bytes/sec :
                          467418.67692641

 

                          \\my-xyz\physicaldisk(0 c:)\disk read bytes/sec :
                          33277.3428260861

 

                          \\my-xyz\physicaldisk(_total)\disk read bytes/sec :
                          33277.3428260861

 

                          \\my-xyz\physicaldisk(0 c:)\disk write bytes/sec :
                          434141.334100324

 

                          \\my-xyz\physicaldisk(_total)\disk write bytes/sec :
                          434141.334100324

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk bytes/transfer :
                          21248

 

                          \\my-xyz\physicaldisk(_total)\avg. disk bytes/transfer :
                          21248

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk bytes/read :
                          3328

 

                          \\my-xyz\physicaldisk(_total)\avg. disk bytes/read :
                          3328

 

                          \\my-xyz\physicaldisk(0 c:)\avg. disk bytes/write :
                          36181.3333333333

 

                          \\my-xyz\physicaldisk(_total)\avg. disk bytes/write :
                          36181.3333333333

 

                          \\my-xyz\physicaldisk(0 c:)\% idle time :
                          75.3204343048433

 

                          \\my-xyz\physicaldisk(_total)\% idle time :
                          75.3204343048433

 

                          \\my-xyz\physicaldisk(0 c:)\split io/sec :
                          3.99968062813535

 

                          \\my-xyz\physicaldisk(_total)\split io/sec :
                          3.99968062813535

 

Again, your help is much appreciated!

 

Best,

-sarah


Viewing all articles
Browse latest Browse all 52618

Trending Articles