summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNauman_Ahad <Nauman_Ahad@dell.com>2016-01-05 21:01:17 +0500
committerNauman_Ahad <Nauman_Ahad@dell.com>2016-01-05 21:01:17 +0500
commit57922dcb8e6497f02fdee9306494e932e25dcace (patch)
tree03243a0673de88e39cc682d4d64e54be2ad1c898
parent8812f4746015c669dc8dcab23069f5244ff8acb6 (diff)
QTIP Index calculation along with a script to run qtip from docker
Calculation of Result Indices for 1. Compute suite 2. Storage suite 3. Network suite A script to run qtip from inside the docker container (for Jenkins Jobs) Resolved bugs with ssl_trasform.py, sys info collection on ubuntu and system information collection script Change-Id: Ic5abb3dbd0012cd2257b588b1b3067a6677b1f5d Signed-off-by: Nauman_Ahad <Nauman_Ahad@dell.com>
-rw-r--r--benchmarks/playbooks/info_script/info_collect.py6
-rw-r--r--benchmarks/playbooks/result_transform/ssl/ssl_transform.py20
-rw-r--r--benchmarks/playbooks/sys_info_pbook.yaml2
-rwxr-xr-xdata/fetch_os_creds.sh (renamed from fetch_os_creds.sh)79
-rwxr-xr-xdata/get_env_info.sh1
-rwxr-xr-xdata/qtip_creds.sh4
-rw-r--r--data/ref_results/.reference.json.swpbin0 -> 12288 bytes
-rw-r--r--data/ref_results/compute_benchmarks_indices.py142
-rw-r--r--data/ref_results/compute_suite.py22
-rw-r--r--data/ref_results/generator_ref_json.py36
-rw-r--r--data/ref_results/network_benchmarks_indices.py28
-rw-r--r--data/ref_results/network_suite.py22
-rw-r--r--data/ref_results/reference.json35
-rw-r--r--data/ref_results/result_accum.py31
-rw-r--r--data/ref_results/storage_benchmarks_indices.py35
-rw-r--r--data/ref_results/storage_suite.py22
-rw-r--r--docker/Dockerfile3
-rwxr-xr-xdocker/run_qtip.sh17
-rw-r--r--func/env_setup.py8
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml35
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml45
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml34
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml35
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml31
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml36
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml34
-rw-r--r--test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml44
-rw-r--r--test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml43
-rw-r--r--test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml43
-rw-r--r--test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml60
-rw-r--r--test_cases/dell-us-testing-bm-1/network/netperf.yaml42
-rw-r--r--test_cases/dell-us-testing-bm-1/network/pktgen.yaml44
-rw-r--r--test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml39
-rw-r--r--test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml44
-rw-r--r--test_list/compute.txt10
-rw-r--r--test_list/storage.txt2
36 files changed, 1079 insertions, 55 deletions
diff --git a/benchmarks/playbooks/info_script/info_collect.py b/benchmarks/playbooks/info_script/info_collect.py
index b352651e..7e5544c0 100644
--- a/benchmarks/playbooks/info_script/info_collect.py
+++ b/benchmarks/playbooks/info_script/info_collect.py
@@ -17,7 +17,7 @@ est_ob2.close()
Info_dict={};
inxi_host=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Host:).*(?=Kernel)' """).read().lstrip().rstrip()
-inxi_mem=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Memory:).*(?=Init)' """).read().lstrip().rstrip()
+inxi_mem=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Memory:).*(?=MB)' """).read().lstrip().rstrip()+"MB"
inxi_cpu=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=CPU).*(?=speed)' | cut -f2 -d':'""").read().lstrip().rstrip()
inxi_distro=os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Distro:).*(?=Machine:)' """).read().rstrip().lstrip()
inxi_kernel=os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Kernel:).*(?=Console:)' """).read().rstrip().lstrip()
@@ -72,7 +72,7 @@ if (network_flag == 'n'):
Info_dict['9_Network_Interfaces']['Interface_'+str(x)]['2_Interface_info']=inxi_card_2
else:
print "No network cards"
- os.system("bwm-ng -c 1 | grep -v '=' | grep -v 'iface' | grep -v '-' > bwm_dump")
+ os.system("bwm-ng -o plain -c 1 | grep -v '=' | grep -v 'iface' | grep -v '-' > bwm_dump")
n_interface=int(os.popen(" cat bwm_dump | grep -v 'total' | wc -l ").read().rstrip())
interface={};
for x in range (1,n_interface):
@@ -82,7 +82,7 @@ if (network_flag == 'n'):
interface[str(interface_name)]['Tx (KB/s)']=os.popen(" cat bwm_dump | awk 'NR=="+str(x)+"' | awk '{print $4}' ").read().rstrip()
interface[str(interface_name)]['Total (KB/s)']=os.popen(" cat bwm_dump | awk 'NR== "+str(x)+"' | awk '{print $6}' ").read().rstrip()
- Info_dict['Interface I/O']=interface
+ Info_dict['10.Interface I/O']=interface
print Info_dict
diff --git a/benchmarks/playbooks/result_transform/ssl/ssl_transform.py b/benchmarks/playbooks/result_transform/ssl/ssl_transform.py
index 20ca5cff..6e632251 100644
--- a/benchmarks/playbooks/result_transform/ssl/ssl_transform.py
+++ b/benchmarks/playbooks/result_transform/ssl/ssl_transform.py
@@ -48,18 +48,18 @@ os.system("cat AES-128-CBC_dump >> " + hostname + "-" + time_stamp + ".log")
result = {}
result['1. Version'] = [openssl_version]
-result['2. RSA singatures'] = {}
-result['2. RSA singatures']['1. 512 bits (sign/s)'] = [rsa_512_sps]
-result['2. RSA singatures']['2. 1024 bits (sign/s)'] = [rsa_1024_sps]
-result['2. RSA singatures']['3. 2048 bits (sign/s)'] = [rsa_2048_sps]
-result['2. RSA singatures']['4. 4096 bits (sign/s)'] = [rsa_4096_sps]
+result['2. RSA signatures'] = {}
+result['2. RSA signatures']['1. 512 bits (sign/s)'] = rsa_512_sps
+result['2. RSA signatures']['2. 1024 bits (sign/s)'] = rsa_1024_sps
+result['2. RSA signatures']['3. 2048 bits (sign/s)'] = rsa_2048_sps
+result['2. RSA signatures']['4. 4096 bits (sign/s)'] = rsa_4096_sps
result['3. AES-128-cbc throughput'] = {}
-result['3. AES-128-cbc throughput']['1. 16 Bytes block (B/sec)'] = [aes_16B]
-result['3. AES-128-cbc throughput']['2. 64 Bytes block (B/sec)'] = [aes_64B]
-result['3. AES-128-cbc throughput']['3. 256 Bytes block (B/sec)'] = [aes_256B]
-result['3. AES-128-cbc throughput']['4. 1024 Bytes block (B/sec)'] = [aes_1024B]
-result['3. AES-128-cbc throughput']['5. 16 Bytes block (B/sec)'] = [aes_8192B]
+result['3. AES-128-cbc throughput']['1. 16 Bytes block (B/sec)'] = aes_16B
+result['3. AES-128-cbc throughput']['2. 64 Bytes block (B/sec)'] = aes_64B
+result['3. AES-128-cbc throughput']['3. 256 Bytes block (B/sec)'] = aes_256B
+result['3. AES-128-cbc throughput']['4. 1024 Bytes block (B/sec)'] = aes_1024B
+result['3. AES-128-cbc throughput']['5. 8192 Bytes block (B/sec)'] = aes_8192B
with open('./result_temp', 'w+') as result_file:
diff --git a/benchmarks/playbooks/sys_info_pbook.yaml b/benchmarks/playbooks/sys_info_pbook.yaml
index cca6c941..b5415aad 100644
--- a/benchmarks/playbooks/sys_info_pbook.yaml
+++ b/benchmarks/playbooks/sys_info_pbook.yaml
@@ -5,7 +5,7 @@
shell: yum install inxi -y
when: ansible_os_family == "RedHat"
- name: system info collection tool install when Ubuntu
- shell: apt-get install inxi -y
+ shell: apt-get update && apt-get install inxi -y
when: ansible_os_family == "Debian"
- name: Install ansible copy dependencies if remote host has selinux enabled
shell: yum install libselinux-python -y
diff --git a/fetch_os_creds.sh b/data/fetch_os_creds.sh
index cefc8576..3b493e14 100755
--- a/fetch_os_creds.sh
+++ b/data/fetch_os_creds.sh
@@ -100,40 +100,24 @@ if [ "$installer_type" == "fuel" ]; then
#NOTE: this is super ugly sed 's/v1\/.*/v1\//'OS_AUTH_URL
# but sometimes the output of endpoint-list is like this: http://172.30.9.70:8004/v1/%(tenant_id)s
-
-elif [ "$installer_type" == "foreman" ]; then
- #ip_foreman="172.30.10.73"
- controller="oscontroller1.opnfv.com"
+elif [ "$installer_type" == "apex" ]; then
verify_connectivity $installer_ip
- # Check if controller is alive (here is more difficult to get the ip from a command like "fuel node")
- sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
- "sshpass -p Op3nStack ssh $ssh_options root@${controller} 'ls'" &> /dev/null
- if [ $? -ne 0 ]; then
- error "The controller ${controller} is not up. Please check that the POD is correctly deployed."
+ # The credentials file is located in the Instack VM (192.0.2.1)
+ # NOTE: This might change for bare metal deployments
+ info "Fetching rc file from Instack VM $installer_ip..."
+ if [ -f /root/.ssh/id_rsa ]; then
+ chmod 600 /root/.ssh/id_rsa
fi
-
- info "Fetching openrc from a Foreman Controller '${controller}'..."
- sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
- "sshpass -p Op3nStack scp $ssh_options root@${controller}:~/keystonerc_admin ." &> /dev/null
- sshpass -p vagrant scp $ssh_options root@${installer_ip}:~/keystonerc_admin $dest_path &> /dev/null
-
- #This file contains the mgmt keystone API, we need the public one for our rc file
- admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
- public_ip=$(sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
- "sshpass -p Op3nStack ssh $ssh_options root@${controller} \
- 'source keystonerc_admin;keystone endpoint-list'" \
- | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null
+ sudo scp $ssh_options root@$installer_ip:/home/stack/overcloudrc $dest_path
elif [ "$installer_type" == "compass" ]; then
- #ip_compass="10.1.0.12"
verify_connectivity $installer_ip
-
- # controller_ip='10.1.0.222'
- controller_ip=$(sshpass -p'root' ssh 2>/dev/null -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@10.1.0.12 \
- 'mysql -ucompass -pcompass -Dcompass -e"select package_config from cluster;"' \
- | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"ha_proxy\": {\"vip\":/)print $i}' \
+ controller_ip=$(sshpass -p'root' ssh 2>/dev/null $ssh_options root@${installer_ip} \
+ 'mysql -ucompass -pcompass -Dcompass -e"select * from cluster;"' \
+ | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"host1\"/) {print $(i+1);break;}}' \
| grep -oP "\d+.\d+.\d+.\d+")
+
if [ -z $controller_ip ]; then
error "The controller $controller_ip is not up. Please check that the POD is correctly deployed."
fi
@@ -152,18 +136,51 @@ elif [ "$installer_type" == "compass" ]; then
| grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1)
info "public_ip: $public_ip"
+
+elif [ "$installer_type" == "joid" ]; then
+ # do nothing...for the moment
+ # we can either do a scp from the jumphost or use the -v option to transmit the param to the docker file
+ echo "Do nothing, creds will be provided through volume option at docker creation for joid"
+
+elif [ "$installer_type" == "foreman" ]; then
+ #ip_foreman="172.30.10.73"
+ controller="oscontroller1.opnfv.com"
+ verify_connectivity $installer_ip
+
+ # Check if controller is alive (here is more difficult to get the ip from a command like "fuel node")
+ sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+ "sshpass -p Op3nStack ssh $ssh_options root@${controller} 'ls'" &> /dev/null
+ if [ $? -ne 0 ]; then
+ error "The controller ${controller} is not up. Please check that the POD is correctly deployed."
+ fi
+
+ info "Fetching openrc from a Foreman Controller '${controller}'..."
+ sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+ "sshpass -p Op3nStack scp $ssh_options root@${controller}:~/keystonerc_admin ." &> /dev/null
+ sshpass -p vagrant scp $ssh_options root@${installer_ip}:~/keystonerc_admin $dest_path &> /dev/null
+
+ #This file contains the mgmt keystone API, we need the public one for our rc file
+ admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
+ public_ip=$(sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+ "sshpass -p Op3nStack ssh $ssh_options root@${controller} \
+ 'source keystonerc_admin;keystone endpoint-list'" \
+ | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null
+
else
error "Installer $installer is not supported by this script"
fi
+if [ ! -f $dest_path ]; then
+ error "There has been an error retrieving the credentials"
+fi
-if [ "$public_ip" == "" ]; then
- error "Cannot retrieve the public IP from keystone"
+if [ "$public_ip" != "" ]; then
+ info "Exchanging keystone public IP in rc file to $public_ip"
+ sed -i "/OS_AUTH_URL/c\export OS_AUTH_URL=\'$public_ip'" $dest_path
fi
-info "Keystone public IP is $public_ip"
-sed -i "/OS_AUTH_URL/c\export OS_AUTH_URL=\'$public_ip'" $dest_path
+
echo "-------- Credentials: --------"
cat $dest_path
diff --git a/data/get_env_info.sh b/data/get_env_info.sh
index 98ca68a6..98ad6dd6 100755
--- a/data/get_env_info.sh
+++ b/data/get_env_info.sh
@@ -19,3 +19,4 @@ while getopts ":n:i:" optchar; do
usage ;;
esac
done
+./fetch_os_creds.sh -d opnfv-creds.sh
diff --git a/data/qtip_creds.sh b/data/qtip_creds.sh
index e2619d64..085e3a60 100755
--- a/data/qtip_creds.sh
+++ b/data/qtip_creds.sh
@@ -16,8 +16,8 @@ case "$INSTALLER_TYPE" in
*)
echo "Unkown installer $INSTALLER_TYPE specified";;
esac
-
+echo $PWD
sshoptions="-o StrictHostKeyChecking=no"
-sshpass -p $PSWD scp $sshoptions QtipKey.pub root@$INSTALLER_IP:/root
+sshpass -p $PSWD scp $sshoptions ./data/QtipKey.pub root@$INSTALLER_IP:/root
sshpass -p $PSWD ssh $sshoptions root@$INSTALLER_IP "ssh-copy-id -i /root/QtipKey.pub root@$DEST_IP && rm -rf /root/QtipKey.pub"
diff --git a/data/ref_results/.reference.json.swp b/data/ref_results/.reference.json.swp
new file mode 100644
index 00000000..45891cdb
--- /dev/null
+++ b/data/ref_results/.reference.json.swp
Binary files differ
diff --git a/data/ref_results/compute_benchmarks_indices.py b/data/ref_results/compute_benchmarks_indices.py
new file mode 100644
index 00000000..305b6b02
--- /dev/null
+++ b/data/ref_results/compute_benchmarks_indices.py
@@ -0,0 +1,142 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+
+def dpi_index ():
+ total=0
+ dpi_dict=concat('../../results/dpi/')
+ for k,v in dpi_dict.iteritems():
+ for i,j in dpi_dict[k].iteritems():
+ if i=="3 DPI result":
+ raw_num=int(dpi_dict[k][i]["DPI_benchmark(Gb/s)"])
+ total=total+raw_num
+
+ l=len(dpi_dict)
+ with open ('./reference.json') as reference_file:
+ reference_djson=json.load(reference_file)
+ dpi_ref=reference_djson['compute']['dpi']
+ dpi_index= float((total/l)/dpi_ref)
+ dpi_dict_i={};
+ dpi_dict_i['1. Index']=dpi_index
+ dpi_dict_i['2. Results']=dpi_dict
+ return dpi_dict_i
+
+def dwstone_index (file_dir,benchmark):
+ total=0
+ dwstone_dict=concat('../../results/'+file_dir+'/')
+ for k,v in dwstone_dict.iteritems():
+ for i,j in dwstone_dict[k].iteritems():
+ if i=="3 "+benchmark+" result":
+ for a,b in dwstone_dict[k][i].iteritems():
+ if a=="2.Single CPU test":
+ raw_num=float(dwstone_dict[k][i][a]["2.Index score"])
+ total=total+raw_num
+
+ l= len(dwstone_dict)
+
+ with open ('./reference.json') as reference_file:
+ reference_djson=json.load(reference_file)
+ dwstone_ref=reference_djson['compute'][file_dir]
+
+ dwstone_index=float((total/l)/dwstone_ref)
+ dwstone_dict_i={};
+ dwstone_dict_i['1. Index']=dwstone_index
+ dwstone_dict_i['2. Results']=dwstone_dict
+ return dwstone_dict_i
+
+def ssl_index ():
+ total_512rsa=0
+ total_1024rsa=0
+ total_2048rsa=0
+ total_4096rsa=0
+
+ total_16aes=0
+ total_64aes=0
+ total_256aes=0
+ total_1024aes=0
+ total_8192aes=0
+
+ ssl_dict=concat('../../results/ssl/')
+ for k,v in ssl_dict.iteritems():
+ for i,j in ssl_dict[k].iteritems():
+ if i=="3 SSL result":
+ for a,b in ssl_dict[k][i].iteritems():
+ if a=="2. RSA signatures":
+ raw_num_512rsa=float(ssl_dict[k][i][a]["1. 512 bits (sign/s)"])
+ raw_num_1024rsa=float(ssl_dict[k][i][a]["2. 1024 bits (sign/s)"])
+ raw_num_2048rsa=float(ssl_dict[k][i][a]["3. 2048 bits (sign/s)"])
+ raw_num_4096rsa=float(ssl_dict[k][i][a]["4. 4096 bits (sign/s)"])
+ total_512rsa=total_512rsa+raw_num_512rsa
+ total_1024rsa=total_512rsa+raw_num_1024rsa
+ total_2048rsa=total_2048rsa+raw_num_2048rsa
+ total_4096rsa=total_4096rsa+raw_num_4096rsa
+ elif a=="3. AES-128-cbc throughput":
+ raw_num_16aes=float(ssl_dict[k][i][a]["1. 16 Bytes block (B/sec)"][:-1])*1000
+ raw_num_64aes=float(ssl_dict[k][i][a]["2. 64 Bytes block (B/sec)"][:-1])*1000
+ raw_num_256aes=float(ssl_dict[k][i][a]["3. 256 Bytes block (B/sec)"][:-1])*1000
+ raw_num_1024aes=float(ssl_dict[k][i][a]["4. 1024 Bytes block (B/sec)"][:-1])*1000
+ raw_num_8192aes=float(ssl_dict[k][i][a]["5. 8192 Bytes block (B/sec)"][:-1])*1000
+ total_16aes=raw_num_16aes+total_16aes
+ total_64aes=raw_num_64aes+total_64aes
+ total_256aes=raw_num_256aes+total_256aes
+ total_1024aes=raw_num_1024aes+total_1024aes
+ total_8192aes=raw_num_8192aes+total_8192aes
+
+ with open ('./reference.json') as reference_file:
+ reference_djson=json.load(reference_file)
+ ssl_ref512rsa=reference_djson['compute']['ssl']['RSA']['512b']
+ ssl_ref1024rsa=reference_djson['compute']['ssl']['RSA']['1024b']
+ ssl_ref2048rsa=reference_djson['compute']['ssl']['RSA']['2048b']
+ ssl_ref4096rsa=reference_djson['compute']['ssl']['RSA']['4096b']
+
+
+ ssl_ref16aes=reference_djson['compute']['ssl']['AES']['16B']
+ ssl_ref64aes=reference_djson['compute']['ssl']['AES']['64B']
+ ssl_ref256aes=reference_djson['compute']['ssl']['AES']['256B']
+ ssl_ref1024aes=reference_djson['compute']['ssl']['AES']['1024B']
+ ssl_ref8192aes=reference_djson['compute']['ssl']['AES']['8192B']
+
+
+ l=len(ssl_dict)
+ index_512rsa=float((total_512rsa/l)/ssl_ref512rsa)
+ index_1024rsa= float((total_1024rsa/l)/ssl_ref1024rsa)
+ index_2048= float((total_2048rsa/l)/ssl_ref2048rsa)
+ index_4096= float((total_4096rsa/l)/ssl_ref4096rsa)
+
+ index_16aes=float((total_16aes/l)/ssl_ref16aes)
+ index_64aes=float((total_64aes/l)/ssl_ref64aes)
+ index_256aes=float((total_256aes/l)/ssl_ref256aes)
+ index_1024aes=float((total_1024aes/l)/ssl_ref1024aes)
+ index_8192aes=float((total_8192aes/l)/ssl_ref8192aes)
+
+ index_sum= (index_512rsa+index_1024rsa+index_2048+index_4096+index_16aes+index_64aes+index_256aes+index_1024aes+index_8192aes)
+ ssl_index=float(index_sum/9)
+ ssl_dict_i={};
+ ssl_dict_i['1. Index']=ssl_index
+ ssl_dict_i['2. Results']=ssl_dict
+ return ssl_dict_i
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/ref_results/compute_suite.py b/data/ref_results/compute_suite.py
new file mode 100644
index 00000000..a57a4b04
--- /dev/null
+++ b/data/ref_results/compute_suite.py
@@ -0,0 +1,22 @@
+import json
+import compute_benchmarks_indices as benchmark_indices
+
+
+compute_dict={};
+compute_dict['DPI']=benchmark_indices.dpi_index()
+compute_dict['Dhrystone']=benchmark_indices.dwstone_index('dhrystone','Dhrystone')
+compute_dict['Whetstone']=benchmark_indices.dwstone_index('whetstone','Whetstone')
+compute_dict['SSL']=benchmark_indices.ssl_index()
+
+compute_bench_list=['DPI','Dhrystone','Whetstone','SSL']
+temp=0
+for benchmark in compute_bench_list:
+ temp=temp+float(compute_dict[benchmark]['1. Index'])
+compute_suite_index=temp/len(compute_bench_list)
+
+compute_dict_f={};
+compute_dict_f['1. Compute Index']=compute_suite_index
+compute_dict_f['2. Compute suite results']=compute_dict
+with open('../../results/compute_result.json', 'w+') as result_json:
+ json.dump(compute_dict_f, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/generator_ref_json.py b/data/ref_results/generator_ref_json.py
new file mode 100644
index 00000000..986ac61c
--- /dev/null
+++ b/data/ref_results/generator_ref_json.py
@@ -0,0 +1,36 @@
+import os
+import json
+
+dict_ref={};
+dict_ref['compute']={};
+dict_ref['compute']['dpi']=8.12
+dict_ref['compute']['whetstone']=859.1
+dict_ref['compute']['dhrystone']=3146.66
+dict_ref['compute']['ssl']={};
+dict_ref['compute']['ssl']['RSA']={};
+dict_ref['compute']['ssl']['AES']={};
+dict_ref['compute']['ssl']['RSA']['512b']=22148.9
+dict_ref['compute']['ssl']['RSA']['1024b']=7931.44
+dict_ref['compute']['ssl']['RSA']['2048b']=1544.3
+dict_ref['compute']['ssl']['RSA']['4096b']=161.92
+
+dict_ref['compute']['ssl']['AES']['16B']=735490250
+dict_ref['compute']['ssl']['AES']['64B']=788429210
+dict_ref['compute']['ssl']['AES']['256B']=803323650
+dict_ref['compute']['ssl']['AES']['1024B']=808861020
+dict_ref['compute']['ssl']['AES']['8192B']=807701160
+
+
+dict_ref['storage']={};
+dict_ref['storage']['read']={};
+dict_ref['storage']['write']={};
+dict_ref['storage']['read']['IOPS']= 6995
+dict_ref['storage']['write']['IOPS']= 6990
+
+dict_ref['network']={};
+dict_ref['network']['iperf']={};
+dict_ref['network']['iperf']['throughput received(b/s)']=9973180000.0
+
+with open('reference.json', 'w+') as result_json:
+ json.dump(dict_ref, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/network_benchmarks_indices.py b/data/ref_results/network_benchmarks_indices.py
new file mode 100644
index 00000000..f841a65f
--- /dev/null
+++ b/data/ref_results/network_benchmarks_indices.py
@@ -0,0 +1,28 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+def iperf_index ():
+ total_r=0
+ iperf_dict=concat('../../results/iperf/')
+ for k,v in iperf_dict.iteritems():
+ for i,j in iperf_dict[k].iteritems():
+ if i=="3 IPERF result":
+ for a,b in iperf_dict[k][i].iteritems():
+ if a=="2. Bandwidth":
+ raw_num=iperf_dict[k][i][a]['2. throughput Received (b/s)']
+ total_r=total_r+raw_num
+
+ l= len(iperf_dict)
+
+ with open ('./reference.json') as reference_file:
+ reference_djson=json.load(reference_file)
+ iperf_ref_r=reference_djson['network']['iperf']['throughput received(b/s)']
+
+
+ iperf_index_r=float((total_r/l)/iperf_ref_r)
+ iperf_dict_i={};
+ iperf_dict_i['1. Index']=iperf_index_r
+ iperf_dict_i['2. Results']=iperf_dict
+ return iperf_dict_i
+
diff --git a/data/ref_results/network_suite.py b/data/ref_results/network_suite.py
new file mode 100644
index 00000000..df80b8b5
--- /dev/null
+++ b/data/ref_results/network_suite.py
@@ -0,0 +1,22 @@
+import json
+import network_benchmarks_indices as benchmark_indices
+
+
+network_dict={};
+network_dict['IPERF']=benchmark_indices.iperf_index()
+
+
+
+
+network_bench_list=['IPERF']
+temp=0
+for benchmark in network_bench_list:
+ temp=temp+float(network_dict[benchmark]['1. Index'])
+network_suite_index=temp/len(network_bench_list)
+
+network_dict_f={};
+network_dict_f['1. Network Index']=network_suite_index
+network_dict_f['2. Network suite results']=network_dict
+with open('../../results/network_result.json', 'w+') as result_json:
+ json.dump(network_dict_f, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/reference.json b/data/ref_results/reference.json
new file mode 100644
index 00000000..7ded5532
--- /dev/null
+++ b/data/ref_results/reference.json
@@ -0,0 +1,35 @@
+{
+ "compute": {
+ "dhrystone": 3146.66,
+ "dpi": 8.12,
+ "ssl": {
+ "AES": {
+ "1024B": 808861020,
+ "16B": 735490250,
+ "256B": 803323650,
+ "64B": 788429210,
+ "8192B": 807701160
+ },
+ "RSA": {
+ "1024b": 7931.44,
+ "2048b": 1544.3,
+ "4096b": 161.92,
+ "512b": 22148.9
+ }
+ },
+ "whetstone": 859.1
+ },
+ "network": {
+ "iperf": {
+ "throughput received(b/s)": 9973180000.0
+ }
+ },
+ "storage": {
+ "read": {
+ "IOPS": 6995
+ },
+ "write": {
+ "IOPS": 6990
+ }
+ }
+} \ No newline at end of file
diff --git a/data/ref_results/result_accum.py b/data/ref_results/result_accum.py
new file mode 100644
index 00000000..4c600048
--- /dev/null
+++ b/data/ref_results/result_accum.py
@@ -0,0 +1,31 @@
+import os
+import json
+
+def result_concat(targ_dir):
+ list_vm=[];
+ list_bm=[];
+ diction={};
+ for file in os.listdir(targ_dir):
+ if file.endswith(".json"):
+ if file.startswith("instance"):
+ print str(file)
+ list_vm.append(file)
+ #echo "I am here"
+ else:
+ list_bm.append(file)
+ l=len(list_bm)
+ k=len(list_vm)
+
+ for x in range (0,l):
+ file_t=list_bm[x]
+ with open (targ_dir+file_t) as result_file:
+ result_djson=json.load(result_file)
+ diction['Baremetal'+str(int(x+1))]=result_djson
+
+ for x in range (0,k):
+ file_t=list_vm[x]
+ with open (targ_dir+file_t) as result_file:
+ result_djson=json.load(result_file)
+ diction['Virtual Machine '+str(x+1)]=result_djson
+ return diction
+
diff --git a/data/ref_results/storage_benchmarks_indices.py b/data/ref_results/storage_benchmarks_indices.py
new file mode 100644
index 00000000..6114ad6b
--- /dev/null
+++ b/data/ref_results/storage_benchmarks_indices.py
@@ -0,0 +1,35 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+def fio_index ():
+ total_r=0
+ total_w=0
+ fio_dict=concat('../../results/fio/')
+ for k,v in fio_dict.iteritems():
+ for i,j in fio_dict[k].iteritems():
+ if i=="3 FIO result":
+ for a,b in fio_dict[k][i].iteritems():
+ for c,d in fio_dict[k][i][a].iteritems():
+ if c=='read':
+ raw_num=float(fio_dict[k][i][a][c]["IO/sec"])
+ total_r=total_r+raw_num
+ elif c=='write':
+ raw_num=float(fio_dict[k][i][a][c]["IO/sec"])
+ total_w=total_w+raw_num
+
+ l= len(fio_dict)
+
+ with open ('./reference.json') as reference_file:
+ reference_djson=json.load(reference_file)
+ fio_ref_r=reference_djson['storage']['read']['IOPS']
+ fio_ref_w=reference_djson['storage']['write']['IOPS']
+
+ fio_index_r=float((total_r/l)/fio_ref_r)
+ fio_index_w=float((total_w/l)/fio_ref_w)
+ fio_index=float((fio_index_r+fio_index_w)/2)
+ fio_dict_i={};
+ fio_dict_i['1. Index']=fio_index
+ fio_dict_i['2. Results']=fio_dict
+ return fio_dict_i
+
diff --git a/data/ref_results/storage_suite.py b/data/ref_results/storage_suite.py
new file mode 100644
index 00000000..fe4e940c
--- /dev/null
+++ b/data/ref_results/storage_suite.py
@@ -0,0 +1,22 @@
+import json
+import storage_benchmarks_indices as benchmark_indices
+
+
+storage_dict={};
+storage_dict['FIO']=benchmark_indices.fio_index()
+
+
+
+
+storage_bench_list=['FIO']
+temp=0
+for benchmark in storage_bench_list:
+ temp=temp+float(storage_dict[benchmark]['1. Index'])
+storage_suite_index=temp/len(storage_bench_list)
+
+storage_dict_f={};
+storage_dict_f['1. Storage Index']=storage_suite_index
+storage_dict_f['2. Storage suite results']=storage_dict
+with open('../../results/storage_result.json', 'w+') as result_json:
+ json.dump(storage_dict_f, result_json, indent=4, sort_keys=True)
+
diff --git a/docker/Dockerfile b/docker/Dockerfile
index b0d512f8..0087689c 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -10,7 +10,8 @@ LABEL version="0.1" description="OPNFV QTIP Docker container"
-ENV repos_dir /home/opnfv/repos
+ENV REPOS_DIR /home/opnfv/repos
+ENV QTIP_DIR /home/opnfv/repos/qtip
WORKDIR /home/opnfv
diff --git a/docker/run_qtip.sh b/docker/run_qtip.sh
new file mode 100755
index 00000000..dd3d322f
--- /dev/null
+++ b/docker/run_qtip.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+cp ${REPOS_DIR}/releng/utils/fetch_os_creds.sh ${QTIP_DIR}/data/
+cd ${QTIP_DIR}/data && source get_env_info.sh -n ${INSTALLER_TYPE} -i ${INSTALLER_IP}
+source ${QTIP_DIR}/data/opnfv-creds.sh
+cd ${QTIP_DIR} && python qtip.py -l ${LAB} -f compute.txt
+cd ${QTIP_DIR} && python qtip.py -l ${LAB} -f storage.txt
+cd ${QTIP_DIR} && python qtip.py -l ${LAB} -f network.txt
+
+cd ${QTIP_DIR}/data/ref_results/ $$ python compute_suite.py
+cd ${QTIP_DIR}/data/ref_results/ $$ python storage_suite.py
+cd ${QTIP_DIR}/data/ref_results/ $$ python network_suite.py
+
+
+
+
+
diff --git a/func/env_setup.py b/func/env_setup.py
index a888046c..c0e1b539 100644
--- a/func/env_setup.py
+++ b/func/env_setup.py
@@ -57,15 +57,15 @@ class Env_setup():
ssh_c = 'ssh-keyscan {0} >> ~/.ssh/known_hosts'.format(k)
- #os.system(ssh_c)
- ssh_cmd = 'expect ./data/ssh_exch.exp {0} {1}'.format(ipvar, pwvar)
+ os.system(ssh_c)
+ ssh_cmd = './data/qtip_creds.sh {0}'.format(ipvar)
print ssh_cmd
res = os.system(ssh_cmd)
for infinity in range(100):
try :
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- ssh.connect(k , username = 'root', password = v)
+ ssh.connect(k , key_filename= './data/QtipKey')
stdin, stdout, stderr = ssh.exec_command('ls')
print('SSH successful')
break
@@ -79,7 +79,7 @@ class Env_setup():
time.sleep(3)
os.system(ssh_c)
- for infinity in range(100):
+ for infinity in range(10):
try :
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
diff --git a/test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml
new file mode 100644
index 00000000..022cf5ee
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml
@@ -0,0 +1,35 @@
+
+Scenario:
+ benchmark: dhrystone
+ host: machine_1, machine_2
+ server:
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip: 10.20.0.4
+ pw:
+ role: host
+ machine_2:
+ ip: 10.20.0.5
+ pw:
+ role: host
+
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ ''' This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role: '''
+
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml
new file mode 100644
index 00000000..c14399b1
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml
@@ -0,0 +1,45 @@
+Scenario:
+ benchmark: dhrystone
+ host: virtualmachine_1, virtualmachine_2
+ server: blakc
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ '''This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+ machine_1:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: host
+ machine_2:
+ ip: 172.18.0.15
+ pw: Op3nStack
+ role: host
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml
new file mode 100644
index 00000000..27b6d863
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml
@@ -0,0 +1,34 @@
+Scenario:
+ benchmark: dpi
+ host: machine_1,machine_2
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip: 172.18.0.17
+ pw: Op3nStack
+ role: 1host
+ machine_2:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: 1host
+ Virtual_Machines:
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dpi"
+ Overview: >
+ '''This test will run the DPI benchmark in serial on virutalmachine_1 and virtualmachine_2.\n
+ if you wish to add a host machine add the following information under the Host_Machine tag
+ virtualmachine_2:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+
+ role: 1host
+ flavor: m1.large
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml
new file mode 100644
index 00000000..8a157e7a
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml
@@ -0,0 +1,35 @@
+Scenario:
+ benchmark: dpi
+ 1Run : virtualmachine_1, virtualmachine_2
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1Run
+ flavor: m1.large
+ virtualmachine_2:
+ availability_zone: compute4
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1Run
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dpi"
+ Overview: >
+ '''This test will run the DPI benchmark in parallel on virutalmachine_1 and virtualmachine_2.\n
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml
new file mode 100644
index 00000000..bded6d2d
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml
@@ -0,0 +1,31 @@
+Scenario:
+ benchmark: ssl
+ 1Run: machine_1,machine_2
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip: 10.20.0.4
+ pw:
+ role: 1Run
+ machine_2:
+ ip: 10.20.0.5
+ pw:
+ role: 1Run
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "ssl"
+ Overview: >
+ '''This test will run the SSL benchmark in parallel on machine_1 and machine_1.
+ If you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
diff --git a/test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml
new file mode 100644
index 00000000..cbacf088
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml
@@ -0,0 +1,36 @@
+Scenario:
+ benchmark: ssl
+ host: virtualmachine_1, virtualmachine_2
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: 'QTIP_CentOS'
+ flavor: 'm1.large'
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: 'QTIP_CentOS'
+ flavor: 'm1.large'
+ role: host
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "ssl"
+ Overview: >
+ '''This test will run the SSL benchmark in parallel on virtualmachine_1 and machine_1.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
diff --git a/test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml
new file mode 100644
index 00000000..136ac2b0
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml
@@ -0,0 +1,34 @@
+
+Scenario:
+ benchmark: whetstone
+ host: machine_1, machine_2
+
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip: 10.20.0.4
+ pw:
+ role: host
+ machine_2:
+ ip: 10.20.0.5
+ pw:
+ role: host
+ Virtual_Machines:
+
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "whetstone"
+ Overview: >
+ ''' This test will run the whetstone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a baremetal machine add the following information under the Virtual_Machine tag
+
+ machine_3:
+ ip:
+ pw:
+ role:
+ '''
+
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml
new file mode 100644
index 00000000..17928fa1
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: whetstone
+ host: virtualmachine_1, virtualmachine_1
+ server:
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+
+Test_Description:
+ Test_category: "Compute"
+ Benchmark: "dhrystone"
+ Overview: >
+ '''This test will run the whetstone benchmark in parallel on machine_1 and machine_2.\n
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+ virtualmachine_1:
+ availability_zone: nova
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+ virtualmachine_1:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml
new file mode 100644
index 00000000..18eba8ac
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml
@@ -0,0 +1,43 @@
+Scenario:
+ benchmark: iperf
+ topology: Client and Server on ONE compute
+ server : virtualmachine_1
+ client: virtualmachine_2
+ benchmark_details:
+ duration: 20
+ protocol: tcp
+ bandwidthGbps: 10
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml
new file mode 100644
index 00000000..301a9916
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml
@@ -0,0 +1,43 @@
+Scenario:
+ benchmark: iperf
+ topology: Client and Server on different Compute nodes
+ server: virtualmachine_1
+ client: virtualmachine_2
+ benchmark_details:
+ duration: 20
+ protocol: tcp
+ bandwidthGbps: 10
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml
new file mode 100644
index 00000000..9e7b73e7
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml
@@ -0,0 +1,60 @@
+Scenario:
+ benchmark: iperf
+ topology: 2 Client on one compute and 2 servers on another machine
+ 1Run : virtualmachine_1, virtualmachine_2
+ 2Run:
+ benchmark_details:
+ duration: 20
+ protocol: udp
+ bandwidthGbps: 1
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_3:
+ availability_zone: compute3
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_4:
+ availability_zone: compute4
+ OS_image: QTIP_CentOS
+ public_network: 'provider_network'
+ role: 1-server
+ flavor: m1.large
+
+
+
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/netperf.yaml b/test_cases/dell-us-testing-bm-1/network/netperf.yaml
new file mode 100644
index 00000000..267b288d
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/network/netperf.yaml
@@ -0,0 +1,42 @@
+Scenario:
+ benchmark: netperf
+ topology: Client and Server on ONE compute
+ server : virtualmachine_1
+ client: virtualmachine_2
+ benchmark_details:
+ duration: 10
+ teststream: udp_stream
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: QTIP_CentOS
+ public_network: 'net04_ext'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "netperf"
+ Overview: >
+ '''This test will run the NETPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/pktgen.yaml b/test_cases/dell-us-testing-bm-1/network/pktgen.yaml
new file mode 100644
index 00000000..13fae68f
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/network/pktgen.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: pktgen
+ topology: Client and Server on ONE compute
+ server : virtualmachine_1
+ client: virtualmachine_2
+ benchmark_details:
+ duration: "10"
+ packetsize: "64"
+ ipaddr: "10.10.17.4"
+ numberofports: "10"
+
+Context:
+ Host_Machines:
+
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute2
+ OS_image: pktgenready
+ public_network: 'provider_network'
+ role: 1-server
+ flavor: m1.large
+
+ virtualmachine_2:
+ availability_zone: compute2
+ OS_image: pktgenready
+ public_network: 'provider_network'
+ role: 2-host
+ flavor: m1.large
+
+Test_Description:
+ Test_category: "network"
+ Benchmark: "iperf"
+ Overview: >
+ '''This test will run the IPERF benchmark on virutalmachine_1 and virtualmachine_2. On the\n
+ same compute node
+ if you wish to add a host machine add the following information under the Host_Machine tag
+
+ machine_1:
+ ip:
+ pw:
+ role:
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml b/test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml
new file mode 100644
index 00000000..4778c385
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml
@@ -0,0 +1,39 @@
+Scenario:
+ benchmark: fio
+ host: machine_1, machine_2
+ server: blakc
+
+Context:
+ Host_Machines:
+ machine_1:
+ ip: 10.20.0.7
+ pw: r00tme
+ role: host
+ machine_2:
+ ip: 10.20.0.6
+ pw: r00tme
+ role: host
+
+
+ Virtual_Machines:
+
+
+Test_Description:
+ Test_category: "Storage"
+ Benchmark: "FIO"
+ Overview: >
+ '''This test will run the FIO benchmark in parallel on host machines "machine_1" and "machine_2".\n
+ The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+ The job conists of an fio load of:
+ 1.50% rand read 50% rand write
+ 2.Asynch engine
+ 3.Direct IO.
+ 4.Queing depth of 2
+
+ if you wish to add another machine add the following information under the Host_Machines tag
+ machine_3:
+ ip: 172.18.0.16
+ pw: Op3nStack
+ role: host
+ '''
+
diff --git a/test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml b/test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml
new file mode 100644
index 00000000..dcd27252
--- /dev/null
+++ b/test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml
@@ -0,0 +1,44 @@
+Scenario:
+ benchmark: fio
+ host: machine_1, machine_2
+ server: blakc
+
+Context:
+ Host_Machines:
+
+ Virtual_Machines:
+ virtualmachine_1:
+ availability_zone: compute1
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+ virtualmachine_2:
+ availability_zone: compute2
+ public_network: 'net04_ext'
+ OS_image: QTIP_CentOS
+ flavor: m1.large
+ role: host
+
+Test_Description:
+ Test_category: "Storage"
+ Benchmark: "FIO"
+ Overview: >
+ '''This test will run the FIO benchmark in parallel on virtualmachine_1 and virtualmachine_2.\n
+ The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+ The job conists of an fio load of:
+ 1.50% rand read 50% rand write
+ 2.Asynch engine
+ 3.Direct IO.
+ 4.Queing depth of 2
+
+ if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+ virtualmachine_3:
+ availability_zone:
+ public_network:
+ OS_image:
+ flavor:
+ role:
+ '''
+
diff --git a/test_list/compute.txt b/test_list/compute.txt
index 30d904e3..044d8de6 100644
--- a/test_list/compute.txt
+++ b/test_list/compute.txt
@@ -1,2 +1,8 @@
-dpi_parallel.yaml
-ssl_parallel.yaml
+dhrystone_bm.yaml
+dhrystone_vm.yaml
+whetstone_bm.yaml
+whetstone_vm.yaml
+ssl_bm.yaml
+ssl_vm.yaml
+dpi_bm.yaml
+dpi_vm.yaml
diff --git a/test_list/storage.txt b/test_list/storage.txt
index fdca37e5..266d399e 100644
--- a/test_list/storage.txt
+++ b/test_list/storage.txt
@@ -1,2 +1,2 @@
-fio_baremetal.yaml
+fio_bm.yaml
fio_vm.yaml