All Projects → hayamiz → perfmonger

hayamiz / perfmonger

Licence: GPL-3.0 license
No description or website provided.

Programming Languages

javascript
184084 projects - #8 most used programming language
go
31211 projects - #10 most used programming language
ruby
36898 projects - #4 most used programming language
HTML
75241 projects
shell
77523 projects
Makefile
30231 projects

Projects that are alternatives of or similar to perfmonger

Pcm
Processor Counter Monitor
Stars: ✭ 1,240 (+3079.49%)
Mutual labels:  cpu, performance-metrics, performance-analysis
Epiboard
Web Extension — A new tab page extension with material design and useful features 🆕 🎉
Stars: ✭ 262 (+571.79%)
Mutual labels:  cpu, storage
Myperf4j
High performance Java APM. Powered by ASM. Try it. Test it. If you feel its better, use it.
Stars: ✭ 2,281 (+5748.72%)
Mutual labels:  performance-metrics, performance-analysis
Corefreq
CoreFreq is a CPU monitoring software designed for the 64-bits Processors.
Stars: ✭ 1,026 (+2530.77%)
Mutual labels:  cpu, performance-metrics
Dynamometer
A tool for scale and performance testing of HDFS with a specific focus on the NameNode.
Stars: ✭ 122 (+212.82%)
Mutual labels:  performance-metrics, performance-analysis
Nemetric
前端性能指标的监控,采集以及上报。用于测量第一个dom生成的时间(FP/FCP/LCP)、用户最早可操作时间(fid|tti)和组件的生命周期性能,,网络状况以及资源大小等等。向监控后台报告实际用户测量值。
Stars: ✭ 145 (+271.79%)
Mutual labels:  performance-metrics, performance-analysis
Detoxinstruments
Detox Instruments is a performance–analysis and testing framework, designed to help developers profile their mobile apps in order to better understand and optimize their app's behavior and performance.
Stars: ✭ 513 (+1215.38%)
Mutual labels:  cpu, performance-analysis
Stackimpact Java
StackImpact Java Profiler - Production-Grade Performance Profiler: CPU, locks, runtime metrics, and more
Stars: ✭ 7 (-82.05%)
Mutual labels:  performance-metrics, performance-analysis
ember-appmetrics
Ember library used to measure various metrics in your Ember app with ultra simple APIs.
Stars: ✭ 16 (-58.97%)
Mutual labels:  performance-metrics, performance-analysis
performance-node
Performance for Node.js
Stars: ✭ 17 (-56.41%)
Mutual labels:  performance-metrics, performance-analysis
snippet-timekeeper
An android library to measure code execution time. No need to remove the measurement code, automatically becomes no-op in the release variants. Does not compromise with the code readability and comes with features that enhance the developer experience.
Stars: ✭ 70 (+79.49%)
Mutual labels:  performance-metrics, performance-analysis
Junitperf
⛵️Junit performance rely on junit5 and jdk8+.(java 性能测试框架)
Stars: ✭ 86 (+120.51%)
Mutual labels:  performance-metrics, performance-analysis
Lighthouse Batch
Run Lighthouse analysis over multiple sites in a single command
Stars: ✭ 83 (+112.82%)
Mutual labels:  performance-metrics, performance-analysis
Speedracer
Collect performance metrics for your library/application.
Stars: ✭ 1,868 (+4689.74%)
Mutual labels:  performance-metrics, performance-analysis
Stackimpact Nodejs
DEPRECATED StackImpact Node.js Profiler - Production-Grade Performance Profiler: CPU, memory allocations, async calls, errors, metrics, and more
Stars: ✭ 46 (+17.95%)
Mutual labels:  performance-metrics, performance-analysis
Scalene
Scalene: a high-performance, high-precision CPU, GPU, and memory profiler for Python
Stars: ✭ 4,819 (+12256.41%)
Mutual labels:  cpu, performance-analysis
Inspectit
inspectIT is the leading Open Source APM (Application Performance Management) tool for analyzing your Java (EE) applications.
Stars: ✭ 513 (+1215.38%)
Mutual labels:  performance-metrics, performance-analysis
Lighthouse
Automated auditing, performance metrics, and best practices for the web.
Stars: ✭ 23,903 (+61189.74%)
Mutual labels:  performance-metrics, performance-analysis
performance-budget-plugin
Perfromance budget plugin for Webpack (https://webpack.js.org/)
Stars: ✭ 65 (+66.67%)
Mutual labels:  performance-metrics, performance-analysis
PerfSpect
system performance characterization tool based on linux perf
Stars: ✭ 45 (+15.38%)
Mutual labels:  performance-metrics, performance-analysis

PerfMonger

Build Status

wercker status

PerfMonger is a system performance monitor which enables high-resolution and holistic performance measurement with the programmer friendly interface.

  • High-resolution: sub-second level monitoring is possible!
  • Holistic performance measurement: monitoring CPU, Disk I/O, Network all at once.
  • Programmer friendly: PerfMonger speaks monitoring results in JSON format, which makes later performance analysis much easier (ex. jq).

CAUTION: PerfMonger is still in early stage, so there may be a drastic change in the future. Do not use it for critical jobs

Target platform

  • GNU/Linux
  • Mac OS X (experimental support)

How to installation

gem install perfmonger

You need gnuplot 4.6.0 or later build with cairo terminals for plotting measurement data with perfmonger plot command.

Build from source

You need Ruby 2.2 or later, and Go 1.8 or later to build perfmonger.

bundle
rake build

Getting started

Basic usage of PerfMonger is:

  • Run perfmonger record to record performance information logs
  • Run perfmonger play to show performance information logs in JSON format

perfmonger play repatedly prints records of system performance including CPU usages, disk usages, and network usages. One line includes only one record, so you can easily process output records with jq, or any scripting languages like Ruby, Python, and etc.

Pretty-printed structure of a record is as follows:

{"time": 1500043743.504, # timestamp in unix epoch time
  "cpu": {               # CPU usages
    "num_core": 2,         # the number of cores
    "all": {               # aggregated CPU usage (max = num_core * 100%)
      "usr": 50.0,
      "sys": 50.0,
      "idle": 100.0,
      ...
    },
    "cores": [             # Usage of each CPU core
      {
        "usr": 25.0,
        "sys": 25.0,
        "idle": 50.0,
        ...
      },
      {
        "usr": 25.0,
        "sys": 25.0,
        "idle": 50.0,
        ...
      }
    ]
  },
  "disk": {             # Disk usages
    "devices": ["sda"],   # List of disk devices
    "sda": {              # Usage of device 'sda'
      "riops": 10.0,        # The number of read I/O per second
      "wiops": 20.0,        # The number of write I/O per second
      "rkbyteps": 80.0,     # Read transfer rate in KB/s
      "wkbyteps": 160.0,    # Write transfer rate in KB/s
      ...
    }
    "total": {           # Aggregated usage of all devices
      "riops": 10.0,
      "wiops": 20.0,
      "rkbyteps": 80.0,
      "wkbyteps": 160.0,
      ...
    }
  }
}

Typical use cases

perfmonger live: live performance monitoring

$ perfmonger live

Monitor IO performance of /dev/sda for each 0.1 second

$ perfmonger record -i 0.1 -d sda

Monitor CPU usage for each 0.1 second

$ perfmonger record -i 0.1

Monitor CPU usage and IO performance of /dev/sda, sdb for each 0.1 second

$ perfmonger record -i 0.1 -d sda -d sdb
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].