1. 23 Mar, 2017 40 commits
  2. 24 Feb, 2017 40 commits
  3. 21 Feb, 2017 40 commits
    • Ulf Hermann's avatar
      QmlProfiler: Change total time and recursion display in statistics · 9f0a51a0
      Ulf Hermann authored
      The total time taken for a program should be the sum of durations of
      events on the bottom of the stack. This is also what the flame graph
      model does, and it results in useful percentages for total and self
      times.
      
      Recursion still has to be accounted for when showing the total time of
      a specific event type, but we mark events with recursive calls and
      show the time and percentage of recursion in the tooltip. As we already
      showed binding loops on bindings and signal handlers before, this
      integrates nicely.
      
      Change-Id: Id4654e314bf86ce8bd06ceaaf93a67187c629adc
      Reviewed-by: Christian Kandeler's avatarChristian Kandeler <christian.kandeler@qt.io>
      Reviewed-by: Ulf Hermann's avatarUlf Hermann <ulf.hermann@qt.io>
      9f0a51a0
  4. 04 Jan, 2017 40 commits
  5. 09 Sep, 2016 40 commits
    • Ulf Hermann's avatar
      QmlProfiler: Keep Compile and QML/JS statistics separate · 0d5f5bdd
      Ulf Hermann authored
      The QML compiler can run asynchronously and produce ranges that don't
      match up with other QML/JS ranges. The statistics model assumes that
      all ranges are perfectly nested, and produces incorrect data if they
      aren't. The compile ranges are perfectly nested among themselves, and
      the other QML/JS ranges are also perfectly nested among themselves, so
      we can fix this by keeping separate statistics for them.
      
      Also, choose a less insane data structure for the relatives model.
      
      Change-Id: I146593b67586e7b5aba6b19d360961c142511289
      Reviewed-by: Kai Koehne's avatarKai Koehne <kai.koehne@qt.io>
      0d5f5bdd
  6. 10 Aug, 2016 40 commits
  7. 10 Jun, 2016 40 commits
  8. 26 May, 2016 40 commits
  9. 23 May, 2016 40 commits
    • Ulf Hermann's avatar
      QmlProfiler: Drive event loading from the model manager · 4a1e5a63
      Ulf Hermann authored
      We want to get rid of the big master list of QmlEvent in
      QmlProfilerDataModel, as that gets very large for longer traces. In
      order to reduce the dependencies on that list we load the events on the
      fly into the child models while they are being received, rather than
      having the child models query QmlProfilerDataModel for the event list
      later.
      
      As the trace client so far only emitted rangedEvent() for complete
      ranges we run into problems with models that need their events sorted.
      The rangedEvent() signals were sorted by end time, rather than start
      time which makes it inconvenient to analyze them in a stack based way,
      for aggregation. This is solved by passing on all the details from the
      trace client to the models, with the QmlProfilerDataModel aggregating
      the type information before having the events dispatched to the child
      models.
      
      Change-Id: I5831a20551f21cf91e27d298a709f604ebd96c3e
      Reviewed-by: Joerg Bornemann's avatarJoerg Bornemann <joerg.bornemann@qt.io>
      Reviewed-by: Ulf Hermann's avatarUlf Hermann <ulf.hermann@qt.io>
      4a1e5a63
    • Ulf Hermann's avatar
      QmlProfiler: Load data event by event in aggregated models · dd87df7e
      Ulf Hermann authored
      This paves the way for driving the event loading from the model
      manager. Also, unify the loading and eliminate the two different
      classes for the children models.
      
      Change-Id: Ic89e757963292d75b3b6fd7d6012f09194dff5a9
      Reviewed-by: default avatarAlex Blasche <alexander.blasche@theqtcompany.com>
      Reviewed-by: Ulf Hermann's avatarUlf Hermann <ulf.hermann@qt.io>
      dd87df7e
    • Ulf Hermann's avatar
      QmlProfiler: Methods for dispatching events by feature · 1e8996b4
      Ulf Hermann authored
      When announcing features models have to provide functions that handle
      events for those features now. The model manager gets a function to
      dispatch events to the models that subscribe to them.
      
      Change-Id: I3fd80443a68ba264a513d8d53ed473cf072f1dc7
      Reviewed-by: Joerg Bornemann's avatarJoerg Bornemann <joerg.bornemann@qt.io>
      1e8996b4
    • Ulf Hermann's avatar
      QmlProfiler: Remove detailed progress tracking · 1093be04
      Ulf Hermann authored
      The progress bar in the state widget was rather meaningless. We rarely
      know how many events we expect and it's rather hard to tell how long
      each model will take to process them. Instead, we just show a 0-ranged
      progress bar to tell the user that "something is happening".
      
      Change-Id: Icb80840d1f0a1538bcf254faa37cbb36e25d342c
      Reviewed-by: Joerg Bornemann's avatarJoerg Bornemann <joerg.bornemann@qt.io>
      1093be04
  10. 06 May, 2016 40 commits
  11. 04 May, 2016 40 commits
  12. 03 May, 2016 40 commits
  13. 19 Jan, 2016 40 commits
  14. 06 Jan, 2016 40 commits
  15. 03 Dec, 2015 40 commits
  16. 17 Nov, 2015 40 commits
  17. 02 Nov, 2015 40 commits
  18. 11 Sep, 2015 40 commits
  19. 09 Sep, 2015 40 commits
  20. 02 Jul, 2015 40 commits
  21. 02 Apr, 2015 40 commits
  22. 16 Jan, 2015 40 commits
  23. 21 Nov, 2014 40 commits
  24. 15 Oct, 2014 40 commits
  25. 09 Oct, 2014 40 commits
  26. 15 Sep, 2014 40 commits
  27. 19 Jun, 2014 40 commits
  28. 18 Jun, 2014 40 commits
  29. 17 Jun, 2014 40 commits
  30. 06 Jun, 2014 40 commits
  31. 10 Mar, 2014 40 commits
  32. 19 Feb, 2014 40 commits