Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/drish/ben

Your benchmark assistant, written in Go.
https://github.com/drish/ben

benchmark benchmark-framework golang

Last synced: 27 days ago
JSON representation

Your benchmark assistant, written in Go.

Awesome Lists containing this project

README

        



Ben (beta)


Your benchmark assistant, written in Go.



Go Report Card
Release


---

Ben is a simple tool that helps you run your benchmarks on multiple hardware specs, clouds and runtime versions, so that you can easily compare you results against different environments.

## Install

With `go get`
```
$ go get https://github.com/drish/ben/cmd/ben
```

or with `curl`

```
curl -sf https://raw.githubusercontent.com/drish/ben/master/install.sh | sh
```

## Requirements

- Docker 17.03.0-ce+

## Supported clouds

* [Hyper.sh](https://hyper.sh)
* [ECS](https://aws.amazon.com/ecs/) (coming soon.)

## Quick Start

Add a `ben.json` file in the root of your project.

```json
{
"environments": [
{
"runtime": "ruby",
"version": "2.3",
"machine": "local",
"before": ["gem install benchmark-ips"],
"command": "ruby bench.rb"
},
{
"runtime": "ruby",
"version": "2.5",
"machine": "local",
"before": ["gem install benchmark-ips"],
"command": "ruby bench.rb"
}
]
}

```

Then, in the root of your project run.

```
$ ben
```

After all benchmarks are done, a [benchmarks.md](https://github.com/drish/ben/tree/master/_examples/go/local/benchmarks.md) file will be generated.

Checkout [examples](https://github.com/drish/ben/tree/master/_examples) folder for more.

---



---

### More docs

* [Running on hyper.sh](https://github.com/drish/ben/blob/master/docs/running-on-hyper.md)
* [ben.json file spec](https://github.com/drish/ben/blob/master/docs/ben-json-spec.md)

## License

MIT © [Carlos Derich](https://dri.sh)