Minor fixes
This commit is contained in:
parent
637546a087
commit
620c38459c
101
README.md
101
README.md
|
@ -1,110 +1,23 @@
|
||||||
nench.sh ("new bench.sh")
|
snench.sh ("Snel.com benchmark")
|
||||||
=========================
|
=========================
|
||||||
|
|
||||||
Current version always available at https://github.com/n-st/nench
|
Current version always available at https://git.snel.com/snelcom/snench
|
||||||
|
|
||||||
IPv4- and v6-enabled download at http://wget.racing/nench.sh
|
- Based on nench (https://github.com/n-st/nench)
|
||||||
|
- Includes CPU and ioping measurements
|
||||||
- loosely based on the established freevps.us/bench.sh
|
- Successfully tested on Arch Linux, Debian, FreeBSD, and Ubuntu
|
||||||
- includes CPU and ioping measurements
|
|
||||||
- reduced number of speedtests (9 x 100 MB), while retaining useful European
|
|
||||||
and North American POPs
|
|
||||||
- runs IPv6 speedtest by default (if the server has IPv6 connectivity)
|
|
||||||
- has a 10-second timeout for each speedtest, so you don't end up waiting 10
|
|
||||||
minutes for that one slow speedtest from halfway around the globe — but
|
|
||||||
thanks to the power of `curl -w`, you still get to see what speed your server
|
|
||||||
achieved during those 10 seconds
|
|
||||||
- successfully tested on Arch Linux, Debian, FreeBSD, and Ubuntu
|
|
||||||
|
|
||||||
The script was originally intended to be used only by me, so I didn't put much
|
|
||||||
effort into ensuring safety, security, and interoperability.
|
|
||||||
I welcome any improvements, just send me a pull request.
|
|
||||||
|
|
||||||
Disclaimer
|
|
||||||
----------
|
|
||||||
|
|
||||||
You've probably noticed that the usage examples below have you directly run a
|
|
||||||
script from an unauthenticated source (as so many "easy-install" and benchmark
|
|
||||||
scripts do).
|
|
||||||
|
|
||||||
I didn't think I'd have to mention that this is a **potential security risk** —
|
|
||||||
really, if you're at the point where you're benchmarking Linux VMs, I would
|
|
||||||
assume you know how much harm a rogue shell script could potentially do to your
|
|
||||||
system…
|
|
||||||
|
|
||||||
What's more, `nench.sh` downloads a statically built binary to run the IO
|
|
||||||
latency tests. I assure you it is and always will be a clean unmodified build
|
|
||||||
of `ioping`, but how do you know you can trust me?
|
|
||||||
|
|
||||||
So, basically: **use `nench.sh` at your own risk**, and preferably not on
|
|
||||||
production systems (which is a bad idea anyway, because it will hammer your
|
|
||||||
harddisk and network for up to several minutes).
|
|
||||||
|
|
||||||
Usage example
|
Usage example
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
```
|
```
|
||||||
(curl -s wget.racing/nench.sh | bash; curl -s wget.racing/nench.sh | bash) 2>&1 | tee nench.log
|
(curl -s https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh | bash) 2>&1 | tee nench.log
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
(wget -qO- wget.racing/nench.sh | bash; wget -qO- wget.racing/nench.sh | bash) 2>&1 | tee nench.log
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Example output
|
Example output
|
||||||
--------------
|
--------------
|
||||||
|
|
||||||
Output from a VPS hosted with Vultr in Frankfurt:
|
Output from a VPS hosted with Snel.com in Rotterdam:
|
||||||
|
|
||||||
```
|
```
|
||||||
-------------------------------------------------
|
|
||||||
nench.sh v2017.05.08 -- https://git.io/nench.sh
|
|
||||||
benchmark timestamp: 2017-05-08 20:36:54 UTC
|
|
||||||
-------------------------------------------------
|
|
||||||
|
|
||||||
Processor: Virtual CPU a7769a6388d5
|
|
||||||
CPU cores: 1
|
|
||||||
Frequency: 2394.454 MHz
|
|
||||||
RAM: 494M
|
|
||||||
Swap: 871M
|
|
||||||
Kernel: Linux 3.16.0-4-amd64 x86_64
|
|
||||||
|
|
||||||
Disks:
|
|
||||||
vda 20G HDD
|
|
||||||
|
|
||||||
CPU: SHA256-hashing 500 MB
|
|
||||||
4.183 seconds
|
|
||||||
CPU: bzip2-compressing 500 MB
|
|
||||||
6.830 seconds
|
|
||||||
CPU: AES-encrypting 500 MB
|
|
||||||
1.636 seconds
|
|
||||||
|
|
||||||
ioping: seek rate
|
|
||||||
min/avg/max/mdev = 148.6 us / 280.9 us / 9.22 ms / 234.7 us
|
|
||||||
ioping: sequential speed
|
|
||||||
generated 2.15 k requests in 5.00 s, 536.2 MiB, 428 iops, 107.2 MiB/s
|
|
||||||
|
|
||||||
dd test
|
|
||||||
1st run: 339.51 MiB/s
|
|
||||||
2nd run: 345.23 MiB/s
|
|
||||||
3rd run: 342.37 MiB/s
|
|
||||||
average: 342.37 MiB/s
|
|
||||||
|
|
||||||
IPv4 speedtests
|
|
||||||
your IPv4: 108.61.179.xxxx
|
|
||||||
|
|
||||||
Cachefly CDN: 205.34 MiB/s
|
|
||||||
Leaseweb (NL): 140.55 MiB/s
|
|
||||||
Softlayer DAL (US): 0.08 MiB/s
|
|
||||||
Online.net (FR): 0.17 MiB/s
|
|
||||||
OVH BHS (CA): 11.13 MiB/s
|
|
||||||
|
|
||||||
IPv6 speedtests
|
|
||||||
your IPv6: 2001:19f0:6c01:xxxx
|
|
||||||
|
|
||||||
Leaseweb (NL): 101.06 MiB/s
|
|
||||||
Softlayer DAL (US): 2.89 MiB/s
|
|
||||||
Online.net (FR): 0.18 MiB/s
|
|
||||||
OVH BHS (CA): 9.84 MiB/s
|
|
||||||
-------------------------------------------------
|
|
||||||
```
|
```
|
||||||
|
|
56
snench.sh
56
snench.sh
|
@ -1,31 +1,31 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#########################################################################################################################################################################
|
##################################################################################################################################################
|
||||||
# #
|
# #
|
||||||
# 88 #
|
# 88 #
|
||||||
# 88 #
|
# 88 #
|
||||||
# 88 #
|
# 88 #
|
||||||
# ,adPPYba, 8b,dPPYba, ,adPPYba, 88 ,adPPYba, ,adPPYba, 88,dPYba,,adPYba, #
|
# ,adPPYba, 8b,dPPYba, ,adPPYba, 88 ,adPPYba, ,adPPYba, 88,dPYba,,adPYba, #
|
||||||
# I8[ "" 88P' `"8a a8P_____88 88 a8" "" a8" "8a 88P' "88" "8a #
|
# I8[ "" 88P' `"8a a8P_____88 88 a8" "" a8" "8a 88P' "88" "8a #
|
||||||
# `"Y8ba, 88 88 8PP""""""" 88 8b 8b d8 88 88 88 #
|
# `"Y8ba, 88 88 8PP""""""" 88 8b 8b d8 88 88 88 #
|
||||||
# aa ]8I 88 88 "8b, ,aa 88 888 "8a, ,aa "8a, ,a8" 88 88 88 #
|
# aa ]8I 88 88 "8b, ,aa 88 888 "8a, ,aa "8a, ,a8" 88 88 88 #
|
||||||
# `"YbbdP"' 88 88 `"Ybbd8"' 88 888 `"Ybbd8"' `"YbbdP"' 88 88 88 #
|
# `"YbbdP"' 88 88 `"Ybbd8"' 88 888 `"Ybbd8"' `"YbbdP"' 88 88 88 #
|
||||||
# #
|
# #
|
||||||
# #
|
# #
|
||||||
#########################################################################################################################################################################
|
##################################################################################################################################################
|
||||||
# #
|
# #
|
||||||
# Author: Snel.com - Yavuz Aydin #
|
# Author: Snel.com - Yavuz Aydin #
|
||||||
# E-mail: support@snel.com #
|
# E-mail: support@snel.com #
|
||||||
# (c) Snel.com - all rights reserved #
|
# (c) Snel.com - all rights reserved #
|
||||||
# #
|
# #
|
||||||
#########################################################################################################################################################################
|
##################################################################################################################################################
|
||||||
# #
|
# #
|
||||||
# Script: snench.sh #
|
# Script: snench.sh #
|
||||||
# License: This file is licensed under the Apache License, Version 2.0 #
|
# License: This file is licensed under the Apache License, Version 2.0 #
|
||||||
# Purpose: Easy and fast benchmarks! #
|
# Purpose: Easy and fast benchmarks! #
|
||||||
# Current version: https://git.snel.com/snelcom/snench #
|
# Current version: https://git.snel.com/snelcom/snench #
|
||||||
# Usage: bash <(curl -s https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh || wget -qO- https://git.snel.com/snelcom/snench/raw/branch/master/snench.sh) #
|
# Usage: see https://git.snel.com/snelcom/snench/src/branch/master/README.md #
|
||||||
# #
|
# #
|
||||||
#########################################################################################################################################################################
|
##################################################################################################################################################
|
||||||
|
|
||||||
command_exists()
|
command_exists()
|
||||||
{
|
{
|
||||||
|
@ -148,7 +148,7 @@ printf '\n'
|
||||||
|
|
||||||
if ! command_exists ioping
|
if ! command_exists ioping
|
||||||
then
|
then
|
||||||
curl -s https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static || wget -qO- https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static
|
curl --max-time 10 -so ioping.static https://git.snel.com/snelcom/snench/raw/branch/master/ioping.static
|
||||||
chmod +x ioping.static
|
chmod +x ioping.static
|
||||||
ioping_cmd="./ioping.static"
|
ioping_cmd="./ioping.static"
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in New Issue