Skip to content

Tags: lwllvyb/easy_profiler

Tags

v2.0.1

Toggle v2.0.1's commit message
v2.0.1: Clang build fix, high-dpi displays fix, minor fixes

* (yse#108) Fixed Clang build
* (yse#89) Fixed scaling for high-dpi displays + respecting explicitly set font scaling (Windows)
* Fixed histogram scaling when using mouse wheel
* Updated UI style

v2.0.0

Toggle v2.0.0's commit message
* (yse#31) Added possibility to save user metrics (a.k.a. arbitrary v…

…alues)

  * `#include <easy/arbitrary_value.h>`
  * Use `EASY_VALUE("Name", variable_ref);` // See more options at `easy/arbitrary_value.h`
* Added file converter (currently only .prof to .json is supported)
* (yse#75) There is no need anymore to wait all threads finish their opened frames when dumping blocks to file/stream
* (yse#81) Added CMake option to choose function names format
* Added CMake option `EASY_PROFILER_NO_GUI` to build without `profiler_gui`
* (yse#48) Minimized paddings in .prof file header
* Bug fixes
  * Fixed `EASY_ENABLE_ALIGNMENT` build error
  * (yse#75) Fixed UI freeze when hitting `Cancel` button while transmitting profiled blocks from profiled application to the UI
  * Mac: Added support for building with Apple LLVM clang version < 8.0
    * 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
  * (yse#72) Windows: VS2017 build fix
  * Unix: Context switch logger gets the processor cycle counter instead of time of a day
  * Other bug fixes

* (yse#31) Added arbitrary values viewer
* (yse#100) Added possibility to zoom in selected region
* (yse#91) Added possibility to take a snapshot. Now you can save selected area to separate file. Works both with blue selection (hold right mouse button + move) and black ruler (double-click + hold mouse button + move)
* Improved UI styles
* Blocks histogram (under Diagram scene) is now resizeable
* (yse#89) Added viewport info widget. See [Settings] -> [See viewport info]
* Bug fixes
  * Fixed hierarchy building for zero duration blocks - events and arbitrary values are always visible
  * (yse#89) Trying to fix high-dpi displays problem (maybe not fixed 😞 )
  * Other bug fixes

v2.0.0-beta.1

Toggle v2.0.0-beta.1's commit message
Beta version of release v2.0.

Needed to test fonts issue on high-dpi displays.

v1.2.0

Toggle v1.2.0's commit message
Core

* Added non-scoped block functionality for beginning and ending block manually from different functions. To open block use `EASY_NONSCOPED_BLOCK` macro, to close block use `PROFILER_END_BLOCK`. See yse#29 for more information
* Added new API functions for getting current time (ticks) and converting it to nano- and microseconds:
  * `timestamp_t profiler::currentTime()` returns current time in ticks (or nanoseconds - depends on build options)
* Add following cmake options to easy_profiler_core `CMakeLists.txt`:
  * `BUILD_WITH_CHRONO_STEADY_CLOCK` - use `std::chrono::steady_clock` as a timer. By default is `OFF`
  * `BUILD_WITH_CHRONO_HIGH_RESOLUTION_CLOCK` - use `std::chrono::high_resolution_clock` as a timer. By default is `OFF`

If both is set to `ON` - use `std::chrono::high_resolution_clock`.
If both is set to `OFF` - use `QueryPerformanceCounter/rtdsc` timer.

**_Note_**: Do not forget clean `CMakeCache` file if you've changed an option.

* Calculating total children duration per thread/frame/parent

GUI

* Displaying "total self %" (duration % excluding all children) per thread/frame/parent
* Changed "Connect" button logic: if connected to the profiled application then additional click performs disconnect. Changed appropriate tool-tip.
* Fixed displaying unicode text in popup and at histogram window
* Display current opened file name at the window title;
* Suggest save file name: using current system date and time as file name;
* Checking for unsaved network session before opening new file and before exit.
* Added "Use Right Mouse Button..." hint to Hierarchy window. See yse#35 yse#33
* Changed popup position on Diagram - now it is better positioned for small window also.
* Added additional field "Self" to the popup on Diagram. Self stands for "self duration" (duration excluding all children).
* Clear FPS Monitor contents after successful connect.
* Minor fixes

v1.0.1

Toggle v1.0.1's commit message
(GUI) Fixed wrong hierarchy tree building in "Plain mode" (not all bl…

…ocks were added)