Cloud computing performance, satisfaction guaranteed


ming Zhao
|

Ming Zhao thinks cloud computing should deliver computing power just as electric companies deliver electricity — like a utility. And like other services we use on a daily basis, cloud computing should come with a performance guarantee.

The complexity of the cloud has historically made it difficult for cloud service providers such as Amazon Web Services to provide any sort of guarantee, says Zhao, an associate professor of computer science at Arizona State University’s Ira A. Fulton Schools of Engineering.

However, for Zhao’s 2013 National Science Foundation CAREER Award proposal, “Coordinated QoS-Driven Management of Cloud Computing and Storage Resources,” he wanted to make that all change.

A perfect storm of computing complexity

Unlike peak electricity usage times during Arizona summers, peak times for cloud computing resources can be unpredictable. And unlike your home’s personal air conditioner, the hardware running the cloud is a shared infrastructure.

Consider Phoenix-area utilities preparing to power millions of air conditioning units on the hottest day of the year as the equivalent of an online retailer preparing for Cyber Monday.

Without cloud computing, that online retailer would need to purchase enough computer hardware to handle the highest traffic weekend of the year — a prohibitive cost for all including even the largest companies in the market.

Instead, cloud computing service providers sell shared computing and storage resources to many companies. But with unpredictable traffic and resource needs among all their customers, cloud service providers can’t guarantee their customers the same level of performance as they could if each company had its own dedicated computing infrastructure to run its applications.

“Each application isn’t run by itself in the cloud,” Zhao said. “It’s sharing and competing for resources with other applications. Interference is intrinsic among them. Applications can affect each other.”

In 2013, Zhao set out to understand what types of resources different cloud computing applications require — both computing and storage — and to predict the demand on these resources.

Zhao created new performance modeling techniques that quickly capture applications’ complex behaviors and accurately predict their resource demands. Fast modeling and prediction allow his solution to adapt to the dynamic changes in cloud applications and systems.

Once he had a good understanding of clients’ resource demands, he began optimizing the allocation of cloud resources to applications — a necessary component for cloud computing to provide quality of service guarantees while still being cost effective.

A silver lining to the future of cloud computing guarantees

Cloud computing achieves its scalability and cost-effectiveness through virtualization. Virtualization creates multiple digital instances of a particular physical resource such as a server in order to better share it among all the competing applications running in the cloud. But virtualization also makes it harder for cloud computing to provide performance guarantees because it creates a barrier between the cloud applications and the cloud resource managers.

Zhao’s research team developed a cloud computing management system that helps better coordinate the use of resources to reliably deliver performance.

Through a method called cross-layer scheduling, Zhao’s management system allows cloud computing digital task managers called schedulers to break through the boundaries of virtualization to more effectively time tasks across the layers of the cloud computing architecture.

graphic displaying how cloud computing works

Horizontally, the cloud computing architecture is comprised of computing, storage and networking resources that each have a scheduler that manages tasks for its given resource. Vertically, cloud computing has hardware, system software and customer applications. Graphic courtesy of Ming Zhao

Cross-layer scheduling allows for better understanding of applications’ resource needs and better enforcement of resource allocation decisions, thus making it easier to deliver the right amount of resources at the right time for performing any given work in the cloud. 

“We have demonstrated it’s possible to provide strong quality of service guarantees to real-world cloud computing applications,” Zhao said. “Our research outcomes are practically useful and we have seen the adoption of our technologies by real-world cloud computing providers.”

Zhao’s team developed the techniques with the help of industry partners. Their techniques are open source and available for the cloud computing providers to implement themselves.

Clouds — atmospheric or digital — don’t stay still for long

Cloud computing is a young field that’s constantly evolving. While emphasis for the past decade has been in the far-off cloud — data centers scattered throughout the world — “today cloud computing is expanding its scope and expanding its reach to the edge,” Zhao said. In other words, to our smartphones and other internet-connected devices.

“(Cloud computing involves) hundreds of millions of computers in many data center buildings globally,” Zhao said. “Now that we are reaching the edge, we have billions of devices in the picture.”

Though it adds another dimension of complexity to Zhao’s research, he’s eager to take on the challenge and see what this new aspect can do for cloud computing performance and capabilities.

“As a cloud computing researcher, I find (edge computing) very interesting. When computing is distributed between the cloud and the edge, the resource management problem now needs to be solved across the cloud and the edge, not just resources in the servers in the cloud anymore.”

Incorporating edge devices in his understanding of cloud computing resource allocation and optimization will be the next phase of his NSF CAREER Award project.

As more devices rely on cloud computing to support applications, Zhao’s cloud computing solutions may become just as crucial to users’ digital lives as utilities are to their daily lives.

Preparing the next generation of cloud computing professionals

Advances in curriculum are another important aspect of the National Science Foundation’s CAREER Award program. Ming Zhao believes he has been successful in his goals to enhance cloud computing education with his research.

Back in 2013 when he was awarded the NSF CAREER Award, there wasn’t much cloud computing in computer science curriculum other than a handful of graduate-level, seminar-style courses where students would get together and discuss research papers.

For the scope of this project, Zhao wanted to offer a systematic training on cloud computing to different levels of students, including outreach to younger students, undergraduate and graduate cloud computing courses, and more advanced distributed computing special topics courses for high-level students.

“It's such an important field, it’s still rapidly growing and it’s only going to become more important,” Zhao said. “It’s not going to be replaced with edge computing, it always has to be there to support the edge.”

Zhao emphasizes the importance of using real-world industry examples in his courses to build on the fundamentals typically taught in academia.

“I still want to teach the fundamentals — what enables cloud computing, to understand the nuts and bolts of cloud computing — so students will not only be users of cloud computing, but contributors to the next generation of cloud computing,” Zhao said.

Zhao uses materials developed in his research to teach fundamentals and works with cloud computing companies to provide interesting projects for his students. He also organizes cloud computing hackathons for the students to compete by proposing and implementing their own ideas with mentoring from cloud computing engineers at companies such as IBM.

He has trained multiple graduate and doctoral students who are almost all now working in the cloud computing industry, including Amazon, cloud computing startups and other industry companies. He has also mentored about 60 undergraduate students in cloud computing research.

A large number of Zhao’s students are from underrepresented groups, including many female and Latino students. He makes a great effort to include students with diverse backgrounds in his CAREER Award project, as he strongly believes training a diverse workforce is important to continuing advancements in the cloud computing field.

To introduce K–12 students to cloud computing, he held workshops in which students took apart devices like laptops, tablets and smartphones to show them what the devices look like inside and how they could run computer games like Minecraft on the Amazon Web Services cloud by hosting their own virtual game servers.

Top photo: ASU Associate Professor Ming Zhao’s National Science Foundation CAREER Award project led to a better understanding of cloud computing resource management and a future of quality-of-service guarantees. Photo by Erika Gronek/ASU

More Science and technology

 

A group of people wearing matching black jackets pose for a photo in front of ASU's Old Main building.

Indigenous geneticists build unprecedented research community at ASU

When Krystal Tsosie (Diné) was an undergraduate at Arizona State University, there were no Indigenous faculty she could look to in any science department. In 2022, after getting her PhD in genomics…

Collage of photos of covers of books by Professor Robert Boyd.

Pioneering professor of cultural evolution pens essays for leading academic journals

When Robert Boyd wrote his 1985 book “Culture and the Evolutionary Process,” cultural evolution was not considered a true scientific topic. But over the past half-century, human culture and cultural…

Man crouched in the dirt in a desert landscape.

Lucy's lasting legacy: Donald Johanson reflects on the discovery of a lifetime

Fifty years ago, in the dusty hills of Hadar, Ethiopia, a young paleoanthropologist, Donald Johanson, discovered what would become one of the most famous fossil skeletons of our lifetime — the 3.2…