0% found this document useful (0 votes)
63 views

Hassan Cloud

This cloud computing document

Uploaded by

Rajesh Kumhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views

Hassan Cloud

This cloud computing document

Uploaded by

Rajesh Kumhar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Cloud Computing: Literature Review

Rakibul Hassan
Electrical and Computer Engineering Department
George Mason University
Fairfax, Virginia
[email protected]

Abstract—Cloud computing has recently emerged as a new cloud services include Netflix, Google Drive, and Microsoft
paradigm for hosting and delivering services over the Internet. Onedrive.
Cloud computing is attractive to business owners as it eliminates Also Amazon Web Service, Microsoft Azure, IBM cloud
the requirement for users to plan ahead for provisioning, and
allows enterprises to start from the small and increase resources service, Google Cloud service are among the top cloud service
only when there is a rise in service demand. However, despite provider. Most Common questions that’s need to answered in
the fact that cloud computing offers huge opportunities to the Cloud Computing are:
IT industry, the development of cloud computing technology is
• How to evaluate and choose the right cloud solution?
currently at its infancy, with many issues still to be addressed. In
this paper, we present a survey of cloud computing, highlighting • How to design applications which is optimized for the
its key concepts, architectural principles, state-of-the-art imple- cloud?
mentation as well as research challenges. The aim of this paper • How to integrate public cloud applications with in-
is to provide a better understanding of the design challenges of premise and private cloud applications?
cloud computing and identify important research directions in
• How to integrate different cloud solutions?
this increasingly important area.
• How to setup new infrastructures so that applications
Index Terms—cloud, performance, cloud computing, architec-
ture, scale-up, big-data running on them can easily interoperate and move to
public cloud, if required?
I. INTRODUCTION In this work a brief survey is presented to discuss the present
Cloud computing provides a large variety of architectural research work addressing all these questions and their probable
configurations, such as the number of cores, amount of mem- solutions.
ory, and the number of nodes. The performance of a workload
an application and its input can execute up to 20 times longer
or cost 10 times more than optimal. The ready flexibility
in cloud offerings has created a paradigm shift. Whereas
before an application was tuned for a given cluster, in the
cloud the architectural configuration is tuned for the workload.
Furthermore, because the cloud has a pay-as-you-go model,
each configuration (cluster size VM type) has running cost and
execution time. Therefore, a workload can be optimized for
least cost or shortest time which are different configurations.
Choosing the right cloud configuration for an application is
essential to service quality and commercial competitiveness.
For instance, a bad cloud configuration can result in up to 12
times more cost for the same performance target. The saving
from a proper cloud configuration is even more significant
for recurring jobs [5], [9] in which similar workloads are
executed repeatedly. Nonetheless, selecting the best cloud
configuration, e.g., the cheapest or the fastest, is difficult due
to the complexity of simultaneously achieving high accuracy, Fig. 1. Cloud Computing.
low overhead, and adaptivity for different applications and
workloads.
III. WHAT IS C LOUD C OMPUTING
II. WHAT IS A C LOUD A. The NIST Definition of Cloud Computing
A cloud can be defined as the software and services that run Cloud computing is a model for enabling ubiquitous, con-
on the Internet, instead of locally on a local host system. These venient, on-demand network access to a shared pool of config-
software and services can be accessed remotely. Example of urable computing resources (e.g., networks, servers, storage,
Fig. 2. Cloud-Computing-Benefits

Fig. 3. Cloud-Computing-Architecture
applications, and services) that can be rapidly provisioned
and released with minimal management effort or service
provider interaction [13]. This cloud model is composed of
scale rapidly outward and inward commensurate with
five essential characteristics, three service models, and four
demand. To the consumer, the capabilities available for
deployment models. provisioning often appear to be unlimited and can be
NISTs definition identified self-service, accessibility from appropriated in any quantity at any time.
desktops, laptops, and mobile phones, resources that are • Measured service. Cloud systems automatically control
pooled among multiple users and applications, elastic re- and optimize resource use by leveraging a metering
sources that can be rapidly reapportioned as needed, and capability1 at some level of abstraction appropriate to the
measured service as the five essential characteristics of cloud type of service (e.g., storage, processing, bandwidth, and
computing. When these characteristics are combined, they active user accounts). Resource usage can be monitored,
create cloud computing infrastructure that contains both a controlled, and reported, providing transparency for both
physical layer and an abstraction layer. The physical layer the provider and consumer of the utilized service.
consists of hardware resources that support the cloud services
(i.e. servers, storage and network components). The abstraction According to Amazon, clouds enable 7 transformation of
layer consists of the software deployed across the physical how applications are designed, built and used.
layer, thereby expressing the essential characteristics of the • Cloud makes distributed architectures easy

cloud per NISTs definition. • Cloud enables users to embrace the security advantages
of shared systems
B. Characteristics of Cloud Computing: • Cloud enables enterprises to move from scaling by archi-

• On-demand self-service. A consumer can unilaterally tecture to scaling by command


provision computing capabilities, such as server time • Cloud puts a supercomputer into the hands of every

and network storage, as needed automatically without developer


requiring human interaction with each service provider. • Cloud enables users to experiment often and fail quickly

• Broad network access. Capabilities are available over • Cloud enables big data without big servers

the network and accessed through standard mechanisms • Cloud enables a mobile ecosystem for a mobile-first

that promote use by heterogeneous thin or thick client world


platforms (e.g., mobile phones, tablets, laptops, and work-
stations). C. Service Models:
• Resource pooling. The providers computing resources are • Software as a Service (SaaS). The capability provided
pooled to serve multiple consumers using a multi-tenant to the consumer is to use the providers applications
model, with different physical and virtual resources dy- running on a cloud infrastructure2 . The applications are
namically assigned and reassigned according to consumer accessible from various client devices through either a
demand. There is a sense of location independence in thin client interface, such as a web browser (e.g., web-
that the customer generally has no control or knowledge based email), or a program interface. The consumer does
over the exact location of the provided resources but not manage or control the underlying cloud infrastructure
may be able to specify location at a higher level of including network, servers, operating systems, storage, or
abstraction (e.g., country, state, or datacenter). Examples even individual application capabilities, with the possible
of resources include storage, processing, memory, and exception of limited userspecific application configuration
network bandwidth. settings.
• Rapid elasticity. Capabilities can be elastically provi- • Platform as a Service (PaaS). The capability provided
sioned and released, in some cases automatically, to to the consumer is to deploy onto the cloud infrastruc-
ernment organization, or some combination of them. It
exists on the premises of the cloud provider.
• Hybrid cloud. The cloud infrastructure is a composition
of two or more distinct cloud infrastructures (private,
community, or public) that remain unique entities, but are
bound together by standardized or proprietary technology
that enables data and application portability (e.g., cloud
bursting for load balancing between clouds).

E. Challenges in Cloud Computing


There are several challenges for picking the best cloud
configurations for big data analytics jobs.
Complex performance model: The running time is affected
by the amount of resources in the cloud configuration in a
Fig. 4. Different Cloud Computing Models.
non-linear way. For instance a regression job on SparkML
(with fixed number of CPU cores) sees a diminishing return
ture consumer-created or acquired applications created of running time at 256GB RAM. This is because the job
using programming languages, libraries, services, and does not benefit from more RAM beyond what it needs.
tools supported by the provider.3 The consumer does Therefore, the running time only sees marginal improvements.
In addition, performance under a cloud configuration is not
not manage or control the underlying cloud infrastructure
including network, servers, operating systems, or stor- deterministic. In cloud environments, which is shared among
age, but has control over the deployed applications and many tenants, stragglers can happen. [6] measured the running
possibly configuration settings for the application-hosting time of TeraSort-30GB on 22 different cloud configurations on
environment. AWS EC2 five times. In [6] they then computed the coefficient
• Infrastructure as a Service (IaaS). The capability provided of variation (CV) of the five runs. Their results show that the
to the consumer is to provision processing, storage, net- median of the CV is about 10% and the 90 percentile is above
works, and other fundamental computing resources where 20%. This variation is not new [9].
the consumer is able to deploy and run arbitrary software, Cost model: The cloud charges users based on the amount
which can include operating systems and applications. of time the VMs are up. Using configurations with a lot of
The consumer does not manage or control the underly- resources could minimize the running time, but it may cost a
ing cloud infrastructure but has control over operating lot more money. Thus, to minimize cost, we have to find the
systems, storage, and deployed applications; and possibly right balance between resource prices and the running time.
limited control of select networking components (e.g.,
host firewalls).
Fig. 4 shows the different cloud service models.

D. Deployment Models:
• Private cloud. The cloud infrastructure is provisioned
for exclusive use by a single organization comprising
multiple consumers (e.g., business units). It may be
owned, managed, and operated by the organization, a
third party, or some combination of them, and it may
exist on or off premises.
• Community cloud. The cloud infrastructure is provisioned
for exclusive use by a specific community of consumers
from organizations that have shared concerns (e.g., mis-
sion, security requirements, policy, and compliance con-
siderations). It may be owned, managed, and operated Fig. 5. Regression and TeraSort cost with varying cluster size (M4)
by one or more of the organizations in the community,
a third party, or some combination of them, and it may Fig. 5 shows the cost of running Regression on SparkML on
exist on or off premises. different cluster sizes where each VM comes with 15 GBs of
• Public cloud. The cloud infrastructure is provisioned RAM and 4 cores in AWS EC2. We can see that the cost does
for open use by the general public. It may be owned, not monotonically increase or decrease when we add more
managed, and operated by a business, academic, or gov- resources into the cluster. This is because adding resources
may accelerate the computation but also raises the price per V. OVERVIEW OF STATE-OF-THE-ART C LOUD C OMPUTING
unit of running time. L ITERATURE
The heterogeneity of applications: Diverse set of big- In this section a brief discussion is presented on recently
data applications and their resource requirement is another published work on cloud computing.
challenge for the cloud computing platform to maximize the
performace by providing generalized resources. A. Clearing the Clouds
In this work [8], they observe that scale-out workloads
share many inherent characteristics that place them into a
IV. L ITERATURE SURVEY ON C LOUD C OMPUTING distinct workload class from desktop, parallel, and traditional
RESEARCH server workloads. They perform a detailed micro-architectural
study of a range of scale-out workloads, finding a large
Cloud Computing is a hot research are since couple of years. mismatch between the demands of the scale-out workloads and
Good number of papers have been published in this domain. todays predominant processor microarchitecture. They observe
Some state-of-the-art work in cloud computing are described significant over-provisioning of the memory hierarchy and
below. core micro-architectural resources for the scale-out workloads.
Performance Prediction: There have been a number of Moreover, continuing the current processor trends will result
recent efforts at modeling job performance in datacenters to in further widening the mismatch between the scale-out work-
support SLOs or deadlines. Techniques proposed in Jockey [9] loads and server processors. Conversely, they find that the
and ARIA [15] use historical traces and dynamically adjust characteristics of scale-out workloads can be leveraged to gain
resource allocations in order to meet deadlines. In Ernest we area and energy efficiency in future servers.
build a model with no historic information and try to minimize
the amount of training data required. Bazaar [12] proposed
techniques to model the network utilization of MapReduce
jobs by using small subsets of data. In Ernest we capture
computation and communication characteristics and use high
level features that are framework independent. Projects like
MRTuner [16] model MapReduce jobs at very fine granularity
and set optimal values for options like memory buffer sizes
etc. In Ernest we use few simple features and focus on
collecting training data will help us maximize their utility.
Finally scheduling frameworks like Quasar [7] try to estimate
the scale out and scale up factor for jobs using the progress
rate of the first few tasks. Ernest on the other hand runs the
entire job on small datasets and is able to capture how different Fig. 6. Architecture of PARIS
stages of a job interact in a long pipeline.
Query Optimization: Database query progress predictors The key contributions of this paper are:
[14] solve a performance prediction problem similar to Ernest. • an experimental characterization of performance trade-
Database systems typically use summary statistics of the data off of various VM types for realistic workloads across
like cardinality counts to guide this process. Further, these Amazon AWS and Microsoft Azure.
techniques are typically applied to a known set of relational • a novel hybrid offline and online data collection and
operators. Similar ideas have also been applied to linear modeling framework which eliminates the O(n2) data col-
algebra operators [11]. In Ernest we use advanced analytics lection overhead while providing accurate performance
jobs where we know little about the data or the computation predictions across cloud providers.
being run. Recent work has also looked at providing SLAs • a detailed experimental evaluation demonstrating that
for OLTP and OLAP workloads in the cloud and some of the PARIS accurately estimates multiple performance metrics
observations in [6] about variation across instance types in and their variabilities (P90 values), for several real-
EC2 are also known to affect database queries. world workloads across two major public cloud providers,
Tuning and Benchmarking: Ideas related to experiment thereby reducing user cost by up to 45 percent relative
design, where we explore a space of possible inputs and choose to strong baseline techniques.
the best inputs, have been used in other applications like server
benchmarking [17]. Related techniques like Latin Hypercube B. Scout: An Experienced Guide to Find the Best Cloud
Sampling have been used to efficiently explore file system Configuration
design space [8]. Autotuning BLAS libraries like ATLAS Selecting the best cloud configuration from the service
[19] also solve a similar problem of exploring a state space provider is a challenge. Several methods have been proposed
efficiently to find the best cloud configuration [15], [6], [17], [18],
[20], [10]. These methods can be broadly classified into (1)
predictionwhich uses elaborate offline evaluation to generate
a machine learning model that predicts the performance of
workloads and (2) search-based techniqueswhich successively
evaluate configurations looking for one that is near optimal
[8, 16]. Prediction, as proposed in PARIS [30], is not reliable
because of high variance in prediction results. A search-based
method does not require an accurate model but can have
a high evaluation cost (measured in terms of configurations
evaluated). They choose the search-based method because it
Fig. 7. CherryPick workflow
better tolerates prediction error and delivers effective solutions.
Any search-based method has two aspects.
• Exploration: Gather more information about the search
space by executing a new cloud configuration.
• Exploitation: Choose the most promising configuration
based on information collected.
Additional exploration incurs higher search cost, and insuffi-
cient exploration may lead to sub-optimal solutions. This is the
exploration-exploitation dilemma appeared in many machine
learning problems. For example, CherryPick requires a good
exploration strategy to characterize the search space [6]. In this
paper, They argue that it is possible to trade exploration with
exploitation without settling for a suboptimal configuration.
The central insight of this paper is that the cost of the search
for the right cloud configuration can be significantly reduced Fig. 8. Architecture of CherryPicks implementation.
if They could learn from the historical dataexperiences of
finding the right cloud configuration for other workloads. In The implementation details of CherryPick as shown in
this paper, They present a SCOUT, which uses historical data Fig. 8. It has four modules.
to find the best cloud configuration for a workload. In doing
so, They (1) enable practitioners to find a near-optimal cloud VI. POPULAR C LOUD C OMPUTING PLATFORM
configuration (2) with a lower search cost than state of the In this section,a survey of some of the dominant cloud
art. Additionally, They answer the following questions about computing products will be discussed.
improving the performance of the search-based method and
reducing the search-cost. Their key contributions are:
• They propose a novel method, SCOUT, that finds (near)
optimal solutions and solves the shortcomings of the prior
work.
• They present a novel way to represent the search space,
which can be used to transfer knowledge from historical
measurements
• They evaluate SCOUT and other state-of-the-art methods
using more than 100 workloads on three different data
processing systems. and
• They make their performance data available for encour-
aging research of system performance.
C. CherryPick: Adaptively Unearthing the Best Cloud Con-
figurations for Big Data Analytics
CherryPick is a system that leverages Bayesian Optimiza-
tion to build performance models for various applications, and Fig. 9. Cloud Platform Market Share
the models are just accurate enough to distinguish the best
or close-to-the-best configuration from the rest with only a
few test runs. Our experiments on five analytic applications in A. Amazon Web Services (AWS)
AWS EC2 show that CherryPick has a 45-90% chance to find Amazon Web Services (AWS) [1] is a set of cloud services,
optimal configurations, otherwise near-optimal, saving up to providing cloud-based computation, storage and other func-
75% search cost compared to existing solutions. tionality that enable organizations and individuals to deploy
applications and services on an on-demand basis and at com-
modity prices. Amazon Web Services offerings are accessible
over HTTP, using REST and SOAP protocols. Amazon Elastic
Compute Cloud (Amazon EC2) enables cloud users to launch
and manage server instances in data centers using APIs or
available tools and utilities.

Fig. 12. Amazon Simple Sotrage Service(S3) Architecture

contains from 1 byte to 5 gigabytes of data. Object names


are essentially URI pathnames. Buckets must be explicitly
created before they can be used. A bucket can be stored in one
Fig. 10. Amazon Web Services of several Regions. Users can choose a Region to optimize
latency, minimize costs, or address regulatory requirements.
EC2 instances are virtual machines running on top of the Amazon Virtual Private Cloud (VPC) is a secure and seamless
Xen virtualization engine [4]. After creating and starting an bridge between a companys existing IT infrastructure and
instance, users can upload software and make changes to it. the AWS cloud. Amazon VPC enables enterprises to connect
When changes are finished, they can be bundled as a new their existing infrastructure to a set of isolated AWS compute
machine image. An identical copy can then be launched at resources via a Virtual Private Network (VPN) connection,
any time. Users have nearly full control of the entire software and to extend their existing management capabilities such as
stack on the EC2 instances that look like hardware to them. security services, firewalls, and intrusion detection systems
On the other hand, this feature makes it inherently difficult for to include their AWS resources. For cloud users, Amazon
Amazon to offer automatic scaling of resources. CloudWatch is a useful management tool which collects raw
data from partnered AWS services such as Amazon EC2 and
then processes the information into readable, near real-time
metrics. The metrics about EC2 include, for example, CPU
utilization, network in/out bytes, disk read/write operations,
etc.

B. Microsoft Windows Azure platform

Fig. 11. Amazon Elastic Cloud Computing(EC2) Instances

EC2 provides the ability to place instances in multiple loca-


tions. EC2 locations are composed of Regions and Availability
Zones. Regions consist of one or more Availability Zones,
are geographically dispersed. Availability Zones are distinct
locations that are engineered to be insulated from failures in
other Availability Zones and provide inexpensive, low latency
network connectivity to other Availability Zones in the same
Region. Fig. 13. Microsoft Azure
EC2 machine images are stored in and retrieved from
Amazon Simple Storage Service (Amazon S3). S3 stores Microsofts Windows Azure platform [3] consists of three
data as objects that are grouped in buckets. Each object components and each of them provides a specific set of
services to cloud users. Windows Azure provides a Windows- VII. C ONCLUSION
based environment for running applications and storing data
Several papers studied the performance of big data
on servers in data centers; SQL Azure provides data services
applications on scale-out platform and clouds [21, 22, 23, 24,
in the cloud based on SQL Server; and .NET Services offer
distributed infrastructure services to cloud-based and local 25, 26]. All of these works use performance counters to
applications. Windows Azure platform can be used both by monitor the performance and behavior of applications. In [27,
28, 29, 30, 31], authors perform a set of comprehensive
applications running in the cloud and by applications running
experiments to analysis the impact of memory subsystem on
on local systems. Windows Azure also supports applications
the performance of data intensive applications running on
built on the .NET Framework and other ordinary languages
cloud environment. In [32, 33], author uses compress sensing
supported in Windows systems, like C, Visual Basic, C++, and
to improve data movement after finding the performance
others. Windows Azure supports general-purpose programs,
rather than a single class of computing. Developers can create bottleneck using performance counters. Performance counters
web applications using technologies such as ASP.NET and also can be used to trace the applications behavior in order to
find the malicious behavior [34, 35, 36, 37, 38]. Moreover,
Windows Communication Foundation (WCF), applications
that run as independent background processes, or applications there are new approaches to improve the performance of
that combine the two. Windows Azure allows storing data in modern computing systems such as hardware acceleration [39,
blobs, tables, and queues, all accessed in a RESTful style via 40, 41, 42], and cloud computing.
HTTP or HTTPS. SQL Azure components are SQL Azure Cloud computing has recently emerged as a compelling
Database and Huron Data Sync. SQL Azure Database is built paradigm for managing and delivering services over the In-
on Microsoft SQL Server, providing a database management ternet. The rise of cloud computing is rapidly changing the
system (DBMS) in the cloud. The data can be accessed using landscape of information technology, and ultimately turning
ADO.NET and other Windows data access interfaces. Users the long-held promise of utility computing into a reality.
can also use on-premises software to work with this cloud- However, despite the significant benefits offered by cloud
based information. Huron Data Sync synchronizes relational computing, the current technologies are not matured enough to
data across various on-premises DBMSs. realize its full potential. Many key challenges in this domain,
including automatic resource provisioning, power management
C. Google Cloud and security management, are only starting to receive attention
Google Cloud [2] is a platform for traditional web applica- from the research community. Therefore, I believe there is still
tions in Google-managed data centers. Currently, the supported tremendous opportunity for researchers to make groundbreak-
programming languages are Python and Java. Web frameworks ing contributions in this field, and bring significant impact to
that run on the Google App Engine include Django, CherryPy, their development in the industry.
Pylons, and web2py, as well as a custom Google-written web In this paper, I have surveyed the state-of-the-art of cloud
application framework similar to JSP or ASP.NET. Google computing, covering its essential concepts, architectural de-
handles deploying code to a cluster, monitoring, failover, and signs, prominent characteristics, key technologies as well as
launching application instances as necessary. Current APIs research directions. As the development of cloud computing
support features such as storing and retrieving data from a technology is still at an early stage, I hope this work will
BigTable non-relational database, making HTTP requests and provide a better understanding of the design challenges of
caching. Developers have readonly access to the filesystem on cloud computing, and pave the way for further research in
App Engine. this area.

REFERENCES
[1]Amazon web services, aws.amazon.com.
[2]Google cloud, cloud.google.com.
[3]Windows azure, www.microsoft.com/azure.
[4]Xensource inc, xen, www.xensource.com.
[5] Agarwal, Sameer, et al. "Reoptimizing data parallel computing." Presented
as part of the 9th {USENIX} Symposium on Networked Systems Design
and Implementation ({NSDI} 12). 2012.
[6] Alipourfard, Omid, et al. "Cherrypick: Adaptively unearthing the best cloud
configurations for big data analytics." 14th {USENIX} Symposium on
Networked Systems Design and Implementation ({NSDI} 17). 2017.
[7] Christina Delimitrou and Christos Kozyrakis. Quasar: resource-efficient
and qos-aware cluster management. In ACM SIGARCH Computer
Architecture News, volume 42, pages 127–144. ACM, 2014.
[8] Michael Ferdman, Almutaz Adileh, Onur Kocberber, Stavros Volos,
Mohammad Alisafaee, Djordje Jevdjic, Cansu Kaynak, Adrian Daniel
Popescu, Anastasia Ailamaki, and Babak Falsafi. Clearing the clouds: a
Fig. 14. Google Cloud Computing study of emerging scale-out workloads on modern hardware. In ACM
SIGPLAN Notices, volume 47, pages 37–48. ACM, 2012.
[9] Andrew D Ferguson, Peter Bodik, Srikanth Kandula, Eric Boutin, and
Rodrigo Fonseca. Jockey: guaranteed job latency in data parallel clusters.
In Proceedings of the 7th ACM european conference on Computer [30] Makrani, Hosein Mohammadi, et al. "A comprehensive memory analysis of
Systems, pages 99–112. ACM, 2012. data intensive workloads on server class architecture." Proceedings of the
[10] Chin-Jung Hsu, Vivek Nair, Vincent W Freeh, and Tim Menzies. Low- International Symposium on Memory Systems. ACM, 2018.
level augmented bayesian optimization for finding the best cloud vm. [31] Makrani, Hosein Mohammadi, et al. "Main-memory requirements of big
arXiv preprint arXiv:1712.10081, 2017. data applications on commodity server platform." 2018 18th IEEE/ACM
[11] Botong Huang, Matthias Boehm, Yuanyuan Tian, Berthold Reinwald, International Symposium on Cluster, Cloud and Grid Computing (CCGRID).
Shirish Tatikonda, and Frederick R Reiss. Resource elasticity for large- IEEE, 2018.
scale machine learning. In Proceedings of the 2015 ACM SIGMOD [32] Namazi, Mahmoud, et al. "Mitigating the Performance and Quality of
International Conference on Management of Data, pages 137–152. Parallelized Compressive Sensing Reconstruction Using Image Stitching."
ACM, 2015. Proceedings of the 2019 on Great Lakes Symposium on VLSI. ACM, 2019.
[12] Virajith Jalaparti, Hitesh Ballani, Paolo Costa, Thomas Karagiannis, and [33] Makrani, Hosein Mohammadi, et al. "Compressive Sensing on Storage Data:
Ant Rowstron. Bridging the tenant-provider gap in cloud services. In An Effective Solution to Alleviate I/0 Bottleneck in Data-Intensive
Proceedings of the Third ACM Symposium on Cloud Computing, page Workloads." 2018 IEEE 29th International Conference on Application-
10. ACM, 2012. specific Systems, Architectures and Processors (ASAP). IEEE, 2018.
[13] Mell, Peter, and Tim Grance. "The NIST definition of cloud computing." [34] Sayadi, Hossein, et al. "Ensemble learning for effective run-time hardware-
(2011) based malware detection: A comprehensive analysis and classification." 2018
[14] Kristi Morton, Magdalena Balazinska, and Dan Grossman. Paratimer: a 55th ACM/ESDA/IEEE Design Automation Conference (DAC). IEEE, 2018.
progress indicator for mapreduce dags. In Proceedings of the 2010 ACM [35] Sayadi, Hossein, et al. "Customized machine learning-based hardware-
SIGMOD International Conference on Management of data, pages 507–518. assisted malware detection in embedded devices." 2018 17th IEEE
ACM, 2010. International Conference On Trust, Security And Privacy In Computing And
[15] Dejan Novakovi c´, Nedeljko Vasic´, Stanko Novakovic´, Dejan Communications/12th IEEE International Conference On Big Data Science
Kostic´, and Ricardo Bianchini. Deepdive: Transparently identifying and And Engineering (TrustCom/BigDataSE). IEEE, 2018.
man- aging performance interference in virtualized environments. In Pre- [36] Sayadi, Hossein, et al. "Comprehensive assessment of run-time hardware-
sented as part of the 2013 USENIX Annual Technical Conference ( supported malware detection using general and ensemble learning."
USENIX ATC 13), pages 219–230, 2013. Proceedings of the 15th ACM International Conference on Computing
[16] Juwei Shi, Jia Zou, Jiaheng Lu, Zhao Cao, Shiqiang Li, and Chen Wang. Frontiers. ACM, 2018.
Mrtuner: a toolkit to enable holistic optimization for mapreduce jobs. [37] Dinakarrao, Sai Manoj Pudukotai, et al. "Lightweight Node-level Malware
Proceedings of the VLDB Endowment, 7(13):1319–1330, 2014. Detection and Network-level Malware Confinement in IoT Networks." 2019
[17] Lingjia Tang, Jason Mars, Neil Vachharajani, Robert Hundt, and Mary Design, Automation & Test in Europe Conference & Exhibition (DATE).
Lou Soffa. The impact of memory subsystem resource sharing on datacenter IEEE, 2019.
applications. In ACM SIGARCH Computer Architecture News, volume 39, [38] Sayadi, Hossein, et al. "2SMaRT: A Two-Stage Machine Learning-Based
pages 283–294. ACM, 2011. Approach for Run-Time Specialized Hardware-Assisted Malware Detection."
[18] Shivaram Venkataraman, Zongheng Yang, Michael Franklin, Benjamin 2019 Design, Automation & Test in Europe Conference & Exhibition
Recht, and Ion Stoica. Ernest: efficient performance prediction for large- (DATE). IEEE, 2019.
scale advanced analytics. In 13th USENIX Symposium on Networked [39] Neshatpour, Katayoun, et al. "Design Space Exploration for Hardware
Systems Design and Implementation ( NSDI 16), pages 363–378, 2016. Acceleration of Machine Learning Applications in MapReduce." 2018 IEEE
[19] R Clint Whaley, Antoine Petitet, and Jack J Dongarra. Automated empirical 26th Annual International Symposium on Field-Programmable Custom
optimizations of software and the atlas project. Parallel computing, 27(1- Computing Machines (FCCM). IEEE, 2018.
2):3–35, 2001. [40] Makrani, Hosein Mohammadi, et al. "XPPE: cross-platform performance
[20] Neeraja J Yadwadkar, Bharath Hariharan, Joseph E Gonzalez, Burton estimation of hardware accelerators using machine learning." Proceedings of
Smith, and Randy H Katz. Selecting the best vm across multiple public the 24th Asia and South Pacific Design Automation Conference. ACM, 2019.
clouds: a data-driven performance modeling approach. In Proceedings of the [41] Neshatpour, Katayoun, et al. "Architectural considerations for FPGA
2017 Symposium on Cloud Computing, pages 452–465. ACM, 2017. acceleration of Machine Learning Applications in MapReduce." Proceedings
[21] Makrani, Hosein Mohammadi, et al. "Evaluation of software-based fault- of the 18th International Conference on Embedded Computer Systems:
tolerant techniques on embedded OS’s components." Proceedings of the Architectures, Modeling, and Simulation. ACM, 2018.
International Conference on Dependability (DEPEND’14). 2014. [42] Makrani, Hosein Mohammadi, et al. "Pyramid: Machine Learning
[22] Makrani, Hosein Mohammadi, et al. "Energy-aware and Machine Learning- Framework to Estimate the Optimal Timing and Resource Usage of a High-
based Resource Provisioning of In-Memory Analytics on Cloud." SoCC. Level Synthesis Design." arXiv preprint arXiv:1907.12952 (2019).
2018.
[23] Sayadi, Hossein, et al. "Machine learning-based approaches for energy-
efficiency prediction and scheduling in composite cores architectures." 2017
IEEE International Conference on Computer Design (ICCD). IEEE, 2017.
[24] Malik, Maria, Dean M. Tullsen, and Houman Homayoun. "Co-Locating
and concurrent fine-tuning MapReduce applications on microservers for
energy efficiency." 2017 IEEE International Symposium on Workload
Characterization (IISWC). IEEE, 2017.
[25] Malik, Maria, et al. "ECoST: Energy-Efficient Co-Locating and Self-
Tuning MapReduce Applications." Proceedings of the 48th International
Conference on Parallel Processing. ACM, 2019.
[26] Sayadi, Hossein, et al. "Power conversion efficiency-aware mapping of
multithreaded applications on heterogeneous architectures: A comprehensive
parameter tuning." 2018 23rd Asia and South Pacific Design Automation
Conference (ASP-DAC). IEEE, 2018.
[27] Makrani, Hosein Mohammadi, et al. "Understanding the role of memory
subsystem on performance and energy-efficiency of Hadoop applications."
2017 Eighth International Green and Sustainable Computing Conference
(IGSC). IEEE, 2017.
[28] Makrani, Hosein Mohammadi, and Houman Homayoun. "MeNa: A
memory navigator for modern hardware in a scale-out environment." 2017
IEEE International Symposium on Workload Characterization (IISWC).
IEEE, 2017.
[29] Makrani, Hosein Mohammadi, and Houman Homayoun. "Memory
requirements of hadoop, spark, and MPI based big data applications on
commodity server class architectures." 2017 IEEE International Symposium
on Workload Characterization (IISWC). IEEE, 2017.

You might also like