Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-10320

Introduce JobMaster schedule micro-benchmark

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • None
    • None
    • None

    Description

      Based on org.apache.flink.streaming.runtime.io.benchmark stuff and the repo flink-benchmark, I proposal to introduce another micro-benchmark which focuses on JobMaster schedule performance

      Target

      Benchmark how long from JobMaster startup(receive the JobGraph and init) to all tasks RUNNING. Technically we use bounded stream and TM finishes tasks as soon as they arrived. So the real interval we measure is to all tasks FINISHED.

      Case

      1. JobGraph that cover EAGER + PIPELINED edges
      2. JobGraph that cover LAZY_FROM_SOURCES + PIPELINED edges
      3. JobGraph that cover LAZY_FROM_SOURCES + BLOCKING edges
      ps: maybe benchmark if the source is get from InputSplit?

      Implement

      Based on the flink-benchmark repo, we finally run benchmark using jmh. So the whole test suit is separated into two repos. The testing environment could be located in the main repo, maybe under flink-runtime/src/test/java/org/apache/flink/runtime/jobmaster/benchmark.
      To measure the performance of JobMaster scheduling, we need to simulate an environment that:
      1. has a real JobMaster
      2. has a mock/testing ResourceManager that having infinite resource and react immediately.
      3. has a(many?) mock/testing TaskExecutor that deploy and finish tasks immediately.

      trohrmann@apache.org GJL pnowojski could you please review this proposal to help clarify the goal and concrete details? Thanks in advance.

      Any suggestions are welcome.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              tison Zili Chen
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: