1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 
  16 #ifndef OPAL_BTL_USNIC_STATS_H
  17 #define OPAL_BTL_USNIC_STATS_H
  18 
  19 #include <sys/time.h>
  20 
  21 #include "opal/mca/event/event.h"
  22 
  23 
  24 
  25 
  26 
  27 typedef struct opal_btl_usnic_module_stats_t {
  28     bool final_stats;
  29     uint64_t report_num;
  30 
  31     uint64_t num_total_sends;
  32     uint64_t num_resends;
  33     uint64_t num_timeout_retrans;
  34     uint64_t num_fast_retrans;
  35     uint64_t num_chunk_sends;
  36     uint64_t num_frag_sends;
  37     uint64_t num_ack_sends;
  38 
  39     uint64_t num_total_recvs;
  40     uint64_t num_unk_recvs;
  41     uint64_t num_dup_recvs;
  42     uint64_t num_oow_low_recvs;
  43     uint64_t num_oow_high_recvs;
  44     uint64_t num_frag_recvs;
  45     uint64_t num_chunk_recvs;
  46     uint64_t num_badfrag_recvs;
  47     uint64_t num_ack_recvs;
  48     uint64_t num_old_dup_acks;
  49     uint64_t num_dup_acks;
  50     uint64_t num_recv_reposts;
  51     uint64_t num_crc_errors;
  52 
  53     uint64_t max_sent_window_size;
  54     uint64_t max_rcvd_window_size;
  55 
  56     uint64_t pml_module_sends;
  57     uint64_t pml_send_callbacks;
  58 
  59     uint64_t num_seg_total_completions;
  60     uint64_t num_seg_ack_completions;
  61     uint64_t num_seg_frag_completions;
  62     uint64_t num_seg_chunk_completions;
  63     uint64_t num_seg_recv_completions;
  64 
  65     opal_event_t timer_event;
  66     struct timeval timeout;
  67 } opal_btl_usnic_module_stats_t;
  68 
  69 
  70 
  71 
  72 
  73 
  74 int opal_btl_usnic_stats_init(struct opal_btl_usnic_module_t *module);
  75 
  76 
  77 
  78 
  79 
  80 int opal_btl_usnic_stats_finalize(struct opal_btl_usnic_module_t *module);
  81 
  82 
  83 
  84 
  85 int opal_btl_usnic_setup_mpit_pvars(void);
  86 
  87 #endif