Bartosz Taudul
e5d35d443d
Missing initializer.
2018-06-06 00:47:11 +02:00
Bartosz Taudul
b7930f67da
Calculate total self time of zones.
2018-06-06 00:39:22 +02:00
Bartosz Taudul
785a30a68b
Implement going to next/previous frame.
2018-06-02 22:27:35 +02:00
Bartosz Taudul
1cddf8436c
ZoomToRange() already enables pause.
2018-06-02 22:09:07 +02:00
Bartosz Taudul
5a7304171d
Fix allocation times displayed in plot tooltip.
2018-05-27 20:22:58 +02:00
Bartosz Taudul
8ed59c261b
Open memory address info after clicking on mem plot item.
2018-05-27 20:17:20 +02:00
Bartosz Taudul
9898066a7a
Display additional memory event info in mem plot tooltips.
2018-05-27 20:11:33 +02:00
Bartosz Taudul
3ea5fd93ed
Simple and not so simple draw plot point functions.
2018-05-27 19:51:45 +02:00
Bartosz Taudul
0a79243332
Display thread from which message originated on msg list.
2018-05-25 21:14:15 +02:00
Bartosz Taudul
53aea660c8
Store thread id in MessageData.
2018-05-25 21:10:38 +02:00
Bartosz Taudul
bb0246730f
Don't save MessageData padding.
...
This requires file version bump to 0.3.1.
2018-05-25 21:10:38 +02:00
Bartosz Taudul
8118e41559
Use columns to display message list.
2018-05-25 21:10:38 +02:00
Bartosz Taudul
312c20b0bc
Fallback to pdqsort if parallel STL is not available.
2018-05-12 22:41:18 +02:00
Bartosz Taudul
920bfc8c82
Parallelize (big) sorts in worker.
2018-05-08 01:40:22 +02:00
Bartosz Taudul
dbc963d55c
Drop template argument from std::lock_guard.
2018-05-08 01:25:16 +02:00
Bartosz Taudul
3768ed5dd7
Don't reconstruct mem plot if there's no mem event data.
2018-05-04 16:08:16 +02:00
Bartosz Taudul
e7ffe288e6
One less FileWrite::Write() call.
2018-05-04 15:11:19 +02:00
Bartosz Taudul
e058bb34c1
CompressThread body must be available.
2018-05-03 18:43:51 +02:00
Bartosz Taudul
a46d27f312
Parallelize file reading.
...
Use spin-locks for synchronization.
IsEOF() is now buggy, but the bug chance is fairly low (1/65536) - it
can happen when the last compressed block has exactly max decompressed
block size. Don't care about it much, as it's only used to open old
archives.
2018-05-03 17:56:43 +02:00
Bartosz Taudul
3d13ea09e8
Move block decompression to a separate function.
2018-05-03 17:29:58 +02:00
Bartosz Taudul
7d32ef8c8b
Restrict mem events list size.
2018-05-02 19:40:35 +02:00
Bartosz Taudul
f2cb04ea8d
Allow going back to the previous zone info.
2018-05-02 19:25:52 +02:00
Bartosz Taudul
1cc798cea3
Construct zone info stack.
2018-05-02 19:23:46 +02:00
Bartosz Taudul
e28022f735
Don't display alloc, free threads on two lines.
2018-05-02 19:07:34 +02:00
Bartosz Taudul
f2f712b8db
Optional display of each mem event in zone info window.
2018-05-02 19:03:34 +02:00
Bartosz Taudul
dac6a65156
Infer total mem usage change from alloc and free changes.
2018-05-02 18:41:11 +02:00
Bartosz Taudul
14ca2198dd
Force inline simple Vector ops.
2018-05-02 18:27:37 +02:00
Bartosz Taudul
bbf1e9f111
Only include memory events from zone thread.
2018-05-02 18:13:13 +02:00
Bartosz Taudul
4584ef9e88
Use memory events to calculate zone memory changes.
2018-05-02 18:06:27 +02:00
Bartosz Taudul
b18841aa75
Store ordered list of memory frees.
2018-05-02 17:59:50 +02:00
Bartosz Taudul
ce1f56ea0f
Display zone memory statistics.
...
Note that this information is incorrect, as it accounts for memory
events in all threads.
2018-05-02 17:46:09 +02:00
Bartosz Taudul
fd59ac0125
Only calculate zone child data if child list is displayed.
2018-05-02 17:23:32 +02:00
Bartosz Taudul
754e79b443
Setup memory plot pointer on dump load.
2018-05-02 17:18:52 +02:00
Bartosz Taudul
1512f3584c
Show appropriate message when there's no memory data collected.
2018-05-01 17:28:02 +02:00
Bartosz Taudul
e5934b409a
Don't use Vector for memory pages storage.
...
Vector has POT data size and we know exactly how much is needed.
2018-05-01 17:26:34 +02:00
Bartosz Taudul
7266a979c3
Omit stack.
2018-05-01 02:13:49 +02:00
Bartosz Taudul
5deeb8426f
Specialized Read function writing directly to registers.
2018-05-01 02:13:49 +02:00
Bartosz Taudul
8beb1c1a39
Add thread compression cache.
...
Observation: calls to CompressThread() are likely to be repeated with
the same value. Exploit that by storing last query and its result.
2018-05-01 01:29:25 +02:00
Bartosz Taudul
ec58aa4ce1
Don't increase vector size in each iteration.
2018-04-30 13:57:12 +02:00
Bartosz Taudul
e41ce5523c
Allow explicit setting of vector size.
2018-04-30 13:56:58 +02:00
Bartosz Taudul
553e3ca38b
Optimize mem plot reconstruction loop.
2018-04-30 13:45:36 +02:00
Bartosz Taudul
76f0c8fafe
Sort source location zones on a separate thread.
2018-04-30 03:54:09 +02:00
Bartosz Taudul
63e4f6fa04
Directly store values.
2018-04-30 03:30:19 +02:00
Bartosz Taudul
8d854b1c8f
Force inline flat_hash_map find.
2018-04-30 03:09:50 +02:00
Bartosz Taudul
a2d3ad35f0
Force inline common slab allocation paths.
2018-04-30 02:47:16 +02:00
Bartosz Taudul
b598300186
Split FileRead::Skip into small and big part.
2018-04-30 02:31:03 +02:00
Bartosz Taudul
b1a440647d
Remove one level of indirection in FileWrite.
2018-04-30 02:29:05 +02:00
Bartosz Taudul
fd46651c32
Remove one level of indirection in FileRead.
2018-04-30 02:26:15 +02:00
Bartosz Taudul
4c521ce92a
Loaded traces may be unloaded.
2018-04-30 01:16:08 +02:00
Bartosz Taudul
e5cb241c19
Optimize creation of vector of frees.
2018-04-29 13:40:47 +02:00