CS776/876 Architectural Support for Cloud Computing
Instructor: Professor Stephan Olariu
Please note that in Fall 2017 CS776-876 will be offered online
The notion of Cloud Computing (CC) started from the realization of the fact that instead of investing in infrastructure, businesses may find it useful to rent the infrastructure and sometimes the software they need to run their applications. This powerful idea has been suggested, at least in part, by ubiquitous and relatively low-cost high-speed Internet, virtualization and advances in parallel and distributed computing and distributed databases. One of the key benefits of cloud computing is that it provides scalable access to computing resources and information technology (IT) services. CC is a paradigm shift adopted by a large number of infrastructure providers, both in the US and around the world, whose large installed infrastructure often goes under-utilized. Hand in hand with cloud computing go ``cloud IT services'' where not only computational resources and storage are rented out, but also specialized services are provided on demand. In this context, a user may purchase the amount of services they need at the moment. As their IT needs grow and as their services and customer base expand, the users will be in the market for more and more cloud services and more diversified computational and storage resources. With CC, developers with innovative ideas for new Internet applications and services are no longer required to have large capital outlays in hardware to deploy their service or more importantly the human expense to operate it. They also need not be concerned with over-provisioning for services whose popularity does not meet their predictions and market analysis, thus wasting costly resources, or under-provisioning for one that becomes wildly popular, and missing potential customers and revenue. In order to achieve almost unbounded scalability, availability and security, cloud computing requires substantial architectural support ranging from virtualization, to server consolidation, to file system support, to memory hierarchy design.
Material: This regular graduate course looks at the architectural support needed to implement cloud services. We will investigate the approaches taken by Google, Amazon, Facebook and Yahoo! to ensure "four-nine" (that is 99.99%) availability of their datacenters. We will also look at various techniques for resource virtualization that are crucial for an efficient support of cloud services. Finally, we will look at architectural support for cloud computing as reflected by dedicated file systems: the Google File System and the Hadoop Distributed File System.
Intended audience: In an ideal world, the students taking this class should have been exposed to computer architecture, virtualization and should have a good understanding of cloud computing. In a less-than-perfect world, the students often lack background in one or more of the above areas. With this in mind, the first part of the course will be devoted to a review of relevant topics in architecture, cloud computing and virtualization.
Text: The main textbook for this class is
L. A. Barroso, J. Clidaras and U. Holzle, The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale
Machines, Morgan & Claypool Publishers, 2nd edition, 2013
The material in the main textbook will be supplemented by material from Chapters 1, 2, 6 and Appendix D in J. L. Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, 5-th Edition, Elsevier/Morgan Kaufmann Publishers, 2012 as well as by papers from the literature that will be prescribed as reading assignments.
Prerequisite: Graduate standing in Computer Science, Computer Engineering, Management or Electrical Engineering
Office Hours: Online using Adobe Connect M 4:00pm - 6:00pm
Old Dominion University is committed to ensuring equal access to all qualified students with disabilities in accordance with the Americans with Disabilities Act. The Office of Educational Accessibility (OEA) is the campus office that works with students who have disabilities to provide and/or arrange reasonable accommodations.
The Office of Educational Accessibility is located at 1021 Student Success Center and their phone number is (757)683-4655. Additional information is available at the OEA website: http://www.odu.edu/educationalaccessibility/
Back to Dr. Olariu's Home Page