[ofw] Programatically checking Infiniband performance counters
Moshe Haim
Moshe-ha at orbotech.com
Tue May 6 04:37:13 PDT 2008
> > Looking at the ib_port_counters_t structure I see several fields.
> >
> > The port_xmit_data looks like transferred the data in bytes divided
by
> > 4 - however, it is only 32 bit so it fills up very fast (after
16GB).
>
> Yes; so either the polling needs to account for this or use optional
> extended 64 bit counters if they are supported.
Could you please elaborate on the extended 64 bit counters?
How can I tell if they are supported and how can I access them?
> > 2. How can I reset the counters to 0? I tried using ib_local_mad
with
> > setting the port_xmit_pkts/port_xmit_data to 0 and use mad->method =
> > IB_MAD_METHOD_SET but that doesn't seem to work...
> > I need this since I expect to run for long periods of time and even
> > the port_xmit_pkts will hit its limit.
>
> Did you set PortSelect and CounterSelect ?
I am basically using the code inside vstat_main.c in the function
vstat_get_counters - so PortSelect and CounterSelect are the same
values(portnum and 0xFF respectively), I only changed the mad_in->method
from IB_MAD_METHOD_GET to IB_MAD_METHOD_SET.
I get the following error: ib_local_mad failed with status = 42.
> > Last but not least, is there any plan to add performance counters in
> > windows for WinOF in the future?
>
> In general, there can only be one performance manager owning a node's
> performance counters (assuming they are going to do resets as above).
> PerfMgrs come bundled in a number of different SMs. A more recent
OpenSM
> than what is current in Windows has this as do most if not all vendor
> SMs.
I have WinOF 1.0.1 installed with the OpenSM service started.
So if I understand correctly the version that I have does not manage the
performance counters.
According to what you say I also understand that future versions of the
OpenSM will have Performance Manager that manages the performance
counters - am I correct? If so in which version of WinOF is this planned
for?
Also, when talking about bundled performance managers - do they
automatically reset the counters if they hit the limit, do I interact
with them in order to get/set values for the performance counters?
Thanks,
Moshe.
-----Original Message-----
From: Hal Rosenstock [mailto:hrosenstock at xsigo.com]
Sent: Sunday, May 04, 2008 7:17 PM
To: Moshe Haim
Cc: Tzachi Dar; ofw at lists.openfabrics.org
Subject: RE: [ofw] Programatically checking Infiniband performance
counters
Moshe,
On Sun, 2008-05-04 at 15:46 +0300, Moshe Haim wrote:
> Thanks for the quick reply.
>
>
>
> I have a few additional questions:
>
> Looking at the ib_port_counters_t structure I see several fields.
>
> The port_xmit_data looks like transferred the data in bytes divided by
> 4 - however, it is only 32 bit so it fills up very fast (after 16GB).
Yes; so either the polling needs to account for this or use optional
extended 64 bit counters if they are supported.
> The port_xmit_pkts looks like transferred data in 1KB packets
Just a packet count; nothing related to packet size.
> - so it fills up more slowly:
Yes.
> 1. Can I rely on the packet size being 1KB - if not where can I find
> the packet size definition.
No; the packets are all different sizes depending on the protocols being
used.
> 2. How can I reset the counters to 0? I tried using ib_local_mad with
> setting the port_xmit_pkts/port_xmit_data to 0 and use mad->method =
> IB_MAD_METHOD_SET but that doesn't seem to work...
> I need this since I expect to run for long periods of time and even
> the port_xmit_pkts will hit its limit.
Did you set PortSelect and CounterSelect ?
> Last but not least, is there any plan to add performance counters in
> windows for WinOF in the future?
In general, there can only be one performance manager owning a node's
performance counters (assuming they are going to do resets as above).
PerfMgrs come bundled in a number of different SMs. A more recent OpenSM
than what is current in Windows has this as do most if not all vendor
SMs.
-- Hal
> Thanks,
>
> Moshe.
>
>
>
>
> ______________________________________________________________________
>
> From: Tzachi Dar [mailto:tzachid at mellanox.co.il]
> Sent: Sunday, April 27, 2008 5:51 PM
> To: Moshe Haim; ofw at lists.openfabrics.org
> Subject: RE: [ofw] Programatically checking Infiniband performance
> counters
>
>
>
>
> Using performance counters currently only allows one to get WSD data.
> Since you are working on XP that won't help you. You can use the same
> way that vstat is doing to get that data.
>
>
> In other words, you need to implement the function vstat_get_counters
> () that is using a local mad in order to get that data.
>
>
>
>
>
> You can find this function in the file vstat_main.c (lines 343 - 393)
>
>
>
>
>
> Thanks
>
>
> Tzachi
>
>
>
>
>
> ______________________________________________________________
>
> From:ofw-bounces at lists.openfabrics.org [mailto:ofw-
> bounces at lists.openfabrics.org] On Behalf Of Moshe Haim
> Sent: Sunday, April 27, 2008 5:09 PM
> To: ofw at lists.openfabrics.org
> Subject: [ofw] Programatically checking Infiniband performance
> counters
>
> Hi,
>
>
>
> I am working with Infiniband on Windows XP using the
> WinOF_1.0.1 package.
>
> I need to be able to check the Infiniband performance counters
> in order to estimate traffic over the Infiniband.
>
>
>
> I have seen that using vstat -c the counter information
> appears.
>
> How can I retrieve it not using vstat.exe? Are there any
> performance counters I can check (for instance select them in
> perfmon.exe?), or any other APIs?
>
>
>
> Thanks,
>
> Moshe.
>
>
>
> _______________________________________________
> ofw mailing list
> ofw at lists.openfabrics.org
> http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
More information about the ofw
mailing list