All Projects → jzillmann → Jmh Visualizer

jzillmann / Jmh Visualizer

Licence: agpl-3.0
Visually explore your JMH Benchmarks

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Jmh Visualizer

React Native Charts Wrapper
a react native charts wrapper (support android & iOS)
Stars: ✭ 2,111 (+1072.78%)
Mutual labels:  chart
Hand pose action
Dataset and code for the paper "First-Person Hand Action Benchmark with RGB-D Videos and 3D Hand Pose Annotations", CVPR 2018.
Stars: ✭ 173 (-3.89%)
Mutual labels:  benchmark
Gbm Perf
Performance of various open source GBM implementations
Stars: ✭ 177 (-1.67%)
Mutual labels:  benchmark
Pantheon
Pantheon of Congestion Control
Stars: ✭ 170 (-5.56%)
Mutual labels:  benchmark
K8s Wait For
A simple script that allows to wait for a k8s service, job or pods to enter a desired state
Stars: ✭ 172 (-4.44%)
Mutual labels:  chart
React Component Echarts
React component echarts. 组件式百度图表。
Stars: ✭ 175 (-2.78%)
Mutual labels:  chart
Dlbench
Benchmarking State-of-the-Art Deep Learning Software Tools
Stars: ✭ 169 (-6.11%)
Mutual labels:  benchmark
Tsung
Tsung is a high-performance benchmark framework for various protocols including HTTP, XMPP, LDAP, etc.
Stars: ✭ 2,185 (+1113.89%)
Mutual labels:  benchmark
Graphic
A Flutter data visualization library based on Grammar of Graphics.
Stars: ✭ 173 (-3.89%)
Mutual labels:  chart
Tpcds Kit
TPC-DS benchmark kit with some modifications/fixes
Stars: ✭ 176 (-2.22%)
Mutual labels:  benchmark
Regex Benchmark
It's just a simple regex benchmark of different programming languages.
Stars: ✭ 171 (-5%)
Mutual labels:  benchmark
Tcharts.js
📉 Lightweight and fast terminal ASCII charts for nodejs and browser.
Stars: ✭ 172 (-4.44%)
Mutual labels:  chart
Ilgizar Candlestick Panel
Grafana candlestick panel plugin
Stars: ✭ 175 (-2.78%)
Mutual labels:  chart
Stock Chart
基于 canvas 的沪深两市股票分时 K 线图
Stars: ✭ 170 (-5.56%)
Mutual labels:  chart
Lchart
Simple & useful chart for Android
Stars: ✭ 177 (-1.67%)
Mutual labels:  chart
Fancygrid
FancyGrid - JavaScript grid library with charts integration and server communication.
Stars: ✭ 169 (-6.11%)
Mutual labels:  chart
Picasso.js
A charting library streamlined for building interactive visualizations for the Qlik product suites.
Stars: ✭ 175 (-2.78%)
Mutual labels:  chart
Train Ticket
Train Ticket - A Benchmark Microservice System
Stars: ✭ 180 (+0%)
Mutual labels:  benchmark
Sunburstr
R htmlwidget for interactive sunburst plots
Stars: ✭ 177 (-1.67%)
Mutual labels:  chart
Computator.net
Computator.NET is a special kind of numerical software that is fast and easy to use but not worse than others feature-wise. It's features include: - Real and complex functions charts - Real and complex calculator - Real functions numerical calculations including different methods - Over 107 Elementary functions - Over 141 Special functions - Over 21 Matrix functions and operations - Scripting language with power to easy computations including matrices - You can declare your own custom functions with scripting language
Stars: ✭ 174 (-3.33%)
Mutual labels:  chart

JMH Visualizer

Visually explore your JMH Benchmarks! Online version at http://jmh.morethan.io!

Comes with 2 companion projects:

Features

  • Serverless architecture - All happens locally in your browser
  • Visualize the benchmarks of a single run (one JSON file) grouped by benchmark class
    • Vertical bar-chart with score and score error
    • Link to the original JSON
    • Show individual runs as tooltip
  • Compare the benchmarks of 2 runs (two JSON files) grouped by benchmark class
    • Summary of noteable changes
    • Vertical bar-chart from -100% to 100%
    • Link to the original JSON
    • Show score and error of both runs in tooltip
  • Compare the benchmarks of multiple runs (n JSON files) grouped by benchmark class
    • Summary of noteable changes
    • Line chart
    • Show score and error on hover
  • Visualize secondary metrics like '·gc.alloc.rate'
  • Focus on subselection of charts with synced axis scales
  • Load benchmarks from external url or gists

Major Changes

  • Mar 2021 - 0.9.3 Support Gists containing multiple files
  • Aug 2018 - 0.9 Couple of user requested features
  • Jul 2018 - 0.8 Revamp Summary Page + Chart transitions
  • Jan 2018 - 0.7.3 External URL/Gist support
  • Okt 2017 - 0.7 Multi-Run support
  • Aug 2017 - 0.6 Layout change & Summary support
  • Jul 2017 - 0.5 Focussing of benchmarks
  • May 2017 - 0.4 Secondary Metrics support
  • Apr 2017 - 0.3 Error Bars & Params support
  • Nov 2016 - 0.2: Add 2 run compare view
  • Okt 2016 - 0.1: Initial Release

Tips & Tricks

While this app will visualize any valid JMH JSON you throw at it, you can write your benchmarks in a way that make the visualization much more enjoyable...

  • Put those benchmarks in a single class which you most likely wanne compare to each other
  • On the other hand, don't put to much stuff in a single class/chart (since readability will suffer)
  • Don't mix incompatible benchmark styles into one class (like mixing average and single shot is ok, but mixing avarage and throughput doesn't make much sense)
  • Sensibly design your package structure, your class name and you methods names, those are reflected in the auto-generated charts
  • Keep method names short but meaningful
  • The method names reflect initial sort, so if you have benchmarks called 'with1Threads, with10Threads' naming them 'with01Thread, with10Thread' will display nicer

Parameter reference

Name Values What you can do with it? Example
source $url Load a single benchmark result from the provided URL http://jmh.morethan.io?source=https://gist.githubusercontent.com/jzillmann/7d23b2382911cc434754a23773b06598/raw/1bcad4bb64624d8a2be15114a4eee4c406c3ae95/string-concatenation_jdk7.json
sources $url1,$url2,.. Load multiple benchmark results from the provided URLs http://jmh.morethan.io?sources=https://gist.githubusercontent.com/jzillmann/7d23b2382911cc434754a23773b06598/raw/1bcad4bb64624d8a2be15114a4eee4c406c3ae95/string-concatenation_jdk7.json,https://gist.githubusercontent.com/jzillmann/866d39d43b264f507a67368f2313baca/raw/d0ae1502e8c493e6814c83f2df345fecb763c078/string-concatenation_jdk8.json
gist $gistId Load a single benchmark result from the provided gist http://jmh.morethan.io?gist=7d23b2382911cc434754a23773b06598
gist (multi-file) $gistId Load multiple benchmark results from the provided gist http://jmh.morethan.io?gist=4c9e282fff30b5fa455ae2496acf4e05
gists $gistId1,$gistId2,... Load multiple benchmark results from the provided gists http://jmh.morethan.io?gists=7d23b2382911cc434754a23773b06598,866d39d43b264f507a67368f2313baca
topBar oneOf['default', 'off, 'my custom headline'] Control the header Off, Custom Headline

Contribute

Use the issue tracker and/or open pull requests!

Useful Commands

  • npm install Download all necessary npm packages
  • npm run lint Lint the javascript files
  • npm run test Run tests
  • npm run check Run Lint & Test
  • npm run watch Continuously build the project
  • open build/index.html Open the build project in your default browser
  • npm run release Build production version
  • npm run deploy Build production version & move it to the github pages fodler

Realease

  • Increase version in package.json
  • Update README.md in case of major releases
  • npm run deploy
  • commit & push
  • tag with
    • git tag -a $releaseVersion -m "$releaseVersion release"
    • git push --tags

Credits

http://recharts.org/ - The chart ground work

http://www.favicon.cc/ - Created the favicon with

Babel, webpack, react,... and many more for an enjoyable webstack!

Donating

Support via PayPal

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].