Datacenters and Cloud Computing Jia Rao Assistant Professor in CS http://cs.uccs.edu/~jrao/cs5540/spring2014/index.html
What is Cloud Computing? A model for enabling ubiquitous, convenient, ondemand network access to a shared pool of configurable computing resources. ---NIST!2
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] Successful stories:!3 Source: Amazon
Before... Individuals bought Small business was afraid of Large business worried about!4
Now with the Cloud Individuals buy and Access services delivered by data centers Small business anywhere buy via network and Large business is happy to see!5
Cloud Services Software as a Service (SaaS) Simplicity - The cloud provides a piece of software Platform as a Service (PaaS) Flexibility - The cloud provides a programming platform Infrastructure as a Service (IaaS) - The cloud provides raw hardware!6
Why Clouds? Pay-as-you-go no upfront cost On-demand self-service convenient Rapid elasticity virtually infinite resources Economy of scale cheap!!7
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 low cost!8
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 bandwidth!9
Modern Data Centers Giant computing facility with more than 10,000s of computers Petabytes of storage 100,000-500,000 square feet footage!10 Google s north carolina data center
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 Consolidation of different types of services helps balance the workload via statistical multiplexing!11
Why CC now, not then? Emergence of new technologies in support of lowtouch, 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 converting capital expenses to operating expenses!12
Server Virtualization The abstraction of hardware resources upon which virtual servers run Benefits resource multiplexing Windows Linux isolation, fault tolerance VM Virtualization VM resource management CPU Memory Disk convenience!13
Issues in the Cloud Unsatisfactory performance Security v.s. V V Reliability!14
Other issues in the Cloud Data Lock-in Data transfer bottlenecks Bugs in large-scale distributed systems Software licensing!15
The performance issue Degraded performance compared with running on dedicated systems Unpredictable performance performance varies significantly over time Hard to explain and characterize!16
The causes Lack of agility cloud resource: elasticity agility!! Lack of guaranteed capacity multi-tenant interference hardware non-uniformity and heterogeneity CPU, memory, disk!17
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 Multicore, SSD, 10Gbps NIC, SR-IOV!18
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 more accurate resource accounting techniques that minimize virtualization overhead batching, bypassing!19
Research Threads Adapting MapReduce to the cloud (HPDC 13) interference-aware task scheduling exploiting an extra layer of locality Methodology: Providing better VM scheduling to HPC apps (PPoPP 14) Application + Cloud OS + Hardware 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!20
Course Details Instructor: Jia Rao (jrao@uccs.edu) Class time: M/W 6:05pm - 7:20pm Location: ENGR 101 Office hours: T/Th 4:00pm - 5:00pm or by appointment Website: http://cs.uccs.edu/~jrao/cs5540/ spring2014/index.html!21
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 cloud!22
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 Project proposal presentation (right after spring break) Project presentations (last week)!23
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 A warm-up project in Xen or Amazon EC2!24
Why This Course? No textbook needed No midterm or final exams Will work on real problems (cutting-edge?) May form ideas for Master project/thesis!25
Grading Scale Percentage Grade 90-100 A 86-89 A- 83-85 B+ 80-82 B 75-79 C+ 70-74 C 65-69 D+ 60-64 D Below 60 E/F!26
Distribution of Points In class discussion and attendance: 5% Paper critiques: 15% Paper presentation: 20% Programming assignment: 10% Research project: 50% Project proposal: 15% Final report: 35%!27
Q & A Thank you!!28