Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-18192

TBF: generic combination TBF types with different granularities

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      In the current NRS TBF design, a server classifies the incoming I/O requests into TBF buckets according to the NRS TBF rule with different rate limits.
      The requests in each TBF bucket are scheduled in FIFO order and the RPC rate is limited per TBF bucket based.

      Each TBF bucket is usually in unit of TBF types or the combination of various TBF types. i.e.
      NID TBF. -> (nid)
      JobID TBF -> (jobid)
      UID TBF -> (uid)
      GID TBF -> (gid)
      opcode TBF -> (opcode)
      generic TBF -> (nid, jobid, uid, gid, opcode)

      The more general the scheduling type, the finer the granularity of the scheduling TBF bucket. It will generate much more TBF buckets for various scheduling classes.

      Thus we can define more coarser TBF scheduling types according to the requirement of the users. i.e.

      # lctl set_param ost.OSS.ost_io.nrs_policies="tbf nid+opcode"
      or
      # lctl set_param ost.OSS.ost_io.nrs_policies="tbf uid+gid+nid"
      

      NID+Opcode TBF -> (nid, opcode)
      UID+GID+NID TBF -> (uid, nid, gid)

      Attachments

        Issue Links

          Activity

            People

              qian_wc Qian Yingjin
              qian_wc Qian Yingjin
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: