Sergey Yagovtsev
b5c1e69f8b
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
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
Sergey Yagovtsev
d564b6ef4e
Saving files before refreshing line endings
2017-02-08 00:14:49 +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
d338c022fb
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
Victor Zarubkin
8057154fe5
(EasyProfiler.ETW) Fixed typo in system process name
2016-12-27 20:54:10 +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
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
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
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
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
58b1fdb8a3
Define alignment size
2016-12-12 03:13:07 +03:00
Sergey Yagovtsev
4cb7d90e49
Prevent crash on exited thread
2016-12-12 03:12:50 +03:00
Sergey Yagovtsev
98b3ac3a8f
Merge pull-request
2016-12-12 02:24:36 +03:00
Victor Zarubkin
5e4193cb13
(ETW) setDebugPrivelege() rename
2016-12-11 03:31:22 +03:00
Sergey Grivskiy
63e036f11a
custom core library name (for cross-platform build, like easy_profiler_eabihf), ex: "cmake -DLIB_NAME=easy_profiler_x64 ../easy_profiler_core"
2016-12-09 15:01:47 +03:00
Sergey Grivskiy
4db9c82729
fix: wrong results for ARM: empty getCurrentTime() for ARM and other architectures
2016-12-09 15:01:47 +03:00
Victor Zarubkin
88dc699099
No need to check for nullptr while deleting
2016-12-08 22:19:45 +03:00
Victor Zarubkin
041ed6beab
(easy_profiler_core) reader: fixed uint64_t overflow while converting ticks to nanoseconds. TODO: maybe use 128-bit integers in future.
2016-12-04 18:42:32 +03:00
Sergey Yagovtsev
052bd47452
Set CXX standard by cmake
2016-12-04 16:50:58 +03:00
Sergey Yagovtsev
cbbf570fae
Define EASY_PRODUCT_VERSION by concatenating major, minor and patch strings
2016-12-04 16:40:00 +03:00
Sergey Yagovtsev
256f5f6041
Rename src and move include directory
2016-12-02 00:35:25 +03:00