Easy benchmarking
Go to file
Nils Steinger 7b2464c1ac Suppress OpenSSL warning about not using PBKDF2
OpenSSL commit 405988f2 (included in v1.1.1 and higher) added support for
PBKDF2 in the enc command, along with a warning:
> *** WARNING : deprecated key derivation used.
> Using -iter or -pbkdf2 would be better.

For our benchmark, we don't require security but do require portability (-iter
and -pbkdf2 are unsupported in OpenSSL < v1.1.1), so we'll just filter the
warning from the output.
2019-03-01 11:43:49 +01:00
CNAME Create CNAME 2017-02-25 01:10:18 +01:00
LICENSE.txt Add Apache Licence v2.0 2018-06-15 23:19:52 +02:00
README.md Mention new FreeBSD support in README 2017-06-01 18:30:12 +02:00
bench.sh Symlink bench.sh → nench.sh 2017-02-25 01:12:48 +01:00
index.html Symlink bench.sh → index.html (for Github Pages) 2017-02-25 01:14:51 +01:00
ioping.static Added statically-linked ioping binary (v1.0, compiled for Linux x86_64) 2017-02-25 00:01:14 +01:00
nench.sh Suppress OpenSSL warning about not using PBKDF2 2019-03-01 11:43:49 +01:00

README.md

nench.sh ("new bench.sh")

Current version always available at https://github.com/n-st/nench

IPv4- and v6-enabled download at http://wget.racing/nench.sh

  • loosely based on the established freevps.us/bench.sh
  • 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

(curl -s wget.racing/nench.sh | bash; curl -s wget.racing/nench.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

Output from a VPS hosted with Vultr in Frankfurt:

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