Modeling virtualized applications using machine learning techniques

Sajib Kundu, Raju Rangaswami, Ajay Gulati, Ming Zhao, Kaushik Dutta

Research output: Contribution to journalArticle

47 Citations (Scopus)

Abstract

With the growing adoption of virtualized datacenters and cloud hosting services, the allocation and sizing of resources such as CPU, memory, and I/O bandwidth for virtual machines (VMs) is becoming increasingly important. Accurate performance modeling of an application would help users in better VM sizing, thus reducing costs. It can also benefit cloud service providers who can offer a new charging model based on the VMs' performance instead of their configured sizes. In this paper, we present techniques to model the performance of a VM-hosted application as a function of the resources allocated to the VM and the resource contention it experiences. To address this multi-dimensional modeling problem, we propose and refine the use of two machine learning techniques: artificial neural network (ANN) and support vector machine (SVM). We evaluate these modeling techniques using five virtualized applications from the RUBiS and Filebench suite of benchmarks and demonstrate that their median and 90th percentile prediction errors are within 4.36% and 29.17% respectively. These results are substantially better than regression based approaches as well as direct applications of machine learning techniques without our refinements. We also present a simple and effective approach to VM sizing and empirically demonstrate that it can deliver optimal results for 65% of the sizing problems that we studied and produces close-to-optimal sizes for the remaining 35%.

Original languageEnglish (US)
Pages (from-to)3-14
Number of pages12
JournalACM SIGPLAN Notices
Volume47
Issue number7
DOIs
StatePublished - Sep 2012
Externally publishedYes

Fingerprint

Learning systems
Program processors
Support vector machines
Virtual machine
Neural networks
Bandwidth
Data storage equipment
Costs

Keywords

  • Cloud data centers
  • Machine learning
  • Performance modeling
  • Virtualization
  • VM sizing

ASJC Scopus subject areas

  • Computer Science(all)

Cite this

Modeling virtualized applications using machine learning techniques. / Kundu, Sajib; Rangaswami, Raju; Gulati, Ajay; Zhao, Ming; Dutta, Kaushik.

In: ACM SIGPLAN Notices, Vol. 47, No. 7, 09.2012, p. 3-14.

Research output: Contribution to journalArticle

Kundu, Sajib ; Rangaswami, Raju ; Gulati, Ajay ; Zhao, Ming ; Dutta, Kaushik. / Modeling virtualized applications using machine learning techniques. In: ACM SIGPLAN Notices. 2012 ; Vol. 47, No. 7. pp. 3-14.
@article{86819108236b418b8c05fb458a1a65f8,
title = "Modeling virtualized applications using machine learning techniques",
abstract = "With the growing adoption of virtualized datacenters and cloud hosting services, the allocation and sizing of resources such as CPU, memory, and I/O bandwidth for virtual machines (VMs) is becoming increasingly important. Accurate performance modeling of an application would help users in better VM sizing, thus reducing costs. It can also benefit cloud service providers who can offer a new charging model based on the VMs' performance instead of their configured sizes. In this paper, we present techniques to model the performance of a VM-hosted application as a function of the resources allocated to the VM and the resource contention it experiences. To address this multi-dimensional modeling problem, we propose and refine the use of two machine learning techniques: artificial neural network (ANN) and support vector machine (SVM). We evaluate these modeling techniques using five virtualized applications from the RUBiS and Filebench suite of benchmarks and demonstrate that their median and 90th percentile prediction errors are within 4.36{\%} and 29.17{\%} respectively. These results are substantially better than regression based approaches as well as direct applications of machine learning techniques without our refinements. We also present a simple and effective approach to VM sizing and empirically demonstrate that it can deliver optimal results for 65{\%} of the sizing problems that we studied and produces close-to-optimal sizes for the remaining 35{\%}.",
keywords = "Cloud data centers, Machine learning, Performance modeling, Virtualization, VM sizing",
author = "Sajib Kundu and Raju Rangaswami and Ajay Gulati and Ming Zhao and Kaushik Dutta",
year = "2012",
month = "9",
doi = "10.1145/2365864.2151028",
language = "English (US)",
volume = "47",
pages = "3--14",
journal = "SIGPLAN Notices (ACM Special Interest Group on Programming Languages)",
issn = "1523-2867",
publisher = "Association for Computing Machinery (ACM)",
number = "7",

}

TY - JOUR

T1 - Modeling virtualized applications using machine learning techniques

AU - Kundu, Sajib

AU - Rangaswami, Raju

AU - Gulati, Ajay

AU - Zhao, Ming

AU - Dutta, Kaushik

PY - 2012/9

Y1 - 2012/9

N2 - With the growing adoption of virtualized datacenters and cloud hosting services, the allocation and sizing of resources such as CPU, memory, and I/O bandwidth for virtual machines (VMs) is becoming increasingly important. Accurate performance modeling of an application would help users in better VM sizing, thus reducing costs. It can also benefit cloud service providers who can offer a new charging model based on the VMs' performance instead of their configured sizes. In this paper, we present techniques to model the performance of a VM-hosted application as a function of the resources allocated to the VM and the resource contention it experiences. To address this multi-dimensional modeling problem, we propose and refine the use of two machine learning techniques: artificial neural network (ANN) and support vector machine (SVM). We evaluate these modeling techniques using five virtualized applications from the RUBiS and Filebench suite of benchmarks and demonstrate that their median and 90th percentile prediction errors are within 4.36% and 29.17% respectively. These results are substantially better than regression based approaches as well as direct applications of machine learning techniques without our refinements. We also present a simple and effective approach to VM sizing and empirically demonstrate that it can deliver optimal results for 65% of the sizing problems that we studied and produces close-to-optimal sizes for the remaining 35%.

AB - With the growing adoption of virtualized datacenters and cloud hosting services, the allocation and sizing of resources such as CPU, memory, and I/O bandwidth for virtual machines (VMs) is becoming increasingly important. Accurate performance modeling of an application would help users in better VM sizing, thus reducing costs. It can also benefit cloud service providers who can offer a new charging model based on the VMs' performance instead of their configured sizes. In this paper, we present techniques to model the performance of a VM-hosted application as a function of the resources allocated to the VM and the resource contention it experiences. To address this multi-dimensional modeling problem, we propose and refine the use of two machine learning techniques: artificial neural network (ANN) and support vector machine (SVM). We evaluate these modeling techniques using five virtualized applications from the RUBiS and Filebench suite of benchmarks and demonstrate that their median and 90th percentile prediction errors are within 4.36% and 29.17% respectively. These results are substantially better than regression based approaches as well as direct applications of machine learning techniques without our refinements. We also present a simple and effective approach to VM sizing and empirically demonstrate that it can deliver optimal results for 65% of the sizing problems that we studied and produces close-to-optimal sizes for the remaining 35%.

KW - Cloud data centers

KW - Machine learning

KW - Performance modeling

KW - Virtualization

KW - VM sizing

UR - http://www.scopus.com/inward/record.url?scp=84878473891&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84878473891&partnerID=8YFLogxK

U2 - 10.1145/2365864.2151028

DO - 10.1145/2365864.2151028

M3 - Article

VL - 47

SP - 3

EP - 14

JO - SIGPLAN Notices (ACM Special Interest Group on Programming Languages)

JF - SIGPLAN Notices (ACM Special Interest Group on Programming Languages)

SN - 1523-2867

IS - 7

ER -