perfstat_hfistat_window 子例程
用途
检索基于主机光纤网接口 (HFI) 窗口的性能统计信息。
库
Perfstat 库 (libperfstat.a)
语法
#include <libperfstat.h>
int perfstat_hfistat_window (name,userbuff,sizeof_userbuff,desired_number)
perfstat_id_window_t* name;
perfstat_hfistat_window_t* userbuff;
int sizeof_userbuff;
int desired_number; 描述
perfstat_hfistat_window 子例程返回 perfstat_hfistat_window_t 结构中主机光纤网接口的基于窗口的性能统计信息。
要获取系统中 HFI 的最大窗口数,请在 name 参数中指定 HFI 名称。 userbuff 参数必须指定为 NULL , sizeof_userbuff 必须等于 sizeof (perfstat_hfistat_window_t) 并且 desired_number 参数的值必须设置为零。
要获取一组或多组基于 HFI 窗口的性能指标,请在 name 参数中指定主机光纤网接口名称,并在 window wid 参数中指定第一个期望的窗口号。 在 desired_number 参数中指定要收集其性能统计信息的 "主机光纤网接口" 窗口的数目。 必须分配 userbuff 参数。
注: perfstat_config () 查询将验证 HFI 统计信息收集是否可用 (perfstat_config (PERFSTAT_QUERY | PERFSTAT_HFISTATS , NULL);)。
参数
| 项 | 描述 |
|---|---|
| 名称-> 名称 | 指定主机光纤网接口。 例如: hfi0, hfi1等。 |
| 名称-> 窗口标识 | 指定第一个期望的窗口标识。 例如: 0 , 1 , 2 , 3 等等。 |
| 用户缓冲区 | 指向要使用 perfstat_hfistat_window_t 结构填充的内存区域。 |
| 大小用户缓冲区 | 指定 perfstat_hfistat_window_t 结构的大小。 |
| 期望数 (desired_number) | 指定要返回的结构数。 |
返回值
除非使用子例程来检索可用结构的数目,否则成功完成时将返回所填充的结构数目。 如果不成功,则返回 -1 ,并设置 errno 全局变量。
错误代码
如果以下情况成立,那么子例程不成功:
| 项 | 描述 |
|---|---|
| EINVAL | 其中一个参数无效。 |
| ENOENT | HFI 统计信息收集当前不可用。 |
文件
libperfstat.h 文件定义标准宏,数据类型和子例程。