summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/yardstick/opnfv_yardstick_tc012.rst68
-rw-r--r--tests/opnfv/test_cases/opnfv_yardstick_tc012.yaml41
2 files changed, 109 insertions, 0 deletions
diff --git a/docs/yardstick/opnfv_yardstick_tc012.rst b/docs/yardstick/opnfv_yardstick_tc012.rst
new file mode 100644
index 000000000..0c8e9c02a
--- /dev/null
+++ b/docs/yardstick/opnfv_yardstick_tc012.rst
@@ -0,0 +1,68 @@
+
+*************************************
+Yardstick Test Case Description TC012
+*************************************
+
++-----------------------------------------------------------------------------+
+|Memory Bandwidth |
++==============+==============================================================+
+|test case id | OPNFV_YARDSTICK_TC012_Memory Bandwidth |
++--------------+--------------------------------------------------------------+
+|metric | Megabyte per second (MBps) |
++--------------+--------------------------------------------------------------+
+|test purpose | Measure the rate at which data can be read from and written |
+| | to the memory (this includes all levels of memory). |
++--------------+--------------------------------------------------------------+
+|configuration | File: opnfv_yardstick_tc012.yaml |
+| | |
+| | * SLA (optional): 15000 (MBps) |
+| | min_bw: The minimum amount of memory bandwidth that is |
+| | accepted. |
+| | * Size: 10 240 kB - test allocates twice that size (20 480kB)|
+| | zeros it and then measures the time it takes to copy from |
+| | one side to another. |
+| | * Benchmark: rdwr - measures the time to read data into |
+| | memory and then write data to the same location. |
+| | * Warmup: 0 - the number of iterations to perform before |
+| | taking actual measurements. |
+| | * Iterations: 10 - test is run 10 times iteratively. |
+| | * Interval: 1 - there is 1 second delay between each |
+| | iteration. |
++--------------+--------------------------------------------------------------+
+|test tool | Lmbench |
+| | |
+| | Lmbench is a suite of operating system microbenchmarks. This |
+| | test uses bw_mem tool from that suite. |
+| | Lmbench is not always part of a Linux distribution, hence it |
+| | needs to be installed in the test image |
+| | (See :ref:`guest-image` for how to generate a Linux image |
+| | for Glance with Lmbench included). |
++--------------+--------------------------------------------------------------+
+|references | * http://manpages.ubuntu.com/manpages/trusty/bw_mem.8.html |
+| | |
+| | * McVoy, Larry W., and Carl Staelin. "lmbench: Portable Tools|
+| | for Performance Analysis." *USENIX annual technical |
+| | conference*. 1996. |
++--------------+--------------------------------------------------------------+
+|applicability | Test can be configured with different |
+| | * memory sizes; |
+| | * memory operations (such as rd, wr, rdwr, cp, frd, fwr, |
+| | fcp, bzero, bcopy); |
+| | * number of warmup iterations; |
+| | * iterations and intervals. |
+| | There are default values for each above-mentioned option. |
++--------------+--------------------------------------------------------------+
+|pre-test | The test case image needs to be installed into Glance |
+|conditions | with Lmbench included in the image. |
+| | |
+| | No POD specific requirements have been identified. |
++--------------+------+----------------------------------+--------------------+
+|test sequence | step | description | result |
+| +------+----------------------------------+--------------------+
+| | 1 | The host is installed as client. | Logs are stored |
+| | | Lmbench's bw_mem tool is invoked | |
+| | | and logs are produced and stored.| |
++--------------+------+----------------------------------+--------------------+
+|test verdict | Test fails if the measured memory bandwidth is below the SLA |
+| | value or if there is a test case execution problem. |
++--------------+--------------------------------------------------------------+
diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc012.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc012.yaml
new file mode 100644
index 000000000..0c54d0cf0
--- /dev/null
+++ b/tests/opnfv/test_cases/opnfv_yardstick_tc012.yaml
@@ -0,0 +1,41 @@
+---
+# Yardstick TC012 config file
+# Measure memory read and write bandwidth using lmbench
+
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+ type: Lmbench
+ options:
+ test_type: "bandwidth"
+ size: 10240
+ benchmark: "rdwr"
+ warmup: 0
+
+ host: demeter.demo
+
+ runner:
+ type: Iteration
+ iterations: 10
+ interval: 1
+
+ sla:
+ min_bandwidth: 15000
+ action: monitor
+
+context:
+ name: demo
+ image: yardstick-trusty-server
+ flavor: m1.small
+ user: ec2-user
+
+ servers:
+ demeter:
+ floating_ip: true
+
+ networks:
+ test:
+ cidr: '10.0.1.0/24'
+
+