Victor Zarubkin
82bc0c3901
#0 [Core] Windows build
2018-05-08 01:37:35 +03:00
Victor Zarubkin
8c90ee7ef5
#0 [Core] refactoring
2018-05-07 21:42:17 +03:00
Victor Zarubkin
3253fe2633
#48 [Core] Rearranged file header members order to minimize padding;
...
[Core] Changed version to 2.0.0;
2018-04-02 01:53:29 +03:00
Victor Zarubkin
5e632bedee
#31 [Core] Arbitrary values: replaced size_t with uint16_t; [Gui] Added support of arrays to arbitrary values tree
2018-03-07 20:52:39 +03:00
Victor Zarubkin
192ab87e4c
#0 Simplified some lambdas
2018-01-29 23:42:18 +03:00
Victor Zarubkin
091d5447ce
#0 Updated copyright dates; [Gui] thread_pool.cpp MSVC build fix; [Core] Renamed getCurrentTime() to profiler::clock::now() + renamed profiler::currentTime() to profiler::now()
2018-01-29 23:29:43 +03:00
Victor Zarubkin
22c61a42b5
#75 [Core] No waiting when dumping blocks. All events should now be stored properly.
2018-01-08 02:56:51 +03:00
Victor Zarubkin
2c008b77ed
Merge remote-tracking branch 'origin/develop' into release_2_0
...
# Conflicts:
# easy_profiler_core/block.cpp
# easy_profiler_core/profile_manager.cpp
# easy_profiler_core/reader.cpp
# profiler_gui/common_types.h
# profiler_gui/descriptors_tree_widget.cpp
2018-01-04 17:59:21 +03:00
uykusuz
50cd560722
#0 : various fixes for windows build ( #84 )
...
* #0 : various fixes for windows build
* remove warnings that definition of a variable hides previously defined ones
* remove warnings that function argument is not used
* remove warnings that statements are not reached
* event_trace_win: fix compilation with UNICODE
* #0 various windows fixes: react to PR comments
* localize unicode handling of process info to ProcessInfo
* fix compilation error in Properties constructor
* event_trace_win: fix bug in ProcessInfo initialization
We didn't retry setting the name when GetModuleBaseName() didn't succeed,
even though we did that before the last refactoring.
* Revert "event_trace_win: fix bug in ProcessInfo initialization"
This reverts commit c4ce6cf488be5489fa0a1a9c24e92dd39bbc42a1.
* Revert "#0 various windows fixes: react to PR comments"
This reverts commit cae31a25371e53a3645ddab82372c3772138d658.
* #0 various windows fixes: react to PR comments again
* keep number of allocations minimal
* add getProcessName() to retrieve the process name as char always (i.e. not UNICODE)
2018-01-04 17:15:02 +03:00
Victor Zarubkin
d049a1339e
#75 [Core] No more waiting behavior when dumping blocks. Current solution resolves possible dead-lock but restricts any Events out of Frame bounds (You can see that the last event for LoadingResources thread in the profiler_sample is always absent).
2017-12-28 22:21:54 +03:00
Sergey Yagovtsev
941c5667bd
minor refactoring
2017-12-28 00:00:20 +03:00
Victor Zarubkin
b73044fddd
#31 [Core] Fixed issue with storing arbitrary value while dumping. // [GUI] Further values viewer progress.
2017-12-14 23:12:27 +03:00
Victor Zarubkin
b3fd7c7837
#31 Single arbitrary values can be displayed in GUI as events + value converted to text
2017-11-15 21:43:52 +03:00
Victor Zarubkin
e0190fe7a3
#0 Windows build
2017-11-09 23:56:46 +03:00
Victor Zarubkin
ae4c6c4e9f
#0 [Core][GUI] refactoring
2017-11-09 23:34:17 +03:00
Victor Zarubkin
530eb2446c
#0 [Core] A lot of code refactoring
2017-11-09 23:12:54 +03:00
Victor Zarubkin
eef1dab923
#31 [Core] further work on arbitrary values
2017-11-08 21:38:07 +03:00
Victor Zarubkin
52f3823b57
Merge branch 'origin/develop' into issue31_arbitrary_values
2017-11-02 22:49:12 +03:00
Victor Zarubkin
4bf796cb7a
#75 [GUI] ui is not freezed now when you hit Cancel button while profiled blocks are prepared to be sent
2017-11-02 22:43:37 +03:00
Victor Zarubkin
cac628ce82
#31 added arbitrary value id
2017-10-21 01:57:48 +03:00
Victor Zarubkin
86f7a48995
#31 intermediate commit: added basic API for arbitrary values profiling. Still not working.
2017-10-20 22:18:32 +03:00
Victor Zarubkin
1f8cc6346c
#0 [Core] Suppress warning for unused variable
2017-10-04 22:46:13 +03:00
Victor Zarubkin
d5f2ef0c6c
#0 Build fix + reduced number of thread-local variables
2017-09-30 20:45:06 +03:00
Victor Zarubkin
c7b9d4f464
#0 [Core] Refactoring: moved a lot of code to different source files
2017-09-30 19:51:33 +03:00
Victor Zarubkin
e6765a03a2
#53 [Unix][Core] Correction for printing a lot of warnings only if there is no thread_local support
2017-09-30 19:02:24 +03:00
Victor Zarubkin
c813ea655d
#53 [Core] Fixed problem with removing ThreadStorage for alive threads. But Linux would have another problem: potential memory leak or potential crash at your choise :)) because these wonderful pthreads does not allow to check thread state :(
2017-09-28 21:04:28 +03:00
Blake Martin
01415cbdb8
Again, auto can only add to confusion here.
2017-08-22 15:07:37 -05:00
Blake Martin
28f755e0b3
There is no point in using auto here.
2017-08-16 16:17:11 -05:00
Karim Naaji
504648d613
Fix mac os build
...
- Work around lack of clock_gettime() on OS X
2017-06-12 11:30:01 -04:00
Sergey Yagovtsev
c608665e06
Remove log about client connection
2017-06-12 01:04:51 +03:00
Sergey Yagovtsev
71ffde98de
fix #46
2017-06-11 19:34:28 +03:00
Victor Zarubkin
48fb240ca0
#37 Replaced std::string with char* for NonscopedBlock with manual memory management
2017-06-07 20:50:16 +03:00
Victor Zarubkin
93c3066095
update #42 : Slightly better solution with less amount of black magic - different data structures for context switch events. Core API changed!
2017-06-07 01:39:45 +03:00
Victor Zarubkin
4a9daf3bb4
update #42 : fixed possible statistics display bug; work around storing 64-bit thread id for context switch events (requires testing);
...
* (GUI) Added popup window when moving mouse cursor to thread name in Diagram window;
2017-06-06 20:46:06 +03:00
Victor Zarubkin
65ac892e32
Fixing problems after changing thread_id_t to uint64_t from uint32_t: There is still a big problem with target-thread ids of context-switch events on *nix systems (it has been stored in block_id_t which is uint32_t and now it requires Core API changes to support new thread_id_t). Also there is a problem with statistics displaying (for top-level blocks parent_index had value of thread-id, it requires a work around now).
2017-06-05 21:24:01 +03:00
Victor Zarubkin
714e4e0bab
(Core) #39 Added macros for possibility to choose std::chrono timer type: EASY_CHRONO_HIGHRES_CLOCK for high_resolution_clock and EASY_CHRONO_STEADY_CLOCK for steady_clock - Use it in CMakeLists.txt
2017-05-04 21:40:48 +03:00
Victor Zarubkin
50b3cc8b7a
(Core) Fixed old typo in ProfileManager::setBlockStatus()
2017-05-03 21:18:14 +03:00
Victor Zarubkin
593395a4aa
(Core) #37 No manual ~string() call
2017-04-30 00:17:15 +03:00
Victor Zarubkin
dff1d8b2a4
(Core) Update #29 : fixed potential memory leak for NonscopedBlock + linux build
2017-04-17 23:31:07 +03:00
Victor Zarubkin
c2b3a8f5dc
(Core) Update #29 - added non-scoped block functionality for beginning and ending block manually from different functions.
...
(Core) Added new API functions for getting current time (ticks) and converting it to nano- and microseconds.
2017-04-17 22:27:10 +03:00
Victor Zarubkin
f17aa956cd
(Core) Add main thread check
2017-04-09 10:23:59 +03:00
Victor Zarubkin
f00d731da4
(Core) Fixed main thread name compare
2017-04-09 09:12:27 +03:00
Victor Zarubkin
a9d13deb18
(Core) Fixed serious error caused by invoking endBlock() while dumping blocks to stream/file
2017-04-06 23:10:14 +03:00
Victor Zarubkin
654bfdf9da
(Core) Fix incorrect storing
2017-04-06 22:59:33 +03:00
Victor Zarubkin
c8e97dac26
(Core) Fixed average frame duration calculation; Fixed addBlockDescription crash when dll/so has been unloaded and loaded again.
2017-04-05 22:36:06 +03:00
Victor Zarubkin
8b7a68266c
(Core) Added new API functions for requesting local-average frame duration (like local-max)
2017-04-03 23:08:52 +03:00
Victor Zarubkin
a2b62613a2
(Core) Frame counter: significantly simplified interface - there is no need to start frame counter explicitly. Top block is frame.
2017-04-02 14:23:11 +03:00
Victor Zarubkin
10b04a4748
(Core) First step for getting frame time at run-time.
...
Now you can use EASY_FRAME_COUNTER (which is only frame-counter) or EASY_FRAME (which is EASY_FRAME_COUNTER + EASY_BLOCK) or EASY_FRAME_FUNCTION (which is EASY_FRAME_COUNTER + EASY_FUNCTION) to measure frame time even if profiler is disabled.
To get frame time you can use profiler::main_thread::frameTimeLocalMax to get maximum frame duration since last call or profiler::main_thread::frameTime to get last frame time.
--- NOTE: You have to put EASY_MAIN_THREAD to your main thread to be able to use profiler::main_thread functions.
If you do not want to then you can use same functions from profiler::this_thread, but you will have to call them from your main thread.
2017-03-31 21:17:08 +03:00
Victor Zarubkin
08372ac136
Update license
2017-03-30 06:55:15 +03:00
Victor Zarubkin
8ae5139b87
(Core): Trying to reduce data copying while sending profiled information
2017-03-30 06:47:00 +03:00