All Projects → alacritty → Vtebench

alacritty / Vtebench

Licence: other
Generate benchmarks for terminal emulators

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Vtebench

Typin
Declarative framework for interactive CLI applications
Stars: ✭ 126 (-3.82%)
Mutual labels:  terminal
Neix
neix - a RSS/Atom feed reader for your terminal.
Stars: ✭ 128 (-2.29%)
Mutual labels:  terminal
Web Bluetooth Terminal
Progressive Web Application for serial communication with your own Bluetooth Low Energy (Smart) devices
Stars: ✭ 130 (-0.76%)
Mutual labels:  terminal
P2plab
performance benchmark infrastructure for IPLD DAGs
Stars: ✭ 126 (-3.82%)
Mutual labels:  benchmark
Pyxtermjs
A fully functional terminal in your browser.
Stars: ✭ 127 (-3.05%)
Mutual labels:  terminal
Sty
String styling for your terminal.
Stars: ✭ 129 (-1.53%)
Mutual labels:  terminal
Nnn
n³ The unorthodox terminal file manager
Stars: ✭ 13,138 (+9929.01%)
Mutual labels:  terminal
Quickwall
Set latest wallpapers from Unsplash from the commandline
Stars: ✭ 131 (+0%)
Mutual labels:  terminal
Hyperterm Overlay
A complete and customizable solution for a overlay window in your Hyper.app
Stars: ✭ 127 (-3.05%)
Mutual labels:  terminal
Hpatches Benchmark
Python & Matlab code for local feature descriptor evaluation with the HPatches dataset.
Stars: ✭ 129 (-1.53%)
Mutual labels:  benchmark
Actors
Evaluation of API and performance of different actor libraries
Stars: ✭ 125 (-4.58%)
Mutual labels:  benchmark
Desktoppr
Simple command line tool to set the desktop picture on macOS
Stars: ✭ 127 (-3.05%)
Mutual labels:  terminal
Ansiweather
Weather in terminal, with ANSI colors and Unicode symbols
Stars: ✭ 1,663 (+1169.47%)
Mutual labels:  terminal
Nas Benchmark
"NAS evaluation is frustratingly hard", ICLR2020
Stars: ✭ 126 (-3.82%)
Mutual labels:  benchmark
Progressbar
A really basic thread-safe progress bar for Golang applications
Stars: ✭ 2,212 (+1588.55%)
Mutual labels:  terminal
Meter
Meter - is a simple micro-benchmarking tool for Android (and Java) projects. This is not a profiler, this is very small utility class that designed for making benchmarking easy. Nothing more. Alternative to Android Jetpack Benchmark.
Stars: ✭ 125 (-4.58%)
Mutual labels:  benchmark
Panda Motd
a utility for generating a more useful MOTD
Stars: ✭ 129 (-1.53%)
Mutual labels:  terminal
Gatling Dubbo
A gatling plugin for running load tests on Apache Dubbo(https://github.com/apache/incubator-dubbo) and other java ecosystem.
Stars: ✭ 131 (+0%)
Mutual labels:  benchmark
Mixbench
A GPU benchmark tool for evaluating GPUs on mixed operational intensity kernels (CUDA, OpenCL, HIP, SYCL)
Stars: ✭ 130 (-0.76%)
Mutual labels:  benchmark
Asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
Stars: ✭ 1,805 (+1277.86%)
Mutual labels:  terminal

vtebench

A tool for benchmarking terminal emulator PTY read performance.

Disclaimer

This benchmark is not sufficient to get a general understanding of the performance of a terminal emulator. It lacks support for critical factors like frame rate or latency. The only factor this benchmark stresses is the speed at which a terminal reads from the PTY. If you do not understand what this means, please do not jump to any conclusions from the results of this benchmark.

Usage

vtebench accepts benchmarks as executables and uses their stdout as benchmark payload. By default benchmarks are read from the ./benchmarks directory, which contains a good selection of benchmarks already. Benchmarks in vtebench are defined as a directory with a benchmark and an optional setup executable.

To just run all the default benchmarks in the repository, you can run the following after setting up a Rust toolchain:

cargo run --release

Plotting

vtebench contains a script for automatically plotting results using gnuplot. To do this you first need to output the benchmark results in the .dat format:

cargo run --release -- --dat results.dat

After having generated the .dat file, you can then pass it to a script in the ./gnuplot directory to generate the SVG plot:

./gnuplot/summary.sh results.dat output.svg

You can combine any number of results by passing them to the gnuplot script:

./gnuplot/summary.sh *.dat output.svg

And can plot detailed results using detailed.sh:

./gnuplot/detailed.sh *.dat output/

Contributing Benchmarks

If you have found benchmarks that might provide insightful information, or show significant differences between different terminals and version, you can send a pull request to add them to the default benchmark collection.

To do so, you just need to create a new directory in the ./benchmarks directory and add a benchmark and an optional setup executable. The stdout of the benchmark will automatically be repeated to fill a reasonable minimum sample size, so make sure to take that into account and move everything into setup that should only be done once.

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