Recently we had the opportunity to update Linux-Bench’s functionality with a major new beta feature: automated log parsing. As STHbench 2013 morphed into Linux-Bench, the number of lines of code went up almost tenfold. The number of tests likewise increased. Traditionally, we used a “tee” bash command to output results to both the terminal as well as a log file. With many processors moving through benchmarks quickly, and with all of the compilation/ debug output, checking the terminal for anything but current status became problematic. The log-file was a go to resource for the linux benchmark results. The problem traditionally had been that the log file often reached many thousands of lines of output. That made finding linux benchmark results problematic. Today, we have an answer to that functionality: a parser for Linux-Bench results.
A quick primer: Running Linux-Bench
Perhaps the easiest way to run Linux-Bench on a system is to use a Ubuntu 14.04 LTS LiveCD. Instead of installing the OS on a system, one can simply give Ububtu a try.
After booting into the stock Ubuntu environment, one can issue a few simple commands from the terminal:
[tabgroup][tab title=”Install prerequisites”]
sudo su –
apt-get install curl openssh-server -y
[/tab][/tabgroup]
Those commands install the SSH server as well as curl which we will use. The “openssh-server” argument can be omitted safely if one wants to run purely from a local terminal.
The next command runs the benchmark:
[tabgroup][tab title=”Run Linux-Bench”]bash <(curl -sk https://raw.githubusercontent.com/STH-Dev/linux-bench/master/linux-bench.sh)[/tab][/tabgroup]
On many Ubuntu Server installations, one can just issue that bash command after elevating to root.
After 45-70 minute on most modern systems the benchmark run will complete. Note that low power systems such as Atoms and AM1 Athlons will likely take longer. Once the linux-bench script is finished, it is time to view the results.
Online Linux-Bench Log Parser
Instead of making users scroll through thousands of lines of log files to find the output they are looking for, there is now an online Linux-Bench log parser. Simply open the log file and on the last few lines there should be a “ref_link:” line followed by a numeric string.
That string is a unique ID for the benchmark run. Simply visit: http://parser.linux-bench.com/ then type in your number and hit submit.
The output should be a page that has results parsed and relevant results displayed on page. Granted, the beta page is still extremely ugly but it is largely functional.
One nice feature is that you can pass UnixBench ID#’s to friends and show relative levels of performance. The comparison feature will be coming soon.
Known bugs
Currently one major bug we know is that it is failing to detect the docker.io version of Linux-Bench in a few key areas. UnixBench results are not being parsed, 7-Zip results are not being parsed. Finally, the docker version is not being shown as a virtualized solution. The virtualization solution seems to detect Hyper-V, VMware and Xen virtualization types but there is more work to be done.
We do have a few usability features and a few larger features such as integration of results into the Linux-Bench website. For now, this is still a beta feature. Do please keep your log files since the log data ingestion is kept to a minimum.
Hmm, is the server up? I’m getting a 500 internal server error from your CentOS server after the script attempts to upload the results.
Mark – we are working on a fix for that one.
I get the following error, looks like its still not accepting logs?
ERROR
The requested URL could not be retrieved
Invalid Request error was encountered while trying to process the request:
POST /java-process/uploader HTTP/1.1
User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
Host: 199.195.128.138:3000
Accept: */*
Proxy-Connection: Keep-Alive
Connection: close
Content-Length: 126604
Expect: 100-continue
Content-Type: multipart/form-data; boundary=—————————-c84c1054a051
Jorge – really interesting. Mind posting https://forums.servethehome.com/index.php?forums/linux-bench/ or sending me the log?
I just tried at home, in the colo, Amazon EC2 and Rackspace instances and they all worked.