Today you can hold a slew of computers in the palm of your hand. Smartphones, said David Kaeli, a virtualization technology expert and professor of electrical and computer engineering at Northeastern, integrate programs such as browsers, applications, graphics, and cellular communication, each of which may require a different hardware device to power it efficiently. But handheld devices are just the beginning. This so-called “heterogeneous computing,” wherein different pieces of hardware need to communicate with one another seamlessly to be successful, is pervading the entire technology sphere.
From personal communications to biomedical instrumentation to cybersecurity strategies, heterogeneous computing is becoming ubiquitous. The only problem, Kaeli said, is that there is no standard for integrating the different parts. Each commercial entity comes up with its own strategy, leaving our devices to sort through an ad-hoc jumble of conversations—as if a group of people were speaking two different languages but using a dozen different dictionaries and translators to get their points across.
“What we’ve done in this area has helped advance programming environments that make design heterogeneous computing systems easier,” said Kaeli, who was recently named a Distinguished Professor by the Heterogeneous Systems Architecture Foundation, a nonprofit consortium of vendors, academics, and original equipment manufacturers dedicated to bringing HSA-enabled software solutions to market. Since each of the devices that need to talk to each other are designed by competing organizations, creating a standard of design is easier said than done.
HSA is providing a space for these companies to begin the conversation; through the consortium, they can work collaboratively to define the most effective integration strategies. “HSA is an attempt to unify the ability for all these devices to interact seamlessly,” Kaeli said.
He said the biggest challenge lies in building a common memory system underlying the collection of devices and programs. “A key element of this is being able to allow devices to communicate, and they do that through a common memory system,” he explained. “The memory is used for storing your program and your data, but also for device communication.”
In fact, Kaeli co-authored the book on using open programming languages for heterogeneous computing. In order to arrive at a working architecture, he said competitors would have to engage in open and inclusive conversations. Companies such as AMD, Qualcomm, Samsung, and Analog Devices, with whom Kaeli has collaborated for several years, are moving in this direction by joining forces with HSA.
In collaboration with HSA Foundation members, Kaeli’s work has demonstrated the need for a standardized approach to device communication within heterogeneous computing environments. The foundation, which was established in 2012, hopes to have its first standard released later this year.