LatencyUtils - Utilities for latency measurement and reporting

  •        24

LatencyUtils is a package that provides latency recording and reporting utilities.

http://LatencyUtils.github.com/LatencyUtils/
https://github.com/LatencyUtils/LatencyUtils
http://latencyutils.github.io/LatencyUtils/

Dependencies:

org.hdrhistogram:HdrHistogram:2.1.8

Tags
Implementation
License
Platform

   




Related Projects

jHiccup - JVM Instrumentation Tool

  •    Java

jHiccup is a non-intrusive instrumentation tool that logs and records platform "hiccups" - including the JVM stalls that often happen when Java applications are executed and/or any OS or hardware platform noise that may cause the running application to not be continuously runnable.

coz - Coz: Causal Profiling

  •    C++

Coz is a new kind of profiler that unlocks optimization opportunities missed by traditional profilers. Coz employs a novel technique we call causal profiling that measures optimization potential. This measurement matches developers' assumptions about profilers: that optimizing highly-ranked code will have the greatest impact on performance. Causal profiling measures optimization potential for serial, parallel, and asynchronous programs without instrumentation of special handling for library calls and concurrency primitives. Instead, a causal profiler uses performance experiments to predict the effect of optimizations. This allows the profiler to establish causality: "optimizing function X will have effect Y," exactly the measurement developers had assumed they were getting all along. Full details of Coz are available in our paper, Coz: Finding Code that Counts with Causal Profiling (pdf), SOSP 2015, October 2015 (recipient of a Best Paper Award).


Java Performance Analysis Tool (Patty)

  •    Java

This profiler (JRE 1.5.0 only) uses JVMTI and native bytecode instrumentation for the analysis of the heap, reachable objects, execution time, garbage collection efficiency, code coverage and thread contention. No preparation steps required in build.

Valgrind

  •    C

Valgrind is an award-winning instrumentation framework for building dynamic analysis tools. There are Valgrind tools that can automatically detect many memory management and threading bugs, and profile your programs in detail. You can also use Valgrind to build new tools.

KCachegrind

  •    KDE

The data files generated by Callgrind can be loaded into KCachegrind for browsing the performance results. This is a GUI/Visualization tool.

riemann-jvm-profiler - Sends stacktrace-level performance data from a JVM process to Riemann.

  •    Clojure

Riemann-jvm-profiler requires no changes to your codebase. You'll need a Riemann server with the websocket/HTTP server (ws-server) accessible from each JVM process. The default Riemann websocket port is 5556.You can add riemann-jvm-profiler artifact to your Maven or Leiningen project via Clojars, and somewhere in your application startup code, invoke the profiler programmatically.

JVM Monitor - Java profiler integrated with Eclipse

  •    Java

JVM Monitor is a Java profiler integrated with Eclipse to monitor CPU, threads and memory usage of Java applications. JVM Monitor would be useful to quickly inspect Java applications without preparing any launch configuration beforehand. JVM Monitor automatically finds the running JVMs on local host and you can easily start monitoring them. It is also supported to monitor Java applications on remote host by giving hostname and port number.

stackimpact-python - StackImpact Python Profiler - Production-Grade Performance Profiler: CPU, memory allocations, blocking calls, exceptions, metrics, and more

  •    Python

StackImpact is a production-grade performance profiler built for both production and development environments. It gives developers continuous and historical code-level view of application performance that is essential for locating CPU, memory allocation and I/O hot spots as well as latency bottlenecks. Included runtime metrics and error monitoring complement profiles for extensive performance analysis. Learn more at stackimpact.com. Learn more on the features page (with screenshots).

pyflame - Pyflame: A Ptracing Profiler For Python

  •    C++

Pyflame is a high performance profiling tool that generates flame graphs for Python. Pyflame is implemented in C++, and uses the Linux ptrace(2) system call to collect profiling information. It can take snapshots of the Python call stack without explicit instrumentation, meaning you can profile a program without modifying its source code. Pyflame is capable of profiling embedded Python interpreters like uWSGI. It fully supports profiling multi-threaded Python programs.Pyflame usually introduces significantly less overhead than the builtin profile (or cProfile) modules, and emits richer profiling data. The profiling overhead is low enough that you can use it to profile live processes in production.

Jensor Java Profiler

  •    Java

Jensor is a light-weight, low-overhead Java Profiler built using Java BCI. Jensor provides innovative analysis modules like JVM Replay, Pattern Analysis and Tagging Engine for technical as well as business analysis based on the same underlying data.

likwid - Performance monitoring and benchmarking suite

  •    C

Likwid is a simple to install and use toolsuite of command line applications for performance oriented programmers. It works for Intel and AMD processors on the Linux operating system.For further information please take a look at the Wiki.

Kamon - Tool for monitoring applications running on the JVM

  •    Scala

Kamon is a reactive-friendly toolkit for monitoring applications that run on top of the JVM. It provides API to manually create metric recording instruments for any application running on the JVM. It provides bytecode instrumentation modules for Scala, Akka, Spray and Play. It supports several reporting backends like StatsD, Datadog and New Relic. It also allows to create custom reports.

flask-profiler - a flask profiler which watches endpoint calls and tries to make some analysis.

  •    Python

In short, if you are curious about what your endpoints are doing and what requests they are receiving, give a try to flask-profiler. With flask-profiler's web interface, you can monitor all your endpoints' performance and investigate endpoints and received requests by drilling down through filters.

goappmonitor - Golang application performance data monitoring.

  •    Go

Golang application performance data monitoring.GoAppMonitor is a library which provides a monitor on your golang applications. It contains system level based monitoring and business level monitoring(custom monitoring).Just add the repository into your apps and register what you want to monitoring.