vast computing power
into smaller units
By Brett Vermilyea
After working in the private sector, Kartik Gopalan realized he preferred the life of a university professor. And he knew why.
“Freedom,” he says. Compared to working for a business, “there’s a lot more freedom here. Every researcher has to decide whether they’re interested in just making more money or actually investigating exciting ideas.” He chose exciting ideas.
Since coming to Binghamton University in 2006, the Watson School’s associate professor of computer science has been figuring out ways to effectively use virtualization in cloud computing.
Cloud computing — the practice of using a cluster of computers off site to store data and perform tasks — “is sort of like a utility model,” Gopalan says. “You have electricity, but you don’t have an electrical generator in your home.” With cloud computing, you have the power of a computer bank without having to actually house and maintain one.
Google is a classic example. Businesses and the public use its Web-based programs to send e-mail, write documents, organize calendars, design presentations and build spreadsheets. They use Google’s servers to store data and run their programs. Not too long ago, the same kind of programs had to be installed individually on home and office computers alongside data storage.
Virtualization makes cloud computing practical on a large scale by giving a single computer the ability to do the work of multiple machines. Cloud service providers, such as Amazon and Google, normally operate large warehouse-sized data centers that house several thousand physical machines interconnected by high-speed networks. Virtualization enables these service providers to package their cloud computing tasks into logical units called virtual machines. Lots of virtual machines can then be packed together into fewer physical machines, allowing the administrators to reduce hardware complexity, energy consumption and operating costs by leveraging economies of scale. In simple words, virtualization enables you to do more with less.
When Kartik Gopalan, associate professor of computer science, won his National Science Foundation (NSF) grant, it gave him more than invaluable resources for his research — it also gave him tools to influence the next generation of computer scientists and engineers. Local high-school students can take advantage of summer computer science internships at Binghamton University, and undergraduates can work with professors to gain research experience.
“The high school students come fresh without knowing much about computer science,” he says. “We try to get them interested in computer science and expose them to research problems like working on robots and computer graphics. We choose topics that get them excited. If we catch them early, there’s a better chance of keeping them involved.”
Reaching high schoolers is important, he says, because American students think that all the work in computer science is being outsourced to India, China, Russia and Brazil. But he shows them how much interesting and exciting work needs to be done here.
His challenge with undergraduates is a bit different. America isn’t creating enough students to fill its graduate schools, so to shift the balance a bit, the NSF created the Research Experiences for Undergraduates program, which partners undergraduates with university professors to conduct research. Gopalan’s NSF grants allow him to support some of the students in the program.
“We channel these undergraduate students to pursue graduate studies and more advanced studies in computer science and get involved in research activities so they’re motivated to pursue graduate degrees,” Gopalan says.
“When I first got interested in virtualization back in 2002, 2003, there were still a lot of naysayers who thought that this might not take off,” Gopalan says. “But within a space of seven to eight years, almost everybody is talking about virtualization and adopting it.”
Companies find virtualization in cloud computing attractive because it’s flexible and economical. By storing data or performing computation remotely, companies don’t have to buy the expensive hardware, build the necessary infrastructure or hire people to run and maintain that hardware. Nor do they have to buy individual-user licenses for software or pay a stable of IT personnel to install and update software on multiple machines.
“IBM recognizes that cloud computing is part of our vision for a smarter planet. As the world gets smarter, the types of demands on the infrastructure, both business and IT, will continue to grow,” says Kerin Flannery, IBM Endicott executive and Watson School Advisory Committee member. “Cloud computing leverages a pooled resources environment that utilizes virtualization in order for the physical assets to support multiple workloads. IBM has also launched Cloud Academy, designed to help academic institutions with their cloud computing initiatives and related professional development and to provide a forum for sharing best practices.”
Research such as Gopalan’s has also made iPhones and the like possible by giving these smaller devices the power of whole computer clusters.
“You can use the iPhone to browse the Web, check your e-mail, or make online purchases,” Gopalan says. “But where are these applications actually running? They are often running in the back end, in a cluster or a data center.”
“The cloud service operator needs the right tools to satisfy the user’s performance requirement while minimizing the cost,” Gopalan adds. “These are two conflicting requirements. I develop algorithms to try to bridge that gap.”
Gopalan says working in the private sector when he was younger gave him the experience he needed to tackle such problems. “It gave me quite a bit of exposure to what it takes to take a research idea and commercialize it, making it a product people can use.”
Recently, Gopalan received a nearly $400,000 grant from the National Science Foundation’s (NSF) most prestigious program for young faculty to support his virtualization in cloud computing research. One of the reasons he received the funding is the tangible results of his research.
“Before I start on a research project, I ask, ‘Who would care about it?’” he says. “Why does it matter? It’s not enough for it to be just intellectually challenging. It should have real-world applications. That constantly guides my research, and my goal is to make a working prototype at the end to show that it has a real-world performance improvement over existing techniques. It’s not just writing an algorithm or proving a theory on paper. We are actually implementing and getting a real-world system working.”