Commit Graph

110 Commits

Author SHA1 Message Date
John McCutchan d4fbd8309e Ensure TimelineEventRingRecorder outputs blocks in increasing time order
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1283093004 .
2015-08-13 14:22:46 -07:00
John McCutchan f77bab1c62 Allow TimelineAnalysis to work on any TimelineEventRecorder
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1295563002 .
2015-08-13 13:18:26 -07:00
John McCutchan e8d1e85b08 Make TimelineRingRecorder use TimelineEventBlocks
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1287383002 .
2015-08-13 12:46:40 -07:00
John McCutchan 4511599443 Start TimelineAnalysis utility
- Add TimelineEventBlockIterator - iterate over TimelineEventBlocks.
- Add TimelineAnalysisThread - All events for a specific thread.
- Add TimelineAnalysis - Utility for analyzing timeline events.
- Add unit test for TimelineAnalysis thread discovery and block sorting.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1284263002 .
2015-08-12 13:31:31 -07:00
John McCutchan 8872c99a94 Use real process and thread ids when outputting trace-event
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1274953004 .
2015-08-11 10:28:24 -07:00
Daniel Andersson f78fcffcfd Add Thread-based constructors to TimerScope, TimelineDurationScope.
Prepares for helper threads being able to allocate/invoke GC.

Also synchronize access to Heap::gc_in_progress_.

BUG=
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//1285603004 .
2015-08-10 15:24:49 -07:00
John McCutchan 35cd1fa13c Add timeline stream control and trace retrieval to the dart embedder api.
BUG=
R=turnidge@google.com

Review URL: https://codereview.chromium.org//1276903004 .
2015-08-10 13:47:03 -07:00
John McCutchan 4c9e8334c8 Endless thread safe timeline recorder
- Add a block based TimelineEventRecorder.
- Cache a block in each Thread's state.
- Locking is only done when allocating a new block.

R=koda@google.com

Review URL: https://codereview.chromium.org//1275113003 .
2015-08-07 10:55:13 -07:00
John McCutchan f58029a0cd Refactor some Timeline interfaces to be simpler and support streaming
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//1173333007.
2015-06-16 10:52:48 -07:00
John McCutchan c7187924a9 Initial Timeline Events
- Each isolate has its own TimelineEventBuffer
- Each isolate has TimelineEventStreams for API, Compiler, Embedder, Isolate, and GC
- Compiler, Isolate, Embedder, and GC are being inserted into the stream
- Basic unit tests
- Dart API for injecting timeline events
- Arbitrary number of native and Dart arguments can be attached to each event
- JSON printing
- Output can be loaded by about://tracing
- Add --timeline-trace-dir flag

Short term follow up CLS:
- Service protocol requests to enable / disable tracing and retrieve a trace
- UI for Observatory
- Dart code EventStreams and Events

R=asiva@google.com

Review URL: https://codereview.chromium.org//1170503004.
2015-06-16 10:10:14 -07:00