PP-1250: Process > 3 rpp/tpp messages (from moms) per server iteration

  • Forum discussion
  • Overview: 

    • PBS Pro only processes a fixed number (3) RPP (TPP) packets in the main server thread per iteration. The reason this was there was to interleave processing RPP messages with processing batch request, so as to appear responsive to the batch user. However, the limit of 3 is too restricting.
    • In cases where the number of RPP exchanges are high (large number of nodes, hook distributions, short job sends), processing only 3 messages per iteration leads to:
      • a backlog of rpp (TPP) messages that are reaped by the TPP thread but waiting for the main server thread to process them.
      • a bloat in memory usage of the server since the accumulated messages from moms need to be saved till they are processed.
      • Things like hook updates can get timed out, since the server does not receive the acknowledgements by the set timeout (since it has not processed the received acks).

    Interface: New Server attribute rpp_max_pkt_check to control the number of rpp packets to process per iteration

    • Visibility: Public
    • Change Control: Stable
    • Privilege: manager can set, view-able by anybody.
    • Value: Non-negative integer (Defaults to 64)
    • Detail:  The attribute affects the processing of rpp messages at the server only. It does not affect the processing at the mom side (as currently, the mom process all messages since they have few to deal with at an individual level). Any non-negative value can be set, is retained across server restarts, and can be unset via qmgr as well.
    • Example:
      • qmgr -c "set server rpp_max_pkt_check=2048"  ==> sets the value to 2048

      • qmgr -c "unset server rpp_max_pkt_check"   ====> resets back to default which is 64






OSS Site Map

Project Documentation Main Page

Developer Guide Pages