0
0
mirror of https://github.com/yse/easy_profiler.git synced 2024-12-27 08:41:02 +08:00

71 Commits

Author SHA1 Message Date
Victor Zarubkin
92a5ca4a75 Big bunch of changes:
* update copyright
* fix css parsing
* fix block name search
* add matching text highlighing for find results
* add calculation of block statistics for selected area
* new action: right-click on a block on "Diagram" selects region using left and right bounds of this block
* other optimizations
2019-10-20 16:12:37 +03:00
Sergey Yagovtsev
53289cec81 Static thread local 2018-09-18 23:20:43 +03:00
Sergey Yagovtsev
99b761375b Remove ATOMIC_VAR_INIT 2018-09-18 22:41:58 +03:00
Matt Chiasson
cd84bb34ce
fixed the build when using Chrono clock
Fixes #128
2018-09-18 14:19:38 -04:00
Victor Zarubkin
0ae430410d #106 [Core][UI] Added possibility to add user bookmarks with double-clicking on a timeline in the Diagram window.
#112 [UI] Fixed losing focus (and getting under MainWindow) for Blocks widget.
#0 [UI] UI styling, added custom window header and dialogs (could be turned off/on and adjusted position at [Settings -> Appearance] menu).
2018-06-09 02:18:39 +03:00
Victor Zarubkin
1301dd05dc #0 [Core] fixed typo 2018-05-15 23:56:29 +03:00
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