SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Cloud Performance
Benchmarking
The Problem Statement
Test Performance of a Compute Instance on the cloud
The testing focuses on disk IO, network IO, and some index of CPU. This
report outlines the testing procedure ,result data and analysis on the findings
Test Performance of a DB Service on the cloud
The testing focuses on database IOPS, QPS, Connection number and others,
This report outlines the testing procedure ,result data and analysis on findings
Application Deployment
Try out WordPress based web application is deployed on cloud. The
deployment involve 1 instance of Compute and 1 Database service. This
presentation outlines the procedure of deployment and any learnings
associated with it etc.
Testing Steps
Set up
• For the purpose of this tests Alicloud is used
• For compute : An ECS instance with 2
virtual cores and 4GB is used
• For Database an RDS service used. Both
being in the same region.
Steps
1
2
3
4
5
6
Launch an ECS and an RDS
instance in the same region
Whitelist RDS for accessing from
the ECS
Install httpd, PHP modules and
Wordpress on the ECS instance.
Configure Database access in
wordpress config file
Run CPU, Memory and IO test on
ECS. Monitor with top and then with
AliCloud default Monitoring
Create Database instance for
Wordpress app, create user for
database access: Using Alicloud
Console
Install Sysbench tool in ECS
instance.
Run IOPS and Connections test for
the RDS.
Test
Report
IOPS Test on
Compute Node
IOPS on Compute Node: Test Method
FIO utility command is used
# throw-away: 5 min warm-up
fio --runtime=300 --time_based --clocksource=clock_gettime --
name=randread --numjobs=8 
--rw=randread --random_distribution=pareto:0.9 --bs=8k --
size=10g --filename=fio.tmp
# Sample 1min runs with varying job threads and block size
fio --runtime=60 --time_based --clocksource=clock_gettime --
name=randread --numjobs=1 
--rw=randread --random_distribution=pareto:0.9 --bs=8k --
size=10g --filename=fio.tmp
IOPS on Compute Node : Monitor from
Cloud Console
IOPS on Compute Node: Results and
Analysis
• Random Writes are optimized at 4k blocks
• Random Reads work best at 8k blocks
• Writes perform better than reads in this test
Issues
• IOPs for the writes were observed higher than that of in cloud console monitoring of Alicloud.
This is possibly to due to write buffering ignored by fio
• Increasing number of threads does not increase IOPs. This is possibly due to what is
supported in the virtualized disk controller/driver in the hypervisor.
CPU Test on
Compute Node
CPU Performance Test on Compute Node :
Testing Steps
Tools Used sysbench and top
sysbench
--test=cpu
--cpu-max-prime=40000
--num-threads=1 run
Top is used to observe peak CPU utilization
in parallel to the sysbench run
CPU Performance Test on Compute Node :
Monitor from Cloud Console
CPU Performance on Compute Node:
Results & Analysis
# CPU
Events
Number of
Threads
Peak CPU Utilization %
During Test
Total Time
Taken in s
40000 1 50.1 99.86
40000 2 99.5 50.19
40000 3 99.8 50.12
40000 4 99.5 50.13
• No performance anomalies observed. Behaviour expected for CPU with 2 cores
• Comparing the time taken for the same test with other known CPUs the performance can be benchmarked
Issues
• There is no direct relation between CPU events / sec and real CPU clock speed. Only relative
estimate indicates benchmarking against other processors
• This test is not suitable for observing occasional CPU bursts / CPU hogging due to shared
nature of virtual instances. That needs real time monitoring tool for a longer period.
Network
Performance Test
Testing Method
On Server
[root@iZu1iy3602qZ ~]# iperf -s -l 128k
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local xx.xx.xx.xx port 5001 connected with xx.xx.xx.xx
port 42490
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-30.0 sec 175 MBytes 48.8 Mbits/sec
On Client
# iperf -c xx.xx.xx.xx -l 128k -i 4 -t 30
------------------------------------------------------------
Client connecting to xx.xx.xx.xx, TCP port 5001
TCP window size: 45.0 KByte (default)
------------------------------------------------------------
[ 3] local 172.31.54.251 port 42489 connected with
xx.xx.xx.xx 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 4.0 sec 23.2 MBytes 48.8 Mbits/sec
[ 3] 0.0-30.2 sec 176 MBytes 49.0 Mbits/sec
Results & Analysis
With 1 Connections -> 0.0-30.2 sec 176 MBytes 48.9 Mbits/sec
With 4 Connections -> 0.0-30.2 sec 176 MBytes 49.0 Mbits/sec
• The bandwidth limit observed at 49 Mbps could be a throttling on the client or the server. The server was the ECS instance on Alicloud.
The client was external to Alicloud on another cloud provider.
• Within Alicloud the speed was much better - 18 Gbps
RDS Performance
Using sysbench OLTP test mode
#Preparation
sysbench --test=oltp --oltp-table-
size=200000 --mysql-host=<host> --
mysql-db=perfdatabase --mysql-
user=perfuser --mysql-
password=password1 --db-driver=mysql
prepare
# Read Test
sysbench --test=oltp --oltp-table-
size=200000 --mysql-host=<host> --
mysql-db=perfdatabase --mysql-
user=perfuser --mysql-
password=password1 --db-driver=mysql -
-max-time=60 --oltp-read-only=on --
max-requests=0 --num-threads=8 run
Run 1 : 1 Connection
# Read only Test
read: 55594
write: 0
other: 7942
total: 63536
transactions: 3971 (66.17 per sec.)
read/write requests: 55594 (926.38 per sec.)
other operations: 7942 (132.34 per sec.)
# Read & Write Test
read: 43120
write: 15400
other: 6160
total: 64680
transactions: 3080 (51.33 per sec.)
read/write requests: 394060 (975.24 per sec.)
other operations: 41480 (102.66 per sec.)
Run 2 : 4 Parallel Connections
# Read only Test
read: 232890
write: 0
other: 33270
total: 266160
transactions: 16635 (277.18 per sec.)
read/write requests: 232890 (3880.50 per sec.)
other operations: 33270 (554.36 per sec.)
# Read & Write Test
read: 154042
write: 55015
other: 22006
total: 231063
transactions: 11003 (183.34 per sec.)
read/write requests: 209057 (3483.40 per sec.)
other operations: 22006 (366.67 per sec.)
Run 3 : 8 Parallel Connections
# Read only Test
read: 471324
write: 0
other: 67332
total: 538656
transactions: 33666 (560.99 per sec.)
read/write requests: 471324 (7853.89 per sec.)
other operations: 67332 (1121.98 per sec.)
# Read & Write Test
read: 290360
write: 103700
other: 41480
total: 435540
transactions: 20740 (345.59 per sec.)
read/write requests: 394060 (6566.21 per sec.)
other operations: 41480 (691.18 per sec.)
Run 4 : 16 Parallel Connections
# Read only Test
read: 707126
write: 0
other: 101018
total: 808144
transactions: 50509 (841.57 per sec.)
read/write requests: 707126 (11782.05 per sec.)
other operations: 101018 (1683.15 per sec.)
# Read & Write Test
read: 482804
write: 172430
other: 68972
total: 724206
transactions: 34486 (574.49 per sec.)
read/write requests: 655234 (10915.38 per sec.)
other operations: 68972 (1148.99 per sec.)
Run 5 : 32 Parallel Connections
# Read only Test
read: 707126
write: 0
other: 101018
total: 808144
transactions: 50509 (841.57 per sec.)
read/write requests: 707126 (11782.05 per sec.)
other operations: 101018 (1683.15 per sec.)
# Read & Write Test
read: 708680
write: 253100
other: 101240
total: 1063020
transactions: 50620 (843.33 per sec.)
read/write requests: 961780 (16023.35 per sec.)
other operations: 101240 (1686.67 per sec.)
Maximum Performance
Eventually the following maximums were reached
Maximum Number of Queries per second (QPS): 22 k
IoPS: Could not measure
Concurrent Connections: Tested upto 600 concurrent connections. After which server threw error
FATAL: error 1040: Too many connections
RDS Monitoring Metrics
Issues
• Mysqlslap could not be run due to lack of database admin privilege : Error: mysqlslap: Cannot
drop database 'mysqlslap' ERROR : OPERATION need to be executed set by ADMIN.
• IOPs could not be reliably measured without local access to mySQL instance.
• Only query performance could be measured
• The number of parallel connections can be indirectly measured by running netstat | grep
<hostname>| wc -l when the test is going on
• Cloud console monitoring collects data every 300 seconds. For short tests running for about 1
min each, those test data are not reflected in the console monitoring graphs.
Default ECS Disk Usage Metrics
IOPS
Bytes / Sec
Sample Application
Deployment on ECS
and RDS
Wordpress Deployment
• Create WordPress DB in RDS & whitelist the ECS Server
• Create Wordpress DB and DB user in RDS
• Install HTTPD and PHP module on the ECS instance
• Configure Wordpress to use the RDS BD information
• Following this use apache ab tool performance test the wordpress site for concurrent
requests, max TPS and latency measures.
ECS Instance
httpd
PHP Module
Wordpress (php)
RDS Service
Wordpress DB
Connection
Whitelisting
Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

ELK: Moose-ively scaling your log system
ELK: Moose-ively scaling your log systemELK: Moose-ively scaling your log system
ELK: Moose-ively scaling your log systemAvleen Vig
 
Streaming and Messaging
Streaming and MessagingStreaming and Messaging
Streaming and MessagingXin Wang
 
WebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsWebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsMaarten Smeets
 
Hadoop Query Performance Smackdown
Hadoop Query Performance SmackdownHadoop Query Performance Smackdown
Hadoop Query Performance SmackdownDataWorks Summit
 
(DAT202) Managed Database Options on AWS
(DAT202) Managed Database Options on AWS(DAT202) Managed Database Options on AWS
(DAT202) Managed Database Options on AWSAmazon Web Services
 
On The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterOn The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterSrihari Sriraman
 
Using Redis at Facebook
Using Redis at FacebookUsing Redis at Facebook
Using Redis at FacebookRedis Labs
 
Next-Gen Decision Making in Under 2ms
Next-Gen Decision Making in Under 2msNext-Gen Decision Making in Under 2ms
Next-Gen Decision Making in Under 2msIlya Ganelin
 
Fortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleuFortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleuMarco Tusa
 
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...Tim Vaillancourt
 
Architecture for building scalable and highly available Postgres Cluster
Architecture for building scalable and highly available Postgres ClusterArchitecture for building scalable and highly available Postgres Cluster
Architecture for building scalable and highly available Postgres ClusterAshnikbiz
 
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...DataStax
 
Hardware Provisioning for MongoDB
Hardware Provisioning for MongoDBHardware Provisioning for MongoDB
Hardware Provisioning for MongoDBMongoDB
 
Lessons PostgreSQL learned from commercial databases, and didn’t
Lessons PostgreSQL learned from commercial databases, and didn’tLessons PostgreSQL learned from commercial databases, and didn’t
Lessons PostgreSQL learned from commercial databases, and didn’tPGConf APAC
 
Deep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block StoreDeep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block StoreAmazon Web Services
 
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair Updates
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair UpdatesScylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair Updates
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair UpdatesScyllaDB
 
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in Scylla
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in ScyllaScylla Summit 2018: Worry-free ingestion - flow-control of writes in Scylla
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in ScyllaScyllaDB
 
The Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQLThe Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQLDatadog
 
Amazon RDS for PostgreSQL - PGConf 2016
Amazon RDS for PostgreSQL - PGConf 2016 Amazon RDS for PostgreSQL - PGConf 2016
Amazon RDS for PostgreSQL - PGConf 2016 Grant McAlister
 
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Jon Watte
 

Was ist angesagt? (20)

ELK: Moose-ively scaling your log system
ELK: Moose-ively scaling your log systemELK: Moose-ively scaling your log system
ELK: Moose-ively scaling your log system
 
Streaming and Messaging
Streaming and MessagingStreaming and Messaging
Streaming and Messaging
 
WebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck ThreadsWebLogic Stability; Detect and Analyse Stuck Threads
WebLogic Stability; Detect and Analyse Stuck Threads
 
Hadoop Query Performance Smackdown
Hadoop Query Performance SmackdownHadoop Query Performance Smackdown
Hadoop Query Performance Smackdown
 
(DAT202) Managed Database Options on AWS
(DAT202) Managed Database Options on AWS(DAT202) Managed Database Options on AWS
(DAT202) Managed Database Options on AWS
 
On The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL ClusterOn The Building Of A PostgreSQL Cluster
On The Building Of A PostgreSQL Cluster
 
Using Redis at Facebook
Using Redis at FacebookUsing Redis at Facebook
Using Redis at Facebook
 
Next-Gen Decision Making in Under 2ms
Next-Gen Decision Making in Under 2msNext-Gen Decision Making in Under 2ms
Next-Gen Decision Making in Under 2ms
 
Fortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleuFortify aws aurora_proxy_2019_pleu
Fortify aws aurora_proxy_2019_pleu
 
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...
One Tool to Rule Them All- Seamless SQL on MongoDB, MySQL and Redis with Apac...
 
Architecture for building scalable and highly available Postgres Cluster
Architecture for building scalable and highly available Postgres ClusterArchitecture for building scalable and highly available Postgres Cluster
Architecture for building scalable and highly available Postgres Cluster
 
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...
Honest Performance Testing with "NDBench" (Vinay Chella, Netflix) | Cassandra...
 
Hardware Provisioning for MongoDB
Hardware Provisioning for MongoDBHardware Provisioning for MongoDB
Hardware Provisioning for MongoDB
 
Lessons PostgreSQL learned from commercial databases, and didn’t
Lessons PostgreSQL learned from commercial databases, and didn’tLessons PostgreSQL learned from commercial databases, and didn’t
Lessons PostgreSQL learned from commercial databases, and didn’t
 
Deep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block StoreDeep Dive on Amazon Elastic Block Store
Deep Dive on Amazon Elastic Block Store
 
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair Updates
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair UpdatesScylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair Updates
Scylla Summit 2018: Scylla Feature Talks - Scylla Streaming and Repair Updates
 
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in Scylla
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in ScyllaScylla Summit 2018: Worry-free ingestion - flow-control of writes in Scylla
Scylla Summit 2018: Worry-free ingestion - flow-control of writes in Scylla
 
The Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQLThe Data Mullet: From all SQL to No SQL back to Some SQL
The Data Mullet: From all SQL to No SQL back to Some SQL
 
Amazon RDS for PostgreSQL - PGConf 2016
Amazon RDS for PostgreSQL - PGConf 2016 Amazon RDS for PostgreSQL - PGConf 2016
Amazon RDS for PostgreSQL - PGConf 2016
 
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
Message Queuing on a Large Scale: IMVUs stateful real-time message queue for ...
 

Ähnlich wie Cloud Performance Benchmarking

Performance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cPerformance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cAjith Narayanan
 
Linux Kernel vs DPDK: HTTP Performance Showdown
Linux Kernel vs DPDK: HTTP Performance ShowdownLinux Kernel vs DPDK: HTTP Performance Showdown
Linux Kernel vs DPDK: HTTP Performance ShowdownScyllaDB
 
z/VM Performance Analysis
z/VM Performance Analysisz/VM Performance Analysis
z/VM Performance AnalysisRodrigo Campos
 
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 InstanceExtreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 InstanceScyllaDB
 
20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWSAmazon Web Services Korea
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep DiveAmazon Web Services
 
Windows Azure Acid Test
Windows Azure Acid TestWindows Azure Acid Test
Windows Azure Acid Testexpanz
 
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New FeaturesAmazon Web Services
 
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.The Linux Foundation
 
Our Multi-Year Journey to a 10x Faster Confluent Cloud
Our Multi-Year Journey to a 10x Faster Confluent CloudOur Multi-Year Journey to a 10x Faster Confluent Cloud
Our Multi-Year Journey to a 10x Faster Confluent CloudHostedbyConfluent
 
FPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow SwitchFPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow SwitchYutaka Yasuda
 
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...MongoDB
 
Sunx4450 Intel7460 GigaSpaces XAP Platform Benchmark
Sunx4450 Intel7460 GigaSpaces XAP Platform BenchmarkSunx4450 Intel7460 GigaSpaces XAP Platform Benchmark
Sunx4450 Intel7460 GigaSpaces XAP Platform BenchmarkShay Hassidim
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWRpasalapudi
 
PerfUG 3 - perfs système
PerfUG 3 - perfs systèmePerfUG 3 - perfs système
PerfUG 3 - perfs systèmeLudovic Piot
 
Multi thread slave_performance_on_opc
Multi thread slave_performance_on_opcMulti thread slave_performance_on_opc
Multi thread slave_performance_on_opcShinya Sugiyama
 
Linux Systems Performance 2016
Linux Systems Performance 2016Linux Systems Performance 2016
Linux Systems Performance 2016Brendan Gregg
 
Alibaba cloud benchmarking report ecs rds limton xavier
Alibaba cloud benchmarking report ecs  rds limton xavierAlibaba cloud benchmarking report ecs  rds limton xavier
Alibaba cloud benchmarking report ecs rds limton xavierLimton Xavier
 

Ähnlich wie Cloud Performance Benchmarking (20)

Performance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12cPerformance Tuning Oracle Weblogic Server 12c
Performance Tuning Oracle Weblogic Server 12c
 
Linux Kernel vs DPDK: HTTP Performance Showdown
Linux Kernel vs DPDK: HTTP Performance ShowdownLinux Kernel vs DPDK: HTTP Performance Showdown
Linux Kernel vs DPDK: HTTP Performance Showdown
 
z/VM Performance Analysis
z/VM Performance Analysisz/VM Performance Analysis
z/VM Performance Analysis
 
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 InstanceExtreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
Extreme HTTP Performance Tuning: 1.2M API req/s on a 4 vCPU EC2 Instance
 
20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS20160503 Amazed by AWS | Tips about Performance on AWS
20160503 Amazed by AWS | Tips about Performance on AWS
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive
 
Windows Azure Acid Test
Windows Azure Acid TestWindows Azure Acid Test
Windows Azure Acid Test
 
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features
(DAT402) Amazon RDS PostgreSQL:Lessons Learned & New Features
 
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
XPDDS18: Real Time in XEN on ARM - Andrii Anisov, EPAM Systems Inc.
 
Our Multi-Year Journey to a 10x Faster Confluent Cloud
Our Multi-Year Journey to a 10x Faster Confluent CloudOur Multi-Year Journey to a 10x Faster Confluent Cloud
Our Multi-Year Journey to a 10x Faster Confluent Cloud
 
FPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow SwitchFPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow Switch
 
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...
Partner Webinar: MongoDB and Softlayer on Bare Metal: Stability, Performance,...
 
Dpdk performance
Dpdk performanceDpdk performance
Dpdk performance
 
Sunx4450 Intel7460 GigaSpaces XAP Platform Benchmark
Sunx4450 Intel7460 GigaSpaces XAP Platform BenchmarkSunx4450 Intel7460 GigaSpaces XAP Platform Benchmark
Sunx4450 Intel7460 GigaSpaces XAP Platform Benchmark
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWR
 
PerfUG 3 - perfs système
PerfUG 3 - perfs systèmePerfUG 3 - perfs système
PerfUG 3 - perfs système
 
Multi thread slave_performance_on_opc
Multi thread slave_performance_on_opcMulti thread slave_performance_on_opc
Multi thread slave_performance_on_opc
 
Linux Systems Performance 2016
Linux Systems Performance 2016Linux Systems Performance 2016
Linux Systems Performance 2016
 
ADCSS 2022
ADCSS 2022ADCSS 2022
ADCSS 2022
 
Alibaba cloud benchmarking report ecs rds limton xavier
Alibaba cloud benchmarking report ecs  rds limton xavierAlibaba cloud benchmarking report ecs  rds limton xavier
Alibaba cloud benchmarking report ecs rds limton xavier
 

Kürzlich hochgeladen

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 

Kürzlich hochgeladen (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 

Cloud Performance Benchmarking

  • 2. The Problem Statement Test Performance of a Compute Instance on the cloud The testing focuses on disk IO, network IO, and some index of CPU. This report outlines the testing procedure ,result data and analysis on the findings Test Performance of a DB Service on the cloud The testing focuses on database IOPS, QPS, Connection number and others, This report outlines the testing procedure ,result data and analysis on findings Application Deployment Try out WordPress based web application is deployed on cloud. The deployment involve 1 instance of Compute and 1 Database service. This presentation outlines the procedure of deployment and any learnings associated with it etc.
  • 4. Set up • For the purpose of this tests Alicloud is used • For compute : An ECS instance with 2 virtual cores and 4GB is used • For Database an RDS service used. Both being in the same region.
  • 5. Steps 1 2 3 4 5 6 Launch an ECS and an RDS instance in the same region Whitelist RDS for accessing from the ECS Install httpd, PHP modules and Wordpress on the ECS instance. Configure Database access in wordpress config file Run CPU, Memory and IO test on ECS. Monitor with top and then with AliCloud default Monitoring Create Database instance for Wordpress app, create user for database access: Using Alicloud Console Install Sysbench tool in ECS instance. Run IOPS and Connections test for the RDS. Test Report
  • 7. IOPS on Compute Node: Test Method FIO utility command is used # throw-away: 5 min warm-up fio --runtime=300 --time_based --clocksource=clock_gettime -- name=randread --numjobs=8 --rw=randread --random_distribution=pareto:0.9 --bs=8k -- size=10g --filename=fio.tmp # Sample 1min runs with varying job threads and block size fio --runtime=60 --time_based --clocksource=clock_gettime -- name=randread --numjobs=1 --rw=randread --random_distribution=pareto:0.9 --bs=8k -- size=10g --filename=fio.tmp
  • 8. IOPS on Compute Node : Monitor from Cloud Console
  • 9. IOPS on Compute Node: Results and Analysis • Random Writes are optimized at 4k blocks • Random Reads work best at 8k blocks • Writes perform better than reads in this test
  • 10. Issues • IOPs for the writes were observed higher than that of in cloud console monitoring of Alicloud. This is possibly to due to write buffering ignored by fio • Increasing number of threads does not increase IOPs. This is possibly due to what is supported in the virtualized disk controller/driver in the hypervisor.
  • 12. CPU Performance Test on Compute Node : Testing Steps Tools Used sysbench and top sysbench --test=cpu --cpu-max-prime=40000 --num-threads=1 run Top is used to observe peak CPU utilization in parallel to the sysbench run
  • 13. CPU Performance Test on Compute Node : Monitor from Cloud Console
  • 14. CPU Performance on Compute Node: Results & Analysis # CPU Events Number of Threads Peak CPU Utilization % During Test Total Time Taken in s 40000 1 50.1 99.86 40000 2 99.5 50.19 40000 3 99.8 50.12 40000 4 99.5 50.13 • No performance anomalies observed. Behaviour expected for CPU with 2 cores • Comparing the time taken for the same test with other known CPUs the performance can be benchmarked
  • 15. Issues • There is no direct relation between CPU events / sec and real CPU clock speed. Only relative estimate indicates benchmarking against other processors • This test is not suitable for observing occasional CPU bursts / CPU hogging due to shared nature of virtual instances. That needs real time monitoring tool for a longer period.
  • 17. Testing Method On Server [root@iZu1iy3602qZ ~]# iperf -s -l 128k ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local xx.xx.xx.xx port 5001 connected with xx.xx.xx.xx port 42490 [ ID] Interval Transfer Bandwidth [ 4] 0.0-30.0 sec 175 MBytes 48.8 Mbits/sec On Client # iperf -c xx.xx.xx.xx -l 128k -i 4 -t 30 ------------------------------------------------------------ Client connecting to xx.xx.xx.xx, TCP port 5001 TCP window size: 45.0 KByte (default) ------------------------------------------------------------ [ 3] local 172.31.54.251 port 42489 connected with xx.xx.xx.xx 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0- 4.0 sec 23.2 MBytes 48.8 Mbits/sec [ 3] 0.0-30.2 sec 176 MBytes 49.0 Mbits/sec
  • 18. Results & Analysis With 1 Connections -> 0.0-30.2 sec 176 MBytes 48.9 Mbits/sec With 4 Connections -> 0.0-30.2 sec 176 MBytes 49.0 Mbits/sec • The bandwidth limit observed at 49 Mbps could be a throttling on the client or the server. The server was the ECS instance on Alicloud. The client was external to Alicloud on another cloud provider. • Within Alicloud the speed was much better - 18 Gbps
  • 20. Using sysbench OLTP test mode #Preparation sysbench --test=oltp --oltp-table- size=200000 --mysql-host=<host> -- mysql-db=perfdatabase --mysql- user=perfuser --mysql- password=password1 --db-driver=mysql prepare # Read Test sysbench --test=oltp --oltp-table- size=200000 --mysql-host=<host> -- mysql-db=perfdatabase --mysql- user=perfuser --mysql- password=password1 --db-driver=mysql - -max-time=60 --oltp-read-only=on -- max-requests=0 --num-threads=8 run
  • 21. Run 1 : 1 Connection # Read only Test read: 55594 write: 0 other: 7942 total: 63536 transactions: 3971 (66.17 per sec.) read/write requests: 55594 (926.38 per sec.) other operations: 7942 (132.34 per sec.) # Read & Write Test read: 43120 write: 15400 other: 6160 total: 64680 transactions: 3080 (51.33 per sec.) read/write requests: 394060 (975.24 per sec.) other operations: 41480 (102.66 per sec.)
  • 22. Run 2 : 4 Parallel Connections # Read only Test read: 232890 write: 0 other: 33270 total: 266160 transactions: 16635 (277.18 per sec.) read/write requests: 232890 (3880.50 per sec.) other operations: 33270 (554.36 per sec.) # Read & Write Test read: 154042 write: 55015 other: 22006 total: 231063 transactions: 11003 (183.34 per sec.) read/write requests: 209057 (3483.40 per sec.) other operations: 22006 (366.67 per sec.)
  • 23. Run 3 : 8 Parallel Connections # Read only Test read: 471324 write: 0 other: 67332 total: 538656 transactions: 33666 (560.99 per sec.) read/write requests: 471324 (7853.89 per sec.) other operations: 67332 (1121.98 per sec.) # Read & Write Test read: 290360 write: 103700 other: 41480 total: 435540 transactions: 20740 (345.59 per sec.) read/write requests: 394060 (6566.21 per sec.) other operations: 41480 (691.18 per sec.)
  • 24. Run 4 : 16 Parallel Connections # Read only Test read: 707126 write: 0 other: 101018 total: 808144 transactions: 50509 (841.57 per sec.) read/write requests: 707126 (11782.05 per sec.) other operations: 101018 (1683.15 per sec.) # Read & Write Test read: 482804 write: 172430 other: 68972 total: 724206 transactions: 34486 (574.49 per sec.) read/write requests: 655234 (10915.38 per sec.) other operations: 68972 (1148.99 per sec.)
  • 25. Run 5 : 32 Parallel Connections # Read only Test read: 707126 write: 0 other: 101018 total: 808144 transactions: 50509 (841.57 per sec.) read/write requests: 707126 (11782.05 per sec.) other operations: 101018 (1683.15 per sec.) # Read & Write Test read: 708680 write: 253100 other: 101240 total: 1063020 transactions: 50620 (843.33 per sec.) read/write requests: 961780 (16023.35 per sec.) other operations: 101240 (1686.67 per sec.)
  • 26. Maximum Performance Eventually the following maximums were reached Maximum Number of Queries per second (QPS): 22 k IoPS: Could not measure Concurrent Connections: Tested upto 600 concurrent connections. After which server threw error FATAL: error 1040: Too many connections
  • 28. Issues • Mysqlslap could not be run due to lack of database admin privilege : Error: mysqlslap: Cannot drop database 'mysqlslap' ERROR : OPERATION need to be executed set by ADMIN. • IOPs could not be reliably measured without local access to mySQL instance. • Only query performance could be measured • The number of parallel connections can be indirectly measured by running netstat | grep <hostname>| wc -l when the test is going on • Cloud console monitoring collects data every 300 seconds. For short tests running for about 1 min each, those test data are not reflected in the console monitoring graphs.
  • 29. Default ECS Disk Usage Metrics IOPS Bytes / Sec
  • 31. Wordpress Deployment • Create WordPress DB in RDS & whitelist the ECS Server • Create Wordpress DB and DB user in RDS • Install HTTPD and PHP module on the ECS instance • Configure Wordpress to use the RDS BD information • Following this use apache ab tool performance test the wordpress site for concurrent requests, max TPS and latency measures. ECS Instance httpd PHP Module Wordpress (php) RDS Service Wordpress DB Connection Whitelisting