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

529 Commits

Author SHA1 Message Date
Victor Zarubkin
6d3a4a0aed MinGW build fixes: Thanks to https://github.com/Nitrotoluol for help! 2017-02-14 21:22:26 +03:00
Victor Zarubkin
d54ef45c3a MinGW adaptation first try 2017-02-13 20:19:41 +03:00
Victor Zarubkin
11fbfe65d4 Added more log messages (logging could be enabled via set(EASY_OPTION_LOG ON) in easy_profiler_core/CMakeLists.txt) 2017-02-08 23:20:09 +03:00
Victor Zarubkin
227a23c266 Added possibility to disable predefined colors palette to reduce binary size when user want to use own colors palette 2017-02-08 22:35:46 +03:00
Victor Zarubkin
105d8334e1 Removed redundant copying of data from std::stringstream to std::ofstream in dumpBlocksToFile() 2017-02-08 22:06:38 +03:00
Victor Zarubkin
c0a23866ed Cross-compiler way of C++11 standard requirement (NOTICE: Need to test on Unix systems) 2017-02-08 21:47:20 +03:00
Victor Zarubkin
c3c9ac8250 Changed default value for minimum blocks width for GUI 2017-02-08 21:47:11 +03:00
Sergey Yagovtsev
048ea7de1f Normalize all the line endings 2017-02-08 00:15:39 +03:00
Sergey Yagovtsev
d564b6ef4e Saving files before refreshing line endings 2017-02-08 00:14:49 +03:00
Sergey Yagovtsev
68a05942fa Unix section for sample 2017-02-07 23:42:43 +03:00
Sergey Yagovtsev
4173c9be3c Merge branch 'SirVer-00_compile_warning_clang' into develop 2017-02-07 23:36:45 +03:00
Holger Rapp
7641951247 Fixes for clang 3.8.
- Disables warnings for no-braced-scalar-init which shows up for ATOMIC_VAR_INIT.
- Fixes compile warnings, mostly "moving a temporary objects prevents
  copy elision" (-Wpessimizing-move) and unused variables.
- Adds some necessary fields to make the sample compile after having
  build the core library.
2017-02-07 17:19:58 +01:00
Sergey Yagovtsev
6f82dbc337 Update README.md 2017-02-07 19:43:24 +04:00
Sergey Yagovtsev
d338c022fb v1.0.2 v1.0.2 2017-02-07 06:22:34 +03:00
Sergey Yagovtsev
7ef004e400 CMake package layout for core 2017-02-07 06:01:26 +03:00
Sergey Yagovtsev
1f919b2b3d Update README.md 2017-01-21 01:53:03 +04:00
Sergey Yagovtsev
75f4a35aa0 Update README.md 2017-01-21 01:28:53 +04:00
Sergey Yagovtsev
870d2b5545 Update README.md 2017-01-21 01:25:06 +04:00
Victor Zarubkin
365d1608be (GUI) Fixed wrong hierarchy tree building in "Plain mode" (not all blocks were added) v1.0.1 2016-12-27 22:33:10 +03:00
Victor Zarubkin
bf7bf10b80 (GUI) Less buggy and more efficient recursive painting algorithm for blocks at diagram. Test mode.
Note: with recursive algorithm it is possible to iterate through blocks in parallel to make painting just more efficient - this is my future todo
2016-12-27 22:07:44 +03:00
Victor Zarubkin
5a14887ec8 Update Readme 2016-12-27 21:01:12 +03:00
Victor Zarubkin
8057154fe5 (EasyProfiler.ETW) Fixed typo in system process name 2016-12-27 20:54:10 +03:00
Victor Zarubkin
b3045c1b68 (GUI) Hystogram painting improvement 2016-12-27 20:53:16 +03:00
Sergey Yagovtsev
31f3bf142b Update Readme 2016-12-25 13:04:25 +03:00
Sergey Yagovtsev
40a0590aff Update Readme 2016-12-25 13:03:47 +03:00
Victor Zarubkin
179aee62fc amend last commit 2016-12-21 23:21:35 +03:00
Victor Zarubkin
4078fe2a4a (GUI) Blocks/files list widget search fix: files are highlighted too 2016-12-21 23:19:22 +03:00
Victor Zarubkin
6d59c53f7a (GUI) Fixed wrong window size calculation for hystogram window 2016-12-21 22:40:06 +03:00
Victor Zarubkin
e9bed4c839 (Core) Major update (file format NOT affected). Description:
1) Added macro EASY_CONST_NAME(name) to make possible to force EasyProfiler think that given block name is const and not changed during application execution (this rely to compile-time strings saved into a run-time variable);
2) Starting from now, EasyProfiler will not store partially finished frames - first, this means that profiler enabled during frame execution will skip all blocks from this frame, and second, this means that when dumping profiled information profiler will wait until all frames finish before dumping blocks.
2016-12-21 21:59:40 +03:00
Victor Zarubkin
5977dbda11 (Core) ETW logging: replaced std::cerr with macro EASY_ETW_LOG to make possible to change output destination 2016-12-21 21:49:29 +03:00
Victor Zarubkin
649eda5641 (GUI) Small alignment fixes 2016-12-21 21:45:11 +03:00
Victor Zarubkin
829ca05e75 (GUI) Added new icon (:/Stop), increased default icon size 2016-12-18 19:16:21 +03:00
Victor Zarubkin
6c403ae4ba (GUI) Asking before restore last connection if could not connect to the new address;
* (GUI) Automatically restore connection on "Start Capture" click if application was disconnected.
2016-12-18 18:27:19 +03:00
Victor Zarubkin
0a57ff381c (GUI) Please, read NOTICE for that commit.
1) Added active time calculation (this is duration excluding context switch time).
2) Columns "Duration", "Self Dur.", "Self %", "% / Frame", "Active time", "Active %" in Plain mode shows total values per frame (sum of all values per frame).
2016-12-18 17:59:41 +03:00
Victor Zarubkin
e5dccfb8be (GUI) Added hierarchy window mode: full hierarchy, plain mode (only functions list) 2016-12-18 15:56:08 +03:00
Victor Zarubkin
1ac9c5c2a0 (EasyHystogramItem) Do not check events when calculating block min duration for selected thread 2016-12-17 16:32:39 +03:00
Victor Zarubkin
bfb81a7db0 CMake: removed tabs from options print 2016-12-17 16:29:03 +03:00
Victor Zarubkin
d85f9864d6 (GUI) Added statistics gathering for context switches (calls number, total duration, % per thread or frame).
Known issue: if context switch events occur out of profiled blocks then percent/thread may be calculated wrong as it is calculating relative to thread profiled time (which may be a very low value).
2016-12-14 23:17:02 +03:00
Victor Zarubkin
8cfeb1b7f2 (Windows ETW) Added process names for pid=4 (System) and threadID=0 (System Idle) 2016-12-14 23:12:16 +03:00
Victor Zarubkin
7883371166 (GUI) Added calculation of thread wait time (sum of all context switches) 2016-12-14 22:16:14 +03:00
Victor Zarubkin
eafcb40970 (GUI) Added possibility to torn on/off decorated thread names (add/don't add "Thread" word info thread name. Example, "Render" convert to "Render Thread", "WorkerThread" "My thread" will not convert in any way). See Settings->View->Use decorated thread names.
* (GUI) Fixed lagging when painting very long block on large scale.
2016-12-14 21:47:33 +03:00
Victor Zarubkin
0304a55c15 (Core) Added macro USING_EASY_PROFILER which is defined when EasyProfiler is actually used. 2016-12-14 21:40:46 +03:00
Victor Zarubkin
7b63ae39d2 CMake + core: added options to CMakeLists.txt. TODO: maybe set them via CMake "option(...)" command 2016-12-13 21:53:29 +03:00
Victor Zarubkin
b67e078e55 (GUI) Fixed division by zero;
* (GUI) Displaying blocks number on hystogram for selected thread
2016-12-12 22:28:54 +03:00
Victor Zarubkin
d88b747c33 Valid version check 2016-12-12 22:26:50 +03:00
Victor Zarubkin
29f81d1244 (Core) Monitoring threads, removing threads without blocks, events and context switches;
* (Core) Context switch events also register threads for current process;
* (Core) Writing process id into output file (old files still could be opened);
2016-12-12 22:26:32 +03:00
Sergey Yagovtsev
039e0a6efa Add next pid to context switch file 2016-12-12 22:01:33 +03:00
Victor Zarubkin
3f64b9fb1c (GUI) Added average time into summary popup 2016-12-12 21:41:48 +03:00
Victor Zarubkin
d4877b59b8 (GUI) Added new regime "Hide min-size blocks" to hide blocks which screen size is less than 'Min blocks size';
(GUI) Slightly more memory effective arch.
2016-12-12 21:39:16 +03:00
Sergey Yagovtsev
58b1fdb8a3 Define alignment size 2016-12-12 03:13:07 +03:00