Uploaded image for project: 'JikesRVM'
  1. JikesRVM
  2. RVM-475

Move to a workqueue for performance regressions

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Medium
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      Rather than blindly firing off a test every 6 hours, the performance regressions could use a work queue.

      The advantage of this would include:
      1. better coverage over revisions
      2. ability to slowly work through huge backlog (for example when starting a new machine, gradually filling in historical data would be trivial)
      3. better use of machines (when there have been few commits, test untested ones rather than repeatedly test the current revision)

      I can imagine the following design:

      . two pieces of state:

      • the most recent revision tested on this machine
      • a queue of untested revisions

      . use something like the following algorithm

      while()
      c = get current latest revision in svn
      if (c > latest tested)
      for each rev in (latest, c]
      add to workqueue
      t = c
      else
      t = pop workqueue
      fi
      run regression against revision t
      if (t > latest tested)
      latest tested = t
      fi
      done

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                steveblackburn Steve Blackburn
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: