Victor Zarubkin
ef7d9f0bad
#81 [Core] Added an option to choose function names format
2017-11-28 21:37:18 +03:00
Victor Zarubkin
109c5fc47c
#0 [GUI] Styling
2017-11-23 22:01:44 +03:00
Victor Zarubkin
66dce34169
#31 arbitrary value interface small refactoring
2017-11-20 23:36:33 +03:00
Victor Zarubkin
07cdde155a
#0 MSVC2013 build
2017-11-20 21:53:12 +03:00
Victor Zarubkin
3b809fa6f3
Merge branch 'origin/develop' into release_2_0
2017-11-20 21:34:03 +03:00
Mika Rautio
e5fd86f9c8
Add support for building with Apple LLVM clang version < 8.0 ( #82 )
...
* Add support for building with pre 2016 Apple LLVM clang
* Automatically detect Apple clang that do not support thread_local
* Clarify clang thread_local support code comment
2017-11-20 20:23:15 +03:00
Victor Zarubkin
b3fd7c7837
#31 Single arbitrary values can be displayed in GUI as events + value converted to text
2017-11-15 21:43:52 +03:00
Victor Zarubkin
ae4c6c4e9f
#0 [Core][GUI] refactoring
2017-11-09 23:34:17 +03:00
Victor Zarubkin
530eb2446c
#0 [Core] A lot of code refactoring
2017-11-09 23:12:54 +03:00
Victor Zarubkin
c2de745445
#0 [Core] Rearranged include files
2017-11-09 22:01:32 +03:00
Victor Zarubkin
8509b9b01b
Merge branch 'origin/develop' into issue31_arbitrary_values
2017-11-08 21:50:25 +03:00
Victor Zarubkin
eef1dab923
#31 [Core] further work on arbitrary values
2017-11-08 21:38:07 +03:00
Victor Zarubkin
a0ab6a9000
#0 [Core] Added constexpr support macros and refactored extract_... functions
2017-11-08 21:34:51 +03:00
Sebastian Bischlager
23cf75fea4
Fixed #72 Where building x86 binaries with VS 2017 resulted in an internal compiler error
2017-11-06 18:00:37 +01:00
Victor Zarubkin
52f3823b57
Merge branch 'origin/develop' into issue31_arbitrary_values
2017-11-02 22:49:12 +03:00
Victor Zarubkin
4bf796cb7a
#75 [GUI] ui is not freezed now when you hit Cancel button while profiled blocks are prepared to be sent
2017-11-02 22:43:37 +03:00
Victor Zarubkin
cac628ce82
#31 added arbitrary value id
2017-10-21 01:57:48 +03:00
Victor Zarubkin
e9e937551e
#31 build fix
2017-10-21 00:55:17 +03:00
Victor Zarubkin
86f7a48995
#31 intermediate commit: added basic API for arbitrary values profiling. Still not working.
2017-10-20 22:18:32 +03:00
Victor Zarubkin
65bfb94276
#0 [Core] Refactoring: moved all types from profiler.h to separate file
2017-10-05 20:53:41 +03:00
Victor Zarubkin
5e2d8e3be6
#0 [Core] Added alias for isEnabled, setEnabled functions and macros
2017-10-04 21:40:23 +03:00
Victor Zarubkin
c6ff9f3277
#0 [Core] Replacing tabs with spaces
2017-09-28 21:05:45 +03:00
rationalcoder
75e4f35abe
Added EASY_FORCE_INLINE
2017-08-19 22:08:27 -05:00
Liareth
b0aae2349c
Added the /WX flag, which treats compiler warnings as errors in MSVC.
...
* This required a minor change to CMakeLists.txt.
* Also updated two occurrences in code where compilation failed due to
implicit narrowing conversions.
2017-08-09 17:53:28 +01:00
Rokas Kupstys
941f7a4b45
Fix for static build.
...
Fix for c++11 on apple systems.
2017-06-13 18:57:53 +03:00
Victor Zarubkin
93c3066095
update #42 : Slightly better solution with less amount of black magic - different data structures for context switch events. Core API changed!
2017-06-07 01:39:45 +03:00
Sergey Yagovtsev
b14dbef78d
update #42 : linux build
2017-06-06 23:52:18 +03:00
Victor Zarubkin
4a9daf3bb4
update #42 : fixed possible statistics display bug; work around storing 64-bit thread id for context switch events (requires testing);
...
* (GUI) Added popup window when moving mouse cursor to thread name in Diagram window;
2017-06-06 20:46:06 +03:00
Victor Zarubkin
65ac892e32
Fixing problems after changing thread_id_t to uint64_t from uint32_t: There is still a big problem with target-thread ids of context-switch events on *nix systems (it has been stored in block_id_t which is uint32_t and now it requires Core API changes to support new thread_id_t). Also there is a problem with statistics displaying (for top-level blocks parent_index had value of thread-id, it requires a work around now).
2017-06-05 21:24:01 +03:00
Sergey Yagovtsev
ccd0626bf8
backward compatibility with old size of thread_id_t. For #41
2017-06-05 12:57:12 +03:00
Rokas Kupstys
08ae417931
Few more MacOS fixes.
...
Thread id changed to size_t, required for MacOS because older versions do not have integral thread ids and we must use a pointer returned by pthread_self()/
2017-05-23 19:49:21 +03:00
Victor Zarubkin
d1e68e0cec
(Core) Calculating total children duration per thread/frame/parent
2017-04-20 22:29:02 +03:00
Victor Zarubkin
c2b3a8f5dc
(Core) Update #29 - added non-scoped block functionality for beginning and ending block manually from different functions.
...
(Core) Added new API functions for getting current time (ticks) and converting it to nano- and microseconds.
2017-04-17 22:27:10 +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
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
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
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
Sergey Yagovtsev
297174942f
Relicense under dual MIT/Apache 2.0
2017-03-30 06:18:29 +03:00
Sergey Yagovtsev
15912970db
replace double quotes to angle brackets - fixed #28
2017-03-05 23:50:38 +03:00
Sergey Yagovtsev
55000a6325
fixed #27
2017-03-05 22:59:03 +03:00
Sergey Yagovtsev
072fb91467
fixes 26
2017-03-04 13:39:42 +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
e7f5cc0748
New API:
...
* bool isEnabled()
* bool isListening()
* bool isEventTracingEnabled()
* bool isLowPriorityEventTracing()
2017-03-02 10:26:13 +02:00
Rokas Kupstys
88c14e25f6
Fix multiple defined symbols of DEFAULT_ADDRESS
on gcc+linux.
2017-03-01 11:12:35 +02:00
Victor Zarubkin
d54ef45c3a
MinGW adaptation first try
2017-02-13 20:19:41 +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
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
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