record the total time of test case running
[yardstick.git] / yardstick / benchmark / scenarios / compute / lmbench_benchmark.bash
1 #!/bin/bash
2
3 ##############################################################################
4 # Copyright (c) 2015 Ericsson AB and others.
5 #
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Apache License, Version 2.0
8 # which accompanies this distribution, and is available at
9 # http://www.apache.org/licenses/LICENSE-2.0
10 ##############################################################################
11
12 # Run a lmbench read memory latency benchmark in a host and
13 # outputs in json format the array sizes in megabytes and
14 # load latency over all points in that array in nanosecods
15
16 set -e
17
18 SIZE=$1
19 shift
20 STRIDE=$1
21
22 # write the result to stdout in json format
23 output_json()
24 {
25     iter=0
26     echo [
27     while read DATA
28     do
29         if [ $iter -gt 1 ] && [ -n "$DATA" ]; then
30             echo ,
31         fi
32
33         echo -n $DATA | awk '/ /{printf "{\"size\": %s, \"latency\": %s}", $1, $2}'
34
35         iter=$((iter+1))
36     done
37     echo ]
38 }
39
40 /usr/lib/lmbench/bin/x86_64-linux-gnu/lat_mem_rd $SIZE $STRIDE 2>&1 | output_json
41