Datacenters and Cloud
Computing
Jia Rao
Assistant Professor in CS
What is Cloud Computing?
“A model for enabling ubiquitous, convenient, on-demand network access to a shared pool of
configurable computing resources.”
Trends
• Big players: Amazon, Google, Microsoft …
• 150+ billion dollar market by 2013 [Gartner, 2009]
• In 2012, 80% of new enterprise apps will be deployed on cloud platforms
[IDC, 2011]
Before...
• Individuals bought• Small business was afraid of
Now with the Cloud
• Individuals buy and
• Small business buy and
• Large business is happy to see
Access “services” delivered by data centers
Cloud Services
• Software as a Service (SaaS)
- The cloud provides a piece of software
• Platform as a Service (PaaS)
- The cloud provides a programming platform
• Infrastructure as a Service (IaaS)
- The cloud provides raw hardware
Simplicity
Why Clouds?
• Pay-as-you-go no upfront cost
• On-demand self-service convenient
Who Uses the Cloud?
• Individuals
‣ Use software online, augmented experience
• Small startups
‣ Can start small and expand later
• Big companies
‣ Outsource some of the IT management
• The government
Technologies behind the Cloud
• Data center technologies‣ provide a high-density pool of computing power at low cost
• Server virtualization
‣ seamlessly splits hardware into pieces and provides
isolation, fault tolerance, and usage accounting
• High-speed network
‣ delivers services to users at low latency and high
Modern Data Centers
• Giant computing facility with more than 10,000s of computers
• Petabytes of storage
• 100,000 - 500,000 square feet footage
Why CC now, not then?
• Key enabler: server virtualization
‣ Server consolidation makes it possible to elastic
resource management, in response to
unpredictable traffic and resource demand
For many services, the peak load exceeds the average by factors of 2 to 10
Why CC now, not then?
• Emergence of new technologies in support of
“low-touch, low-margin, low-commitment” self-service
• Applications
‣ Back and storage, content delivery, e-commerce,
high-performance computing, search engine, video streaming, BigData analytics
• More economic
Server Virtualization
• The abstraction of hardware resources upon which
virtual servers run
• Benefits
resource multiplexing isolation, fault tolerance resource management convenience
Virtualization
CPU Memory Disk
Windows Linux
Other issues in the Cloud
• Data Lock-in
• Data transfer bottlenecks
The performance issue
• Degraded performance
‣ compared with running on dedicated systems
• Unpredictable performance
‣ performance varies significantly over time
The causes
• Lack of agility
‣ cloud resource: elasticity agility
! !
• Lack of guaranteed capacity
‣ multi-tenant interference
The Causes (cont’)
• Little understanding of APP + Cloud
‣ HPC@Cloud, BigData@Cloud, E-commerce@Cloud
• Little understanding of virtualization techniques
‣ Full, para, hybrid and hardware assisted virtualization
• Little understanding of emerging hardware
Research in UCCS
• Making apps run faster in the cloud
‣ Adapting apps to a cloud environment
‣ Cloud = multi-tenant interference + hardware heterogeneity ‣ Parallel programs, MapReduce, networking apps
‣ adjusting parallelism, task scheduling, data placement …
‣ Providing better app support in cloud infrastructure ‣ better CPU and disk scheduling
Research Threads
• Adapting MapReduce to the cloud (HPDC’13)‣ interference-aware task scheduling
‣ exploiting an extra layer of locality
• Providing better VM scheduling to HPC apps (PPoPP’14)
‣ addressing LHP and vCPU stacking problem
‣ considering fairness and efficiency
• More accurate resource accounting (HPCA’13)
‣ a holistic approach for quantifying cache contention, MEM latency in
NUMA multicore systems
Methodology:
Course Details
Course Structure
• This is a research project-oriented course
‣ You must read research papers every week
‣ You must actively participate paper discussions ‣ You must write paper critiques every week
‣ You must present one paper to the class
‣ You must perform a research project related to
Course Structure
• Lectures on datacenters and cloud computing (until spring break)
‣ Datacenter fundamentals, Virtualization, MapReduce, brief
discussions about DC hardware, e.g., multicore processors, SSD, GPU and cloud management, e.g., Openstack, SDN
• Lectures on how to read and present a research paper
• Paper presentations and discussions (after spring break)
‣ Resource management, energy, reliability, and security
Course Requirements
• Research paper (2-member teams)
‣ no less than 2 pages project proposal ‣ no less than 5 pages final report
‣ in ACM or IEEE conference format
• Paper critiques (individuals)
‣ each student needs to submit 12 critiques ‣ Due at the corresponding presentations
Why This Course?
• No textbook needed
• No midterm or final exams
Distribution of Points
• In class discussion and attendance: 5%
• Paper critiques: 15%
• Paper presentation: 20%
• Programming assignment: 10%
• Research project: 50%