Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/insign/ben
Simple benchmarking using shell. DNS, CPU, Disk, Connection.
https://github.com/insign/ben
benchmarking cpu dns gpu hacktoberfest shell shell-script speedtest
Last synced: 2 days ago
JSON representation
Simple benchmarking using shell. DNS, CPU, Disk, Connection.
- Host: GitHub
- URL: https://github.com/insign/ben
- Owner: insign
- License: agpl-3.0
- Created: 2022-01-14T10:19:17.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-06-26T22:23:28.000Z (5 months ago)
- Last Synced: 2024-06-27T02:22:13.056Z (5 months ago)
- Topics: benchmarking, cpu, dns, gpu, hacktoberfest, shell, shell-script, speedtest
- Language: Shell
- Homepage:
- Size: 58.6 KB
- Stars: 9
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# ben
### Simple benchmarking using shell
> Take a look at [YABS](https://github.com/masonr/yet-another-bench-script) too, which we use a lot of code.
## Install
1. Clone the repo or [download the zip](https://github.com/insign/ben/archive/refs/heads/main.zip):
```shell
git clone https://github.com/insign/ben.git && cd ben
```2. Mark it as executable
```shell
chmod +x ./ben
```> [Soon](#to-do) I'll make it available to run without install
## Usage
#### DNS
> Test using the most popular DNS servers (see [ipv4.csv](ipv4.csv))
```shell
./ben dns
./ben dns youtube.com
./ben dns wikipedia.org
```#### Disk
```shell
./ben disk
```#### CPU / System
```shell
./ben cpu
```#### Connection Speed
```shell
./ben conn
```## TO-DO
- [x] Add CPU, disk and connection benchmarking
- [ ] Verify possible flags to use (using YABS)
- [ ] Add speedtest.net to the connection test
- [ ] Add fast.com (currently I only found using headless chrome)
- [ ] Add IPv6 DNS benchmarking
- [ ] Add colors to output
- [ ] Use a bash framework
- [ ] Catch errors thrown by network failure
- [ ] Manipulate results better. e.g: sort
- [ ] Accept --json parameter to show machine values
- [ ] Save results locally
- [ ] Save results online
- [ ] on public server
- [ ] on private server
- [ ] add privacy terms
- [ ] Create fast install command
- [ ] DNS
- [ ] implement "popular" flags to limit number of popular servers
- [ ] flag to add custom DNS without editing proper file
- [ ] Test DNS ordered by random
- [ ] Add ben to [xpm](https://github.com/insign/xpm)
- [ ] Add auto-update
- [ ] Create a container image to run without install
- [ ] Command to run using curl instead install
- [ ] Unit tests## Privacy & Security
Since there is a lot of connections to make the tests happens, if you care about you privacy, please do not use this
tool.
> And don't forget to read [YABS](https://github.com/masonr/yet-another-bench-script) home too.## License
[GNU Affero General Public License v3.0](LICENSE.md)
## Contribute
For now, you can just make a PR.
## Thanks
* [bashly](https://github.com/DannyBen/bashly) - bash CLI generator, and his
creator [Danny Ben Shitrit](https://github.com/DannyBen)
* [YABS](https://github.com/masonr/yet-another-bench-script) which we use a lot of code, and his
creator [Mason Rowe](https://github.com/masonr).
* DNS test was inspired by [Alexander Chumakov](https://github.com/delfer)'
s [gist](https://gist.github.com/delfer/34f0d85d1f4474e6d9fd4c47f749bcb8)