0
0
mirror of https://github.com/yse/easy_profiler.git synced 2025-01-01 20:06:16 +08:00

595 Commits

Author SHA1 Message Date
Victor Zarubkin
b8360cd2c2 (GUI) Changed default options in globals 2017-04-17 22:09:53 +03:00
Victor Zarubkin
c80247e645 Update version at readme 2017-04-11 20:00:57 +03:00
Sergey Yagovtsev
d02e568dae v1.1.0 v1.1.0 2017-04-10 23:39:00 +03:00
Victor Zarubkin
c7ba19cb4d (GUI) Fixed warnings 2017-04-10 22:04:09 +03:00
Victor Zarubkin
0d5acc75e2 Linux build: include math.h for fabs 2017-04-10 21:54:54 +03:00
Victor Zarubkin
cbb298dc19 (GUI) Added possibility to adjust selection boundaries with dragging (available for both rulers: black and blue) 2017-04-10 21:33:56 +03:00
Sergey Yagovtsev
f83601d170 Update README.md 2017-04-10 11:14:09 +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
11fd89e7eb Update README.md 2017-04-07 23:51:34 +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
631619865e (GUI) Minor changes to FPS Monitor: added antialiasing and possibility to change line width (via settings) 2017-04-05 22:37:40 +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
28cea458a4 (GUI) New icon for "Clear all" button 2017-04-05 22:34:18 +03:00
Victor Zarubkin
880b35e59a (GUI) FPS Monitor also works while capturing frames 2017-04-03 23:28:19 +03:00
Victor Zarubkin
beba74d559 (GUI) Added real-time FPS Monitor which shows current max/avg frame time in GUI even if profiler is disabled. You just need to connect to the profiled app. You can close (hide) FPS Monitor and it would not send network requests to the profiled application anymore. You can increase/decrease FPS Monitor requests interval in "Settings -> FPS Monitor -> Request interval, ms". Right click on FPS Monitor window to show context menu in which you can clear contents or hide FPS Monitor. 2017-04-03 23:16:36 +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
edcf23e268 Amend last commit 2017-04-02 14:25:46 +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
4b90fc3abb Update README.md 2017-03-30 07:03:11 +03:00
Victor Zarubkin
0f988a663f Update README.md 2017-03-30 06:58:28 +03:00
Victor Zarubkin
08372ac136 Update license 2017-03-30 06:55:15 +03:00
Victor Zarubkin
7f085ef8ac Merge branch 'develop' of https://github.com/yse/easy_profiler into develop 2017-03-30 06:49:06 +03:00
Victor Zarubkin
835e8f0a1f (GUI) Show capture dialog immediately if profiling session has been already enabled. You may now profile everything from the application launch (initialization etc.). 2017-03-30 06:48:58 +03:00
Victor Zarubkin
8ae5139b87 (Core): Trying to reduce data copying while sending profiled information 2017-03-30 06:47:00 +03:00
Sergey Yagovtsev
01ae19e56b Update Readme 2017-03-30 06:30:11 +03:00
Sergey Yagovtsev
f8dbf15ade Update Readme 2017-03-30 06:28:30 +03:00
Sergey Yagovtsev
5e41c946d1 Update Readme 2017-03-30 06:25:07 +03:00
Sergey Yagovtsev
873e7cd732 Update Readme 2017-03-30 06:20:25 +03:00
Sergey Yagovtsev
cd6b186ba4 Update Readme 2017-03-30 06:19:45 +03:00
Sergey Yagovtsev
297174942f Relicense under dual MIT/Apache 2.0 2017-03-30 06:18:29 +03:00
Victor Zarubkin
73fc9d53e8 GUI.HierarchyWidget: changed column names to more compact versions 2017-03-17 00:32:47 +03:00
Victor Zarubkin
b5b743d9ad resolve #20 : You can now turn on an option "Automatically adjust histogram height" (in Settings/View) and histogram height will be adjusted automatically to the visible region (but this restricts you from adjusting manually in zoom mode) 2017-03-13 20:31:59 +03:00
Victor Zarubkin
378533fb9e update #20 : GUI.Histogram: changed interface - Shift + LMB-click (or Wheel) will change top boundary, Ctrl + LMB-click (or Wheel) will change bottom boundary, Any-modifier (Shift, Ctrl, Alt) + RMB-click will pick "Expected frame time" from histogram;
GUI.Histogram: fixed possible concurrent access violations;
GUI.Histogram: optimized histogram painting - preparing image in separate thread, no real-time operations.
2017-03-13 00:43:15 +03:00
Victor Zarubkin
1af9c1bacc GUI.Diagram: changed timeline scale color from gray to darkGray 2017-03-13 00:38:31 +03:00
Victor Zarubkin
620a4da8d3 GUI.Histogram: Fixed possible concurrent access violation; Fixed typos and misspelt words 2017-03-07 19:59:57 +03:00
Victor Zarubkin
ffca37d06d GUI.GraphicsView: Removed unused code 2017-03-07 19:53:09 +03:00
Victor Zarubkin
5e0180f399 amend last commit (adjusted width) 2017-03-07 01:33:43 +03:00
Victor Zarubkin
5efe8c1132 GUI: Changed current-scale indicator appearance (bottom right of the screen) 2017-03-07 01:30:48 +03:00
Victor Zarubkin
9c517c0201 Removed vertical spacing between blocks 2017-03-07 01:19:09 +03:00
Victor Zarubkin
df0ee6ead9 update #20 - Added possibility to change Expected-frame-time via histogram: use Ctrl + LMB 2017-03-07 01:15:25 +03:00
Victor Zarubkin
339f392e7e Merge branch 'develop' of https://github.com/yse/easy_profiler into develop 2017-03-07 00:31:13 +03:00
Victor Zarubkin
648930eba8 update #20 - first manual version of histogram boundary control: Shift + Mouse Wheel == adjust top boundary (max duration); Ctrl + Mouse Wheel == adjust bottom boundary (min duration) 2017-03-07 00:29:34 +03:00
Sergey Yagovtsev
15912970db replace double quotes to angle brackets - fixed #28 2017-03-05 23:50:38 +03:00
Sergey Yagovtsev
6c13b48873 Merge branch 'develop' of github.com:yse/easy_profiler into develop 2017-03-05 23:01:10 +03:00
Sergey Yagovtsev
55000a6325 fixed #27 2017-03-05 22:59:03 +03:00
Victor Zarubkin
973c03f5f5 Removed unused old sources 2017-03-05 11:18:26 +03:00
Sergey Yagovtsev
072fb91467 fixes 26 2017-03-04 13:39:42 +03:00
Victor Zarubkin
95ad72c9a7 A couple of fixes for pull-request 2017-03-03 00:29:45 +03:00
Victor Zarubkin
a9dea6faa6 Merge branch 'rokups-feature/getters' into develop 2017-03-03 00:19:12 +03:00
Sergey Yagovtsev
a0e1ce459f Android build 2017-03-02 16:13:59 +03:00
Rokas Kupstys
8f7ffa9102 Fix atomic memory model in setEventTracingEnabled() 2017-03-02 10:28:43 +02:00
Rokas Kupstys
e7f5cc0748 New API:
* bool isEnabled()
* bool isListening()
* bool isEventTracingEnabled()
* bool isLowPriorityEventTracing()
2017-03-02 10:26:13 +02:00
Sergey Yagovtsev
d89e5ff590 Add select function for checking connection 2017-03-01 20:56:43 +03:00
Sergey Yagovtsev
c9f69f7b25 Update README.md 2017-03-01 13:20:51 +03:00
Rokas Kupstys
88c14e25f6 Fix multiple defined symbols of DEFAULT_ADDRESS on gcc+linux. 2017-03-01 11:12:35 +02:00
Sergey Yagovtsev
3640bae1c8 Update README.md 2017-03-01 12:02:47 +03:00
Sergey Yagovtsev
903817f191 Update README.md 2017-03-01 12:02:22 +03:00
Sergey Yagovtsev
82780a0e71 Update README.md 2017-03-01 11:40:47 +03:00
Sergey Yagovtsev
b5c1e69f8b v1.0.3 v1.0.3 2017-02-28 06:38:30 +03:00
Sergey Yagovtsev
ba0f73bcf6 Install cmake into lib subdir.
Set public target compile definition to BUILD_WITH_EASY_PROFILER.
Install to system directory
2017-02-28 06:32:31 +03:00
Victor Zarubkin
9d88b3d831 prepare for v1.0.3 2017-02-25 14:33:45 +03:00
Victor Zarubkin
c2a4ae3f83 GUI: Removed unused status-bar 2017-02-15 21:45:14 +03:00
Victor Zarubkin
0e6f12e6a2 Icons refactoring and change company name 2017-02-14 22:22:16 +03:00
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