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

112 Commits

Author SHA1 Message Date
Sergey Yagovtsev
6939f053c9 Add checkResult function for socket 2016-09-18 16:43:43 +03:00
Sergey Yagovtsev
c316734e8f Fix disconnect problem on downloading 2016-09-16 22:51:15 +03:00
Sergey Yagovtsev
82079f43da linux client socket fix 2016-09-16 22:23:04 +03:00
Sergey Yagovtsev
52a9862963 Correct receiving 2016-09-16 02:11:11 +03:00
Sergey Yagovtsev
f4676ced6f sleep for 1 second 2016-09-16 01:37:50 +03:00
Sergey Yagovtsev
4b71a64363 Merge commit 2016-09-16 00:53:27 +03:00
Sergey Yagovtsev
d5f6aa94b1 Add checking for empty sync list.
(cherry picked from commit ef60d553c064341ab714a79e8e12d5363b35081e)
2016-09-16 00:19:03 +03:00
Sergey Yagovtsev
ef60d553c0 Add checking for empty sync list. 2016-09-15 23:30:36 +03:00
Victor Zarubkin
4a40872183 (profiler_core) Added possibility to control event tracing priority level and to enable/disable event tracing at all. 2016-09-15 23:15:07 +03:00
Sergey Yagovtsev
61589c1154 Merge commit 2016-09-15 22:49:56 +03:00
Victor Zarubkin
f0ee9215bd Warnings fix 2016-09-14 23:34:56 +03:00
Victor Zarubkin
795d347d2a Linux build 2016-09-14 23:23:09 +03:00
Sergey Yagovtsev
80892e636e Receive by EasySocket 2016-09-14 22:04:15 +03:00
Victor Zarubkin
86314b89ba (profiler_core) Windows event tracing: if we can't get process name at the moment, write process id at least 2016-09-14 21:53:06 +03:00
Victor Zarubkin
fdee7226f8 (profiler_gui) More information in popup; Right way to remove QGraphicsProxyWidget from scene (it does not delete widget by itself) 2016-09-13 23:44:20 +03:00
Victor Zarubkin
313f981cc9 Fix CMakeLists.txt 2016-09-13 23:13:11 +03:00
Victor Zarubkin
1b33ad788d (profiler_core) Further work with run-time enable/disable blocks;
(profiler_core) Fixed bug with memory corruption in chunk_allocator;
(profiler_core) Event tracing now gathering info about process which owns thread;
(profiler_core) Thread names are stored before other blocks now;
(profiler_core) Removed unused block types: context switch and thread sign;
(profiler_core) Added some description for API;
(profiler_gui) Context switch events now painted in different colors: red = switch to another process, coral = switch to registered thread in the same process, black = switch to kernel mode (thread id == 0).
(profiler_gui) Added popup windows with information about context-switch or block under mouse cursor;
2016-09-13 23:03:01 +03:00
Victor Zarubkin
f490641165 forgotten row 2016-09-13 22:53:07 +03:00
Sergey Yagovtsev
6d6ad61a18 Add connect button 2016-09-13 21:42:38 +03:00
Sergey Yagovtsev
3181b867b1 Windows socket connection 2016-09-12 22:10:45 +03:00
Sergey Yagovtsev
0fe6690545 Add server function for EasySock 2016-09-12 21:28:15 +03:00
Sergey Yagovtsev
7b502c5a5d Fix typo 2016-09-12 20:16:05 +03:00
Sergey Yagovtsev
0a98d032d0 Windows almost work 2016-09-11 18:23:47 +03:00
Victor Zarubkin
d5d75d6340 (profiler_core) Further work with real-time enable/disable of blocks;
(profiler_core) Optimized storeBlock() algorithm, removed unnecessary std::vector;
(profiler_core) Writing to std::stringstream and then to file (prepare for streaming over WAN/LAN);
(profiler_core) Moved hached_cstr into separate header.
2016-09-11 16:57:35 +03:00
Sergey Yagovtsev
03765b08bc Not compiling version of windows sock 2016-09-09 06:14:34 +03:00
Victor Zarubkin
9294ddb61b (profiler_core) Prepare for blocks enable/disable;
(profiler_core) Changed order of read/write of context switches as a preparation work to statistics gathering taking into account context switches duration.
2016-09-09 00:09:47 +03:00
Sergey Yagovtsev
f95d88bb1a Add interface for EasySocket 2016-09-08 23:34:04 +03:00
Sergey Yagovtsev
a422f69deb More stability in networking 2016-09-08 23:15:01 +03:00
Victor Zarubkin
248348ee05 (EasyGraphicsView) Added widget displaying thread names on scene. Double click on thread name makes it current selected thread.
(EasyGraphicsView) Selected item's text is now painted bold + removed selected item color, but made selected item's border more wide.
(profiler_gui) Colors adjustment.
2016-09-08 22:42:35 +03:00
Sergey Yagovtsev
20d3fb47a6 First steps in network. Work on linux 2016-09-08 21:03:40 +03:00
Sergey Yagovtsev
1edb71a6eb Minor style fix 2016-09-07 22:25:32 +03:00
Victor Zarubkin
68bbd0eef3 Merge branch 'event_tracing' of https://github.com/yse/easy_profiler into event_tracing 2016-09-07 21:52:40 +03:00
Sergey Yagovtsev
39e68b4adc ci clang compiler fix attempt number three =| 2016-09-07 21:50:42 +03:00
Victor Zarubkin
6e845eece2 Using Google Material Design colors;
* At last, fixed bug with text paint on very large scene scale. Now you can scale the scene up to 10 ns scale!
2016-09-07 21:48:50 +03:00
Sergey Yagovtsev
9eb02316ba ci clang compiler fix attempt number two =) 2016-09-07 21:45:25 +03:00
Sergey Yagovtsev
26fe3ca7e0 ci clang compiler fix attempt 2016-09-07 21:40:40 +03:00
Sergey Yagovtsev
cd39507389 Replace tab to whitespaces 2016-09-07 21:32:14 +03:00
Victor Zarubkin
3699a07e41 Merge branch 'event_tracing' of https://github.com/yse/easy_profiler into event_tracing
# Conflicts:
#	src/profile_manager.cpp
2016-09-06 23:07:56 +03:00
Victor Zarubkin
10bb3da45b (profiler_core) !! Non-blocking API using Thread-Local-Storage (threal_local or __declspec(thread) or __thread) 2016-09-06 23:03:05 +03:00
Sergey Yagovtsev
68ee40a5ad Replace tab to whitespaces 2016-09-06 22:23:55 +03:00
Sergey Yagovtsev
ede383be3c Add licence text to some file 2016-09-06 22:15:50 +03:00
Victor Zarubkin
31705d5daf (profiler_core) Better way of declaring generic stack 2016-09-06 22:00:53 +03:00
Victor Zarubkin
e4db8cabe4 (profiler_core) Measure core functions work time 2016-09-06 21:52:56 +03:00
Victor Zarubkin
591f613ff6 License text + small clean-up 2016-09-06 21:49:32 +03:00
Victor Zarubkin
f25ba79636 (profiler_core) Event tracing clean-up 2016-09-06 00:24:21 +03:00
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
Sergey Yagovtsev
6d1b9915d2 Get thread id on linux by syscall instead of std::this_thread 2016-09-05 22:02:32 +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