All Projects → Zeex → Samp Plugin Profiler

Zeex / Samp Plugin Profiler

Licence: bsd-2-clause
Performance profiler plugin for SA-MP server

Programming Languages

cplusplus
227 projects

Projects that are alternatives of or similar to Samp Plugin Profiler

Qv2ray
⭐ Linux / Windows / macOS 跨平台 V2Ray 客户端 | 支持 VMess / VLESS / SSR / Trojan / Trojan-Go / NaiveProxy / HTTP / HTTPS / SOCKS5 | 使用 C++ / Qt 开发 | 可拓展插件式设计 ⭐
Stars: ✭ 12,886 (+38948.48%)
Mutual labels:  cmake, plugin
Ida Cmake
IDA plugin CMake build-script
Stars: ✭ 30 (-9.09%)
Mutual labels:  cmake, plugin
Sampgdk
Write SA-MP gamemodes in C/C++
Stars: ✭ 113 (+242.42%)
Mutual labels:  cmake, plugin
Fcnpc
FCNPC - Fully Controllable NPC
Stars: ✭ 73 (+121.21%)
Mutual labels:  cmake, plugin
Easyclangcomplete
💥 Robust C/C++ code completion for Sublime Text 3
Stars: ✭ 537 (+1527.27%)
Mutual labels:  cmake, plugin
Sliding up panel
A draggable Flutter widget that makes implementing a SlidingUpPanel much easier!
Stars: ✭ 957 (+2800%)
Mutual labels:  plugin
Cmake
CMake scripts used in Zeek
Stars: ✭ 31 (-6.06%)
Mutual labels:  cmake
Eog panorama
Panorama viewer plugin for the 'Eye of Gnome' image viewer
Stars: ✭ 30 (-9.09%)
Mutual labels:  plugin
Resharper Unity
Unity support for both ReSharper and Rider
Stars: ✭ 953 (+2787.88%)
Mutual labels:  plugin
Scout apm elixir
ScoutAPM Elixir Agent. Supports Phoenix and other frameworks.
Stars: ✭ 33 (+0%)
Mutual labels:  profiler
Zsh Lazyload
zsh plugin for lazy load commands and speed up start up time of zsh
Stars: ✭ 33 (+0%)
Mutual labels:  plugin
Framework7 Upscroller Plugin
A little framework7 plugin to give users a button to scroll up
Stars: ✭ 31 (-6.06%)
Mutual labels:  plugin
Holovid
Stream videos from websites, all in-game!
Stars: ✭ 31 (-6.06%)
Mutual labels:  plugin
Formality
Forms made simple (and cute). Designless, multistep, conversational, secure, all-in-one WordPress forms plugin.
Stars: ✭ 30 (-9.09%)
Mutual labels:  plugin
Skypeweb4adium
Adium protocol plugin to support Skype instant messaging
Stars: ✭ 30 (-9.09%)
Mutual labels:  plugin
Datasette Vega
Datasette plugin for visualizing data using Vega
Stars: ✭ 33 (+0%)
Mutual labels:  plugin
Essentialsnk
Essentials plugin for Nukkit
Stars: ✭ 31 (-6.06%)
Mutual labels:  plugin
Protobuf Cmake
CMake build support for Google Protobufs
Stars: ✭ 32 (-3.03%)
Mutual labels:  cmake
Hello cmake
Stars: ✭ 31 (-6.06%)
Mutual labels:  cmake
Wp Gdpr Core
This WordPress plugin assists you in making your website ready for the GDPR. We try to cover the core WordPress features with this plugin.
Stars: ✭ 31 (-6.06%)
Mutual labels:  plugin

Profiler plugin

Version Build Status Build Status - Windows

Profiler provides detailed information about how long each function takes to execute and how many times it is called. Additionally it can build a call graph based on the collected information.

Installation

  1. Download a binary package n form the Releases page on Github or build it yourself from source code (see below).
  2. Extract/copy profiler.so or profiler.dll to <sever>/plugins/.
  3. Add profiler (Windows) or profiler.so (Linux) to the plugins line of your server.cfg.
  4. Enable profiling of your gamemode or filterscripts via server.cfg (see Configuration).

Binary archives come with an include file (profiler.inc) that contains some helper functions that you may find useful. But you don't need to include it to be able to use the plugin, it's not required.

Configuration

Profiler reads settings from server.cfg, the server configuration file. Below is the list of available settings:

  • profiler_gamemodes <gm_name1> <gm_name2> ...

    Specify which gamemodes should be profiled.

    Names are either gamemodes' file names or paths relative to the gamemodes/ directory in case if the AMX file is not a direct child of gamemodes/.

  • profile_filterscripts <fs_name1> <fs_name2> ...

    Specify which filterscripts should be profiled.

  • profiler_outputformat <format>

    Set statistics output format. This can be one of: html (default), xml, txt.

  • profiler_callgraph <0|1>

    Enable or disable call graph generation. Default is 0.

  • profiler_callgraphformat <format>

    Set call graph format. Currently only the dot format is supported, you can view such files in in Graphviz or WebGraphviz.

Old (deprecated) config variables

  • profile_gamemode <0|1>

    Toggle gamemode profiling. Default is 0.

    Same as setting profiler_gamemodes to the name of the current gamemode.

  • profile_filterscripts <fs_name1> <fs_name2> ...

    Same as profiler_filterscripts.

  • profile_format <format>

    Same as profiler_outputformat.

  • call_graph <0|1>

    Same as profiler_callgraph.

  • call_graph_format <format>

    Same as profiler_callgraphformat.

Building from source code

If you want to build the plugin from source code, e.g. to fix a bug and submit a pull request, simply follow the steps below. You will need a C++ compiler and CMake.

Linux

Install gcc and g++, make and cmake. On Ubuntu you would do that like so:

sudo apt-get install gcc g++ make cmake

If you're on a 64-bit system you'll need additional packages for compiling for 32-bit:

sudo apt-get install gcc-multilib g++-multilib

For CentOS:

yum install gcc gcc-c++ cmake28 make

Now you're ready to build the plugin:

cd profiler
mkdir build && cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release
make

Windows

You'll need to install CMake and Visual Studio (Express edition will suffice). After that, either run cmake from the command line:

cd profiler
mkdir build && cd build
path/to/cmake.exe ../

or do the same from cmake-gui. This will generate a Visual Studio project in the build folder.

To build the project:

path/to/cmake.exe --build . --config Release

You can also build it from within Visual Studio: open build/profiler.sln and go to menu -> Build -> Build Solution (or just press F7).

License

Licensed under the 2-clause BSD license. See LICENSE.txt.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].