On the Provision of SaaS-Level Quality of Service within Heterogeneous Private Clouds

The efficient utilization of computing resources, consisting of multi-core CPUs, GPUs and FPGAs, has become an interesting research problem for achieving high performance on heterogeneous Cloud computing platforms. In particular, FPGA accelerators can provide significant business value in Cloud environments due to its great computing capacity with predictable latency and low power consumption. In this paper, a Software as a Service (SaaS) model is enhanced with Quality of Service (QoS) support, harnessing such heterogeneous hardware architecture (composed of conventional CPUs plus FPGAs as accelerator). More precisely, the proposal takes into account timing user requirements to manage virtual resources. Hence, novel heterogeneous-aware resource allocation and scheduling algorithms are presented, which can be used both on-demand and in-advance. A lineal regression model that predicts the cost of the requested service is combined with a simple heuristic algorithm in order to allocate different types of Virtual Machines (VMs). Moreover, the framework provides the service efficiently by using an adapted scheduling algorithm that combines CPUs and accelerator resources.

[1]  Ken’iti Kido Discrete Fourier Transform , 2015 .

[2]  J. Tukey,et al.  An algorithm for the machine calculation of complex Fourier series , 1965 .

[3]  Joel J. P. C. Rodrigues,et al.  Metaheuristic Scheduling for Cloud: A Survey , 2014, IEEE Systems Journal.

[4]  J. Xu OpenCL – The Open Standard for Parallel Programming of Heterogeneous Systems , 2009 .

[5]  Christophe Desmouliers,et al.  System-on-Chip Design Using High-Level Synthesis Tools , 2012 .

[6]  Rajkumar Buyya,et al.  Mastering Cloud Computing: Foundations and Applications Programming , 2013 .

[7]  Radu Prodan,et al.  Prediction-based real-time resource provisioning for massively multiplayer online games , 2009, Future Gener. Comput. Syst..

[8]  Tom Feist,et al.  Vivado Design Suite , 2012 .

[9]  Alberto Leon-Garcia,et al.  FPGAs in the Cloud: Booting Virtualized Hardware Accelerators with OpenStack , 2014, 2014 IEEE 22nd Annual International Symposium on Field-Programmable Custom Computing Machines.

[10]  N CalheirosRodrigo,et al.  CloudSim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms , 2011 .

[11]  K. Paranjape,et al.  Heterogeneous Computing in the Cloud : Crunching Big Data and Democratizing , 2012 .

[12]  Rubén S. Montero,et al.  IaaS Cloud Architecture: From Virtualized Datacenters to Federated Cloud Infrastructures , 2012, Computer.

[13]  John H. Karl,et al.  The discrete Fourier transform , 2010, Advances in Imaging and Electron Physics.

[14]  Alexandru Iosup,et al.  On the Performance Variability of Production Cloud Services , 2011, 2011 11th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing.

[15]  Mikyung Kang,et al.  Heterogeneous Cloud Computing , 2011, 2011 IEEE International Conference on Cluster Computing.

[16]  María Blanca Caminero,et al.  Flexible Advance-reservation (FAR) for Clouds , 2011, CLOSER.

[17]  Hui Wang,et al.  A service-oriented priority-based resource scheduling scheme for virtualized utility computing , 2008, HiPC'08.

[18]  Omer F. Rana,et al.  Integrating acceleration devices using CometCloud , 2013, ORMaCloud '13.

[19]  Joshua S. Auerbach,et al.  Lime: a Java-compatible and synthesizable language for heterogeneous architectures , 2010, OOPSLA.

[20]  P. Mell,et al.  The NIST Definition of Cloud Computing , 2011 .

[21]  Vanish Talwar,et al.  Pegasus: Coordinated Scheduling for Virtualized Accelerator-based Systems , 2011, USENIX Annual Technical Conference.

[22]  Lin Shi,et al.  vCUDA: GPU accelerated high performance computing in virtual machines , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[23]  María Blanca Caminero,et al.  An Open-Source Framework for Integrating Heterogeneous Resources in Private Clouds , 2014, CLOSER.

[24]  A. W. M. van den Enden,et al.  Discrete Time Signal Processing , 1989 .

[25]  Cédric Augonnet,et al.  StarPU: a unified platform for task scheduling on heterogeneous multicore architectures , 2011, Concurr. Comput. Pract. Exp..

[26]  Gustavo Sutter,et al.  FPGA acceleration using high-level languages of a Monte-Carlo method for pricing complex options , 2013, J. Syst. Archit..

[27]  Borja Sotomayor,et al.  Virtual Infrastructure Management in Private and Hybrid Clouds , 2009, IEEE Internet Computing.