Ioan Raicu

Illinois Institute of Technology

Argonne National Laboratory

CS553: Cloud Computing

Semester: Fall 2014

Lecture Time: Monday/Wednesday 11:25AM-12:40PM

Lecture Location: Stuart Building 104

Office Hours Time: Monday 12:45PM-1:45PM, Wednesday 10:20AM-11:20AM

Office Hours Location: Stuart Building 237D



  • Dr. Ioan Raicu (

    • Office Hours Time: Monday 12:45PM-1:45PM (SB237D), Wednesday 10:20AM-11:20AM (SB237D) 


Teaching Assistants (  

  • Ke Wang (   

    • Office Hours Time: Monday/Thursday 3PM-4PM (SB002)

  • Iman Sadooghi (   

    • Office Hours Time: Tuesday/Friday 12:45PM-1:45PM (SB003b)

  • Dongfang Zhao (  

    • Office Hours Time: Tuesday/Thursday 2PM-3PM (SB002)

  • Tonglin Li (   

    • Office Hours Time: Wednesday/Friday 2PM-3PM (SB002)

Office Hours Summary:

  • Monday: 12:45PM-1:45PM (Ioan SB237D), 3PM-4PM (Ke SB002)
  • Tuesday: 12:45PM-1:45PM (Iman SB003b), 2PM-3PM (Dongfang SB002)
  • Wednesday: 10:20AM-11:20AM (Ioan SB237D), 2PM-3PM (Tony SB002)
  • Thursday: 2PM-3PM (Dongfang SB002), 3PM-4PM (Ke SB002)
  • Friday: 12:45PM-1:45PM (Iman SB003b), 2PM-3PM (Tony SB002)



Course Overview:

Cloud Computing is “A large-scale distributed computing paradigm that is driven by economies of scale, in which a pool of abstracted, virtualized, dynamically-scalable, managed computing power, storage, platforms, and services are delivered on demand to external customers over the Internet.” It has become a driving force for information technology over the past several years, and it is hinting at a future in which we won’t compute on local computers, but on centralized facilities operated by third-party compute and storage utilities. Governments, research institutes, and industry leaders are rushing to adopt Cloud Computing to solve their ever-increasing computing and storage problems arising in the Internet Age. There are three main factors contributing to the surge and interests in Cloud Computing: 1) rapid decrease in hardware cost and increase in computing power and storage capacity, and the advent of multi-core architecture and modern supercomputers consisting of hundreds of thousands of cores; 2) the exponentially growing data size in scientific instrumentation/simulation and Internet publishing and archiving; and 3) the wide-spread adoption of Services Computing and Web 2.0 applications. This course is a tour through various topics and technologies related to Cloud Computing. We will explore solutions and learn design principles for building large network-based systems to support both compute and data intensive computing across geographically distributed infrastructure. Topics include resource management, programming models, application models, system characterizations, and implementations. Our discussions will often be grounded in the context of deployed Cloud Computing systems, such as Amazon EC2 and S3, Microsoft Azure, Google AppEngine, Eucalyptus, Nimbus, OpenStack, Google's MapReduce, Yahoo’s Hadoop, Microsoft’s Dryad, Sphere/Sector, and many other systems. The course involves lectures, outside invited speakers, discussions of research papers, written assignments, and programming assignments. For the catalog description, please click here. For a detailed syllabus, click here; for the slides describing the syllabus, click here.

We will be using the textbook Distributed and Cloud Computing: Clusters, Grids, Clouds, and the Future Internet by Kai Hwang, Jack Dongarra &  Geoffrey C. Fox.

This course will use Piazza to facilitate discussions for assignments, at (it has not been setup yet, more instructions will follow). Piazza should be the primary mechanism of communication between the students and the professor and the TAs. If you have a question and want to reach only the TAs and professor, send email to As a last resort, send individual emails directly (,,,, when you believe the message is not appropriate to be sent to the entire class, or to all the TAs and professor.

Important Dates (all slides and assignments are posted on Black Board):

  • 09/01/2014: NO CLASS
  • 09/04/2014: Prog#1 (Benchmarking) out
  • 09/08/2014 (SB238, 3:15PM-4:15PM): Tutorial on Linux and Benchmarking
  • 09/10/2014: Quiz #1
  • 09/23/2014: Prog#1 due
  • 09/24/2014: Quiz #2, Prog#2 out
  • 09/24/2014 (SB104, 12:45PM-1:45PM): Tutorial on Amazon
  • 10/08/2014: Quiz #3
  • 10/13/2014: NO CLASS
  • 10/22/2014: Quiz #4, Proj out
  • 10/23/2014: Prog#2 due
  • 10/24/2014: Prog#3 out
  • 10/24/2014 (TBA): Tutorial on Prog3
  • 11/05/2014: Quiz #5
  • 11/07/2014: Prog#3 due, Prog#4 out
  • 11/10/2014 (TBA): Tutorial on Prog4
  • 11/19/2014: Quiz #6
  • 11/25/2014: Proj due
  • 11/26/2014: NO CLASS
  • 12/01/2014: Prog#4 due
  •  12/03/2014: Final Exam


Next Semester Spring 2015

554: Data-Intensive Computing