[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#963579: ITP: perfmark-java -- High Performance Tracing Library for Java



Package: wnpp
Severity: wishlist
Owner: Olek Wojnar <olek@debian.org>

* Package name    : perfmark-java
  Version         : 0.19.0
  Upstream Author : Google LLC
* URL             : https://github.com/perfmark/perfmark
* License         : Apache
  Programming Lang: Java
  Description     : High Performance Tracing Library for Java

 Low-overhead, manually-instrumented, tracing library for Java. Users can add
 the tracing function calls to their code to see how long each part takes.
 .
 Features
 .
 * Very Low Overhead: When enabled, tracing a function call adds about 70ns.
   Tracing is done in a lock-free, wait-free, thread local buffer, which
   avoids interfering with your latency-sensitive code.
 .
 * Dynamically Enabled: PerfMark can be enabled or disabled at runtime. When
   disabled, PerfMark has zero overhead, taking advantage of the JIT compiler
   to remove the tracing.
 .
 * Inter-thread Communication: Existing profilers have difficulty expressing
   which thread wakes up and executes work on another thread. PerfMark allows
   users to express this relationship explicitly, making for a clear picture
   of how code flows.
 .
 * Small Library Size: The PerfMark tracing API is only 5 KB in size, and has
   minimal dependencies making it easy to include in other projects. If no
   backend for recording the trace is present, the library safely disables
   itself.
 .
 * Multiple Java Versions: The PerfMark API supports Java 6, making it easy to
   include on older or constrained environments. Additionally, PerfMark
   includes optimized backends for Java 6, Java 7, and Java 9. Each of these
   backends is automatically loaded at runtime (if possible) and uses advanced
   JVM features for maximum speed.
 .
 * Chrome Trace Viewer Integration: PerfMark can export to the Chrome Trace
   Event Format, making it easy to view in your Web Browser.


Reply to: