Bartosz Taudul
17194cb591
Allow copying callstack frames name/file to clipboard.
2018-06-22 20:44:57 +02:00
Bartosz Taudul
b8f7a4daac
Mention purple line indicating middle of timeline.
2018-06-22 20:34:08 +02:00
Bartosz Taudul
9c2aab733d
Allow centering timeline on memory alloc/free time.
2018-06-22 20:32:38 +02:00
Bartosz Taudul
5f5fe7c6aa
Add tip about centering timeline on message.
2018-06-22 20:23:56 +02:00
Bartosz Taudul
39eccd5b08
Extract "center view at time" function.
2018-06-22 20:21:02 +02:00
Bartosz Taudul
11cf650be6
Fix GPU queries ordering.
...
With multithreaded Vulkan rendering it is possible that GPU time queries
will be sent in a different order than the originating CPU queries were
made. This commit changes the in-order queue to a map of queries,
waiting to be resolved.
2018-06-22 16:37:54 +02:00
Bartosz Taudul
af0c64c888
Remove GPU resync support.
...
The whole concept is not really reliable. And it forces CPU to GPU sync,
which is bad.
2018-06-22 16:34:51 +02:00
Bartosz Taudul
cd5ca3e754
Don't use hash table to store 256 pointers.
2018-06-22 15:14:44 +02:00
Bartosz Taudul
55ddb64352
GPU context counter is now 8 bit.
2018-06-22 15:10:23 +02:00
Bartosz Taudul
d13fc2413f
Highlight callstack button in zone info windows.
2018-06-22 02:24:36 +02:00
Bartosz Taudul
3a885bb8fd
Support callstack collection for OpenGL GPU zones.
2018-06-22 02:13:35 +02:00
Bartosz Taudul
e5f673eaa0
Allow viewing callstack from gpu zone info window.
2018-06-22 01:58:25 +02:00
Bartosz Taudul
35dc2f796e
Process GpuZoneBeginCallstack queue event.
2018-06-22 01:56:32 +02:00
Bartosz Taudul
4992ae6b39
Take callstack field in ZoneEvent into account in save/load.
2018-06-22 01:30:08 +02:00
Bartosz Taudul
e40c5068c9
Allow viewing callstack from zone info window.
2018-06-22 01:21:51 +02:00
Bartosz Taudul
5e01a8ead9
Process callstack queue event.
2018-06-22 01:15:49 +02:00
Bartosz Taudul
205a4e4ca2
Add callstack index to ZoneEvent.
2018-06-22 01:11:03 +02:00
Bartosz Taudul
978e168cbd
Handle ZoneBeginCallstack queue event.
...
This is identical to ZoneBegin handling, but requires some additional
bookkeeping to account for the incoming callstack information.
2018-06-22 01:07:25 +02:00
Bartosz Taudul
3404d191f0
Fix non-unique child ids in memory window.
2018-06-22 00:10:00 +02:00
Bartosz Taudul
3f7ab10323
Don't show line number if it's 0.
2018-06-21 13:26:04 +02:00
Bartosz Taudul
973eab2b4a
Fix typo.
2018-06-20 23:42:00 +02:00
Bartosz Taudul
2a618c90d5
Properly save compressed thread in GPU events.
2018-06-20 23:12:49 +02:00
Bartosz Taudul
cef972fe25
Remove parenthesis from callstack location.
2018-06-20 17:07:48 +02:00
Bartosz Taudul
7912807133
Wait for transfer of pending callback frames.
2018-06-20 14:57:48 +02:00
Bartosz Taudul
60395c85e0
Wait for pending callstacks.
2018-06-20 14:54:08 +02:00
Bartosz Taudul
e95ca3930d
Make all allocation list alloc/free buttons clickable.
2018-06-20 14:50:07 +02:00
Bartosz Taudul
a9fa8f966b
Fix "zone free" indentation in allocation list.
2018-06-20 14:44:24 +02:00
Bartosz Taudul
bc565e65d1
Better callstack info window layout.
2018-06-20 14:41:00 +02:00
Bartosz Taudul
0d509ea3a6
Add missing EndColumns() call.
2018-06-20 14:37:55 +02:00
Bartosz Taudul
be0a70a5c1
Highlight actively inspected callstack.
2018-06-20 13:49:23 +02:00
Bartosz Taudul
15ff98b64a
Push detailed callstack to a separate window.
...
Only show function names (no source files or line numbers) in callstack
tooltip.
2018-06-20 13:23:08 +02:00
Bartosz Taudul
9a5329b97d
Save and load callstack frames.
2018-06-20 01:59:25 +02:00
Bartosz Taudul
e56ee377f4
Fix off-by-one.
2018-06-20 01:54:27 +02:00
Bartosz Taudul
88b1955a5a
Filename in callstack frame is not a persistent pointer.
2018-06-20 01:26:05 +02:00
Bartosz Taudul
56479b86fa
Display frame details in callstack tooltip.
2018-06-20 01:19:10 +02:00
Bartosz Taudul
4000f27e15
Stack frame accessor.
2018-06-20 01:18:59 +02:00
Bartosz Taudul
0c0afa5ac7
Process callstack frames.
2018-06-20 01:07:09 +02:00
Bartosz Taudul
203744cdd9
Callstack frame queries.
2018-06-20 00:25:26 +02:00
Bartosz Taudul
4ba95145da
Display raw callstack payload.
2018-06-19 22:19:33 +02:00
Bartosz Taudul
4eea85fdad
Callstack payload accessor.
2018-06-19 22:19:20 +02:00
Bartosz Taudul
06f34052a5
Have to track callstacks of both alloc and free.
2018-06-19 22:08:47 +02:00
Bartosz Taudul
0de279005b
Load saved callstack payload.
2018-06-19 22:05:15 +02:00
Bartosz Taudul
14b71e988b
Properly skip memory event data.
2018-06-19 22:05:15 +02:00
Bartosz Taudul
4033d74479
Callstack payload index 0 is invalid.
2018-06-19 22:05:15 +02:00
Bartosz Taudul
b6e71dd909
Load memory event callstack index.
2018-06-19 21:51:06 +02:00
Bartosz Taudul
7c1333ce2f
Save callstack payload.
2018-06-19 21:39:52 +02:00
Bartosz Taudul
2940230fcf
Save callstack index in memory events.
2018-06-19 21:39:42 +02:00
Bartosz Taudul
e03493f082
Store callstack index as uint32_t.
2018-06-19 21:39:22 +02:00
Bartosz Taudul
77db91253b
Assign callstack idx to memory event.
2018-06-19 21:34:36 +02:00
Bartosz Taudul
c28465aa7c
Store unique callstack payloads.
2018-06-19 21:16:02 +02:00
Bartosz Taudul
87467a472c
Add variable sized const array.
2018-06-19 21:16:02 +02:00
Bartosz Taudul
cbc9ede3ca
No-op callstack payload handling.
2018-06-19 19:31:16 +02:00
Bartosz Taudul
6a63d09a49
Don't check for each type, if range check is possible.
2018-06-19 19:31:16 +02:00
Bartosz Taudul
e51eef3dcd
Process memory events with callstack.
2018-06-19 18:52:45 +02:00
Bartosz Taudul
59dc55002b
Callstack ptr in server data structures.
...
Will be probably reduced to 32-bit index later on.
2018-06-19 18:52:10 +02:00
Bartosz Taudul
021dd853b9
Differentiate Vulkan/OpenGL in options menu.
2018-06-18 01:08:56 +02:00
Bartosz Taudul
6e1ab9ae7a
Display per-GPU-event threads.
2018-06-17 19:09:56 +02:00
Bartosz Taudul
bb0631585c
Store thread id of GPU events.
2018-06-17 19:07:07 +02:00
Bartosz Taudul
cfd7ac3957
Map compressed thread id 0 to real thread id 0.
2018-06-17 19:03:06 +02:00
Bartosz Taudul
d5a4c693d8
Take GPU timestamp period into account.
2018-06-17 18:49:56 +02:00
Bartosz Taudul
f33584516b
Fix yet another regression.
2018-06-17 18:37:38 +02:00
Bartosz Taudul
cc973a5091
Differentiate Vulkan and OpenGL contexts.
2018-06-17 18:33:05 +02:00
Bartosz Taudul
dcd6cac078
Save GPU timestamp period.
...
Bump file version to 0.3.2.
2018-06-17 18:27:42 +02:00
Bartosz Taudul
2be1d1d2b2
Use proper type.
2018-06-07 13:30:46 +02:00
Bartosz Taudul
6956aed769
Fix selecting last bin with log time in find zone.
2018-06-06 23:36:21 +02:00
Bartosz Taudul
b4ce0c281b
Total time is also already known in compare view.
2018-06-06 23:17:13 +02:00
Bartosz Taudul
d49be792ba
Cache bin containers in compare view.
2018-06-06 23:09:46 +02:00
Bartosz Taudul
da5d35c364
Cache bin containers in find zone.
2018-06-06 23:06:00 +02:00
Bartosz Taudul
2950f3c70c
Total time is already known.
2018-06-06 23:00:18 +02:00
Bartosz Taudul
8a4d88f2b3
tmin and tmax don't change.
2018-06-06 23:00:03 +02:00
Bartosz Taudul
be8d3f47cd
Use fast log10.
2018-06-06 01:59:31 +02:00
Bartosz Taudul
8696c81e7d
Implement fast frexpf.
2018-06-06 01:59:31 +02:00
Bartosz Taudul
60b24249d3
Use explicit value for 1/log2(10).
2018-06-06 01:52:46 +02:00
Bartosz Taudul
39c1b20184
Don't care about previous values.
2018-06-06 01:23:49 +02:00
Bartosz Taudul
1c47e22eca
Add log10f approximation.
...
Based on https://community.arm.com/tools/f/discussions/4292/cmsis-dsp-new-functionality-proposal/22621#22621
2018-06-06 01:23:29 +02:00
Bartosz Taudul
859bf01992
Support displaying self times in statistics view.
2018-06-06 00:47:16 +02:00
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
Bartosz Taudul
3eb73b8d43
Move memory plot reconstruction to a background thread.
2018-04-29 13:40:04 +02:00
Bartosz Taudul
a8ce01eeb1
Push next no space check variant.
2018-04-29 13:39:06 +02:00
Bartosz Taudul
bc84ebc338
Read/write LockEvent data in one go.
2018-04-29 03:41:58 +02:00
Bartosz Taudul
c5133e0b4e
Walk lockmap timeline pointer.
2018-04-29 03:41:58 +02:00
Bartosz Taudul
9769cc4d7d
Read/write most of MemEvent in one go.
2018-04-29 03:41:58 +02:00
Bartosz Taudul
d5f0f0939d
No need to track min memory usage.
...
At least if client instrumentation was not broken and the data makes
sense.
2018-04-29 02:57:20 +02:00
Bartosz Taudul
7fdc6f5453
Zero as initial max value is fine too.
2018-04-29 02:56:23 +02:00
Bartosz Taudul
723f98d24b
Overflow checks are not needed.
2018-04-29 02:47:25 +02:00
Bartosz Taudul
b06f445de9
Don't use stack to write two values...
2018-04-29 02:32:20 +02:00
Bartosz Taudul
333d3a92c8
Perform memory usage calculation on doubles.
2018-04-29 02:29:06 +02:00
Bartosz Taudul
aceaed25b9
Walk plot data pointer.
2018-04-29 02:11:47 +02:00
Bartosz Taudul
868fbace5a
Don't compress thread twice, if it's the same.
2018-04-29 02:04:51 +02:00
Bartosz Taudul
fdaebc2bd8
No need to perform space check here.
2018-04-29 01:38:54 +02:00
Bartosz Taudul
dc1396012e
Add assert checking that there's space.
2018-04-29 01:38:35 +02:00
Bartosz Taudul
d64f0390da
Don't use std::sort.
2018-04-29 01:23:30 +02:00
Bartosz Taudul
925b6c2617
Display y-range of plots.
2018-04-28 16:44:36 +02:00
Bartosz Taudul
7df7bf1745
Begin memory plot with no memory usage.
2018-04-28 16:26:45 +02:00
Bartosz Taudul
a0b8ed2e50
Restore memory plot when loading data dump.
2018-04-28 16:26:45 +02:00
Bartosz Taudul
afa432a087
Non-user plots must have predefined names.
2018-04-28 16:26:45 +02:00
Bartosz Taudul
d8bfe7de2e
Create memory plot based on memory alloc/free events.
2018-04-28 15:49:12 +02:00
Bartosz Taudul
cd34ed6968
Two plot types: user and memory.
...
Only user plots are saved in a dump file.
2018-04-28 15:48:05 +02:00
Bartosz Taudul
2a427ba87a
Fix typo.
2018-04-22 02:24:34 +02:00
Bartosz Taudul
ecabf24c4e
Optional normalization of compared data.
2018-04-22 02:19:22 +02:00
Bartosz Taudul
d06890b55d
Add missing tree pop.
2018-04-22 01:28:55 +02:00
Bartosz Taudul
1fb47899b2
Fix skipping lock data with new dump version.
2018-04-22 01:26:51 +02:00
Bartosz Taudul
470bfb5c02
Don't load unneeded data.
2018-04-22 01:00:17 +02:00
Bartosz Taudul
41738469f1
Add trace compare window.
2018-04-22 00:52:33 +02:00
Bartosz Taudul
436cd2b6cf
Drop '###Profiler' from capture name.
2018-04-21 23:29:28 +02:00
Bartosz Taudul
28380f2d25
Move bad version dialogs to a separate file.
2018-04-21 23:19:48 +02:00
Bartosz Taudul
ea2be1bce9
Fix custom ImVec2 operators.
2018-04-21 23:19:13 +02:00
Bartosz Taudul
1d044b494b
Don't enforce main window buttons width.
2018-04-21 22:42:32 +02:00
Bartosz Taudul
880eb7cbdd
Don't display zone names in find zone menu zones list.
2018-04-21 22:34:19 +02:00
Bartosz Taudul
2ef9fe0743
Enable log time in find zone menu by default.
2018-04-21 22:21:15 +02:00
Bartosz Taudul
d1e185e176
Cleanup message data.
2018-04-21 20:36:33 +02:00
Bartosz Taudul
4cd9cf5dd9
Cleanup zone data.
2018-04-21 20:34:29 +02:00
Bartosz Taudul
0de5bcacaf
Free plot data.
2018-04-21 20:12:16 +02:00
Bartosz Taudul
dda25cf66a
Cosmetics.
2018-04-21 20:11:59 +02:00
Bartosz Taudul
adf8a126c6
More space for text on main window buttons.
2018-04-21 19:30:49 +02:00
Bartosz Taudul
a4e1bb05f3
Use proper format strings.
2018-04-21 19:26:55 +02:00
Bartosz Taudul
ade97b7ab6
Add hours to time-to-string conversion.
2018-04-21 17:01:10 +02:00
Bartosz Taudul
ad91b9b002
Expand maximum view span from 1 minute to 1 hour.
2018-04-21 16:53:17 +02:00
Bartosz Taudul
cb298893e7
Fix skipping lock data.
2018-04-21 16:02:36 +02:00
Bartosz Taudul
121cced681
Don't save unneeded lock data.
...
Store only the minimal lock information required and calculate lock
counts, wait lists, etc. at load time.
2018-04-21 15:42:08 +02:00
Bartosz Taudul
764792d8db
Try to not crash when opening invalid files.
...
Tracy will now perform a number of checks when trying to read a dump
file:
1. The file must have at least 4 bytes of data.
2. There should be a 4 byte header to indicate the file was saved by
tracy. This is a breaking change in file format.
3. Old header-less files are still supported, but there's a new check
for data validity. The first 4 bytes of file (as an uint32) must be
less or equal to max LZ4 data packet size. This requires the first
two bytes to be 00 00 or 00 01, which should catch most invalid
files.
2018-04-21 14:53:40 +02:00
Bartosz Taudul
a63f214964
Use static assert where static assert is due.
2018-04-21 14:47:15 +02:00
Bartosz Taudul
36efe96e9d
Throw exception when trying to open unsupported dump version.
2018-04-21 14:18:42 +02:00
Bartosz Taudul
3793a37b2b
Use small buttons in statistics window.
2018-04-21 14:17:42 +02:00
Bartosz Taudul
d9fd1ce74a
Add dump file header.
2018-04-21 13:45:48 +02:00
Bartosz Taudul
6c2d7628ee
Don't draw off-screen gpu zones.
2018-04-20 23:28:19 +02:00
Bartosz Taudul
a2779eccaf
Don't draw off-screen zones.
2018-04-20 23:19:04 +02:00
Bartosz Taudul
9fc14d2faf
Don't draw off-screen plots.
2018-04-20 23:00:26 +02:00
Bartosz Taudul
cd7a1cffe8
Don't draw off-screen locks.
2018-04-20 22:53:31 +02:00
Bartosz Taudul
723fad84a7
Don't draw off-screen zone timeline labels.
2018-04-20 22:45:29 +02:00
Bartosz Taudul
84fd351fba
Allow partial load of data from dump.
2018-04-20 16:03:09 +02:00
Bartosz Taudul
cc65e52663
Allow skipping data when reading file.
2018-04-20 14:27:20 +02:00
Bartosz Taudul
6120b3e922
Change -1 comparisons to "0" comparisons.
2018-04-14 16:50:04 +02:00
Bartosz Taudul
d0d5528e99
Disable histogram highlight using right mouse button.
2018-04-14 15:21:22 +02:00
Bartosz Taudul
3df7c70f99
Optimize mem alloc processing.
2018-04-10 16:06:01 +02:00
Bartosz Taudul
be50fb26b5
Remove useless assert.
2018-04-10 14:37:17 +02:00
Bartosz Taudul
fd41b4927a
Allow selecting/unselecting all locks for display.
2018-04-09 16:15:40 +02:00
Bartosz Taudul
4e1dbb3973
Fix lock announce processing.
2018-04-09 14:28:40 +02:00
Bartosz Taudul
d4bfbc2797
Allow displaying global statistics of a zone.
2018-04-05 19:31:04 +02:00
Bartosz Taudul
093787b3e8
Move find zone setup to a dedicated function.
2018-04-05 19:30:32 +02:00
Bartosz Taudul
0f95d7fd21
Use lookup table to get memory decay color.
2018-04-05 12:14:26 +02:00
Bartosz Taudul
bb299a5074
Desaturate older allocations on memory map.
2018-04-03 20:38:50 +02:00
Bartosz Taudul
189a4a2e32
Page chunk mask is not needed anymore.
2018-04-03 19:41:11 +02:00
Bartosz Taudul
1182a3fcb8
Stop processing allocations if already at time end.
2018-04-03 19:40:06 +02:00
Bartosz Taudul
b78dc70b70
No need to split address into page and chunk.
2018-04-03 19:39:19 +02:00
Bartosz Taudul
22bd2923eb
Keep mem.low in a register.
2018-04-03 19:35:43 +02:00
Bartosz Taudul
a3dd90529c
Rearrange memory reads.
2018-04-03 19:35:28 +02:00
Bartosz Taudul
197e513727
Add a separate time restriction code path.
2018-04-03 19:34:48 +02:00
Bartosz Taudul
f0573d68bd
Store memory pages in a contiguous memory area.
2018-04-03 19:17:32 +02:00
Bartosz Taudul
5ce3e44c77
Calculate chunks in one place in code.
2018-04-03 18:27:50 +02:00
Bartosz Taudul
bf99bff87d
Store MemEvents directly in the vector.
2018-04-03 14:17:51 +02:00
Bartosz Taudul
bc27c99a1e
Move page init to a non-inlined function.
2018-04-03 13:30:56 +02:00
Bartosz Taudul
6d40502068
Execute direct write to memory, if only one byte.
2018-04-03 13:23:53 +02:00
Bartosz Taudul
81c84025a2
Fix calculation of lines.
2018-04-02 20:11:55 +02:00
Bartosz Taudul
1bb1cf9e6c
Display memory map information.
2018-04-02 20:00:05 +02:00
Bartosz Taudul
78ebf37039
Use proper values for page map calculation.
2018-04-02 19:57:46 +02:00
Bartosz Taudul
a2a6386491
Allow time restricting memory map.
2018-04-02 18:57:24 +02:00
Bartosz Taudul
1c441824fd
Display memory map.
2018-04-02 18:51:32 +02:00
Bartosz Taudul
78cd86dd69
Memory pages bitmap calculation.
2018-04-02 18:51:32 +02:00
Bartosz Taudul
bf249de266
Display memory usage by active allocations.
2018-04-02 16:30:03 +02:00
Bartosz Taudul
670744f852
Move alloc cutoff to middle of timeline.
2018-04-02 16:21:24 +02:00
Bartosz Taudul
7b194d2349
Don't use std::sort.
2018-04-02 16:09:44 +02:00
Bartosz Taudul
e80891e36d
Allow restricting displayed allocs by time.
2018-04-02 16:07:33 +02:00
Bartosz Taudul
c1aaec32d6
Sort active allocations by appearance time.
2018-04-02 15:45:11 +02:00
Bartosz Taudul
38edf308fa
Display memory span.
2018-04-02 14:58:40 +02:00
Bartosz Taudul
821b08fbe4
Thread compression state is not preserved.
2018-04-02 14:52:36 +02:00
Bartosz Taudul
aa8980aacc
Put memory allocations list into a child area.
2018-04-02 14:44:45 +02:00
Bartosz Taudul
8cc446b578
Highlight zones with opened zone info window.
2018-04-02 14:38:08 +02:00
Bartosz Taudul
50eb5c4b84
Highlight same zone alloc+free.
2018-04-02 14:36:07 +02:00
Bartosz Taudul
f7ce3e795f
Display zone if which allocation was freed.
2018-04-02 14:29:56 +02:00
Bartosz Taudul
e1682c7675
Draw active allocations list.
2018-04-02 02:39:12 +02:00
Bartosz Taudul
c4a36398f6
Move memory allocations table drawing to a separate function.
2018-04-02 02:39:12 +02:00
Bartosz Taudul
1fa943d109
Save/load memory data.
2018-04-02 02:05:39 +02:00
Bartosz Taudul
68acc30bdd
Add support for determining FileRead EOF.
2018-04-02 02:05:39 +02:00
Bartosz Taudul
5824b47a66
Display memory usage.
2018-04-02 00:02:45 +02:00
Bartosz Taudul
52f59c90bf
Track memory usage.
2018-04-02 00:00:49 +02:00
Bartosz Taudul
e3509b6eee
Display total number of allocations.
2018-04-01 23:57:18 +02:00
Bartosz Taudul
8efc0a0a71
Display proper hex value.
2018-04-01 22:00:57 +02:00
Bartosz Taudul
3f7abd478e
Display zone in which memory allocation took place.
2018-04-01 21:50:35 +02:00
Bartosz Taudul
912cfdbc5e
Search for zone present in given thread at given time.
2018-04-01 21:47:08 +02:00
Bartosz Taudul
20824a200c
Implement search for memory address.
2018-04-01 21:24:30 +02:00
Bartosz Taudul
c686b86464
Add rudimentary memory information window.
2018-04-01 20:34:58 +02:00
Bartosz Taudul
2d00d95743
Missing initializer.
2018-04-01 20:34:58 +02:00
Bartosz Taudul
cd3bba8063
Memory data accessor.
2018-04-01 20:34:58 +02:00
Bartosz Taudul
a574f98f0c
Memory events are now serialized.
2018-04-01 20:13:01 +02:00
Bartosz Taudul
16a98c8c17
Move benaphore to common directory.
2018-04-01 18:59:55 +02:00
Bartosz Taudul
b12375815c
Broken memory events processing.
2018-04-01 02:03:34 +02:00
Bartosz Taudul
991fc6bd95
Memory allocations tracker.
2018-03-31 21:56:05 +02:00
Bartosz Taudul
c7a5e25c87
Display parent times.
2018-03-28 19:35:33 +02:00
Bartosz Taudul
9d798789a9
Fix broken behavior on duplicate names in zone info window.
2018-03-28 01:57:53 +02:00
Bartosz Taudul
d6bf19a762
Standard zone list behavior in zone trace.
2018-03-28 01:53:59 +02:00
Bartosz Taudul
bf52b3bc98
Add zone trace.
2018-03-28 01:47:28 +02:00
Bartosz Taudul
4d0396fa06
No auto-expand of child zones.
2018-03-28 01:47:20 +02:00
Bartosz Taudul
aebbefde2a
Rename exclusive time to self time.
2018-03-28 01:47:08 +02:00
Bartosz Taudul
f6d4728494
Move child zones into an expandable tree.
2018-03-28 01:34:12 +02:00
Bartosz Taudul
871633cbaf
Adapt button size to font size.
2018-03-25 00:10:31 +01:00
Bartosz Taudul
3567089278
Provide default size for main profiler window.
...
This prevents a crash when loading saved trace with plot.
2018-03-24 22:07:41 +01:00
Bartosz Taudul
1219b72577
Check if match table has content.
2018-03-24 17:32:27 +01:00
Bartosz Taudul
d559da932f
Highlight source location displayed in find zone window.
2018-03-24 17:29:25 +01:00
Bartosz Taudul
ae274d8e37
Different ways of sorting of statistics data.
2018-03-24 17:28:10 +01:00
Bartosz Taudul
b65824d116
Show source location details when one is selected.
2018-03-24 15:20:39 +01:00