Victor Zarubkin
33946770bb
(profiler_core) Windows build fix
2016-09-06 00:22:26 +03:00
Sergey Yagovtsev
9521f8ac02
Store context switch timestamp on linux.
...
It's need to run systemtap util for loading kernel module. This kernel module capture context switch timestamp and systemtap store it in the temp file.
Before running profiling application you should run systemtap script with root privileges as following:
\# stap -o /tmp/cs_profiling_info.log scripts/context_switch_logger.stp name APPLICATION_NAME
where APPLICATION_NAME is profiling application
2016-09-05 22:11:03 +03:00
Victor Zarubkin
f5ed51e13a
Event tracing fixes! Now working :)
2016-09-04 19:35:58 +03:00
Victor Zarubkin
05b56dcec0
First debuggable version of system event tracing for visualizing thread context switches
2016-09-04 14:48:35 +03:00
Victor Zarubkin
342a95108c
Merge branch 'new_api' of https://github.com/yse/easy_profiler into new_api
2016-09-01 22:24:59 +03:00
Victor Zarubkin
937f7d8fec
(profiler_core) Correcting: checking built-in "_WIN32" instead of compiler dependant "WIN32"
2016-09-01 22:22:58 +03:00
Sergey Yagovtsev
88de665df9
clang warning fix
2016-08-31 21:51:22 +03:00
Sergey Yagovtsev
d8f44ba559
Gcc compile fix
2016-08-31 21:51:00 +03:00
Victor Zarubkin
eaa79a4c4c
(profiler_core) Fixed logic mistake in base api
2016-08-30 20:46:39 +03:00
Victor Zarubkin
71f95f2c87
(profiler_core) Simplifying API: there are ~1.5 times lower macros number for using profiler.
2016-08-28 23:40:23 +03:00
Victor Zarubkin
aa0d96d0e6
Remastering profiler API. All projects are compiled successfully, but there is an error occured during read/write .prof file
2016-08-28 18:22:45 +03:00
Victor Zarubkin
439e1cfb44
Remastering profiler API (not compiling yet)
2016-08-28 02:41:02 +03:00
Victor Zarubkin
3e1b8ce46f
(profiler core) The right way of avoiding static analyzer warnings ^_^ No need to insert unnecessary checks
2016-08-21 14:46:16 +03:00
Sergey Yagovtsev
9f6ca63440
(profiler core) fix clang static analyzer warnings
2016-08-19 00:35:45 +03:00
Victor Zarubkin
197a585307
(profiler core) Warning: .prof file format changed! New SerializedBlock format, less allocations and copy, only single allocation in fillTreesFromFile(). Memory consumption reduced. Also speed up statistics gathering by moving calculations into several threads.
2016-08-14 22:22:44 +03:00
Victor Zarubkin
13997f6187
(profiler core) revert variables order change (prevois change may affect file read/write)
2016-08-14 16:50:17 +03:00
Victor Zarubkin
d38c869330
Memory consumtion optimization (almost 2 times less memory used on Windows)
2016-08-14 16:05:10 +03:00
Victor Zarubkin
3fd0b77d16
(profiler core) Prepare for source file and line writing
2016-08-11 23:52:33 +03:00
Sergey Yagovtsev
98a3dd7114
Fix typo in SerializedBlock class name
2016-08-07 21:40:23 +03:00
Victor Zarubkin
b39057049e
(profiler) Proper color names and 6 new colors
2016-08-07 19:31:09 +03:00
Victor Zarubkin
bfe2e44456
(profiler Core fix) Thread-safety fixes
2016-08-02 21:44:11 +03:00
Victor Zarubkin
fd67a3d81b
(profiler Optimizations) PROFILER_SET_THREAD_NAME uses static variable, so profiler::setThreadName() will be invoked only once;
...
(profiler Optimizations) removed unnecessary profiler::Block creation from profiler::setThreadName();
(profiler Optimizations) removed statics from getCurrentTime() function - more correct static usage.
2016-08-02 21:18:04 +03:00
Sergey Yagovtsev
dd2deaf36f
Add macro for specifying thread name
2016-07-31 22:12:11 +03:00
Sergey Yagovtsev
82e9920e15
Add dumpBLocksToFile function
2016-07-04 22:53:02 +03:00
Victor Zarubkin
94add93883
const modifiers for const methods
2016-06-26 02:12:27 +03:00
Victor Zarubkin
aa8fde2434
removed unnecessary memory allocation
2016-06-25 23:10:05 +03:00
Victor Zarubkin
dba149c1e6
refactoring: proper types
2016-06-25 17:17:44 +03:00
Sergey Yagovtsev
b26673b8ba
Build if profiler disabled
2016-06-20 22:43:45 +03:00
Sergey Yagovtsev
7713f91500
Create tree structure
2016-06-17 16:31:09 +03:00
Sergey Yagovtsev
dfa583f410
Simple tree view
2016-05-01 23:32:46 +03:00
Sergey Yagovtsev
691c2953a4
Change color type. Now color is 8bit instead of 16bit. Add helper function for converting to RGB
2016-03-04 11:59:36 +03:00
Sergey Yagovtsev
2266de8346
Add more colors
2016-03-03 16:22:48 +03:00
Sergey Yagovtsev
309da55899
Move colors enumenator to main header
2016-03-03 15:48:00 +03:00
Sergey Yagovtsev
9fa0b890d8
Add colors header
2016-03-03 15:35:23 +03:00
Sergey Yagovtsev
b422da141d
1) Add documentation
...
2) Fix win warnings
2016-03-03 14:55:38 +03:00
Sergey Yagovtsev
0d986a6464
Move serialized block in header
2016-02-24 06:31:05 +03:00
Sergey Yagovtsev
9cf3ca02b7
1) Removed Mark entity. Only Block with type
...
2) Added simple implementation of serializing blocks and storing it.
2016-02-20 05:24:12 +03:00
Sergey Yagovtsev
2bba307998
Added empty profiler macros. Enabled if defined FULL_DISABLE_PROFILER definition
2016-02-18 23:50:06 +03:00
Sergey Yagovtsev
dbe5af1125
Added logic of push/pop blocks
2016-02-18 19:27:17 +03:00
Sergey Yagovtsev
d643242885
Added function beginBlock
2016-02-18 00:45:13 +03:00
Sergey Yagovtsev
a5730169cc
Fixed some warnings
2016-02-17 23:43:37 +03:00
Sergey Yagovtsev
434622e282
Linux build
2016-02-17 23:24:35 +03:00
Sergey Yagovtsev
b5848ea7a6
Added new line in files
2016-02-16 23:25:12 +03:00
Sergey Yagovtsev
c60ac3ea85
Initial commit
2016-02-16 23:21:12 +03:00