Bridging the gap: a computer built for research

26.04.2019 | Anna Ettlin

Timothy Roscoe is a Full Professor in the Systems Group at the Department of Computer Science at ETH Zurich. He has led the effort to build Enzian, a uniquely flexible research computer that will allow researchers to study many different areas of computer science without requiring specialised hardware, thus bringing academic studies and the realities of industry closer together.

Rendering of an Enzian board with its components.
Though it may look like just another computer to the lay person, Enzian's unprecedented flexibility offers countless research opportunities.

These are the basic components of a computer: interconnect, CPU, memory, input and output devices. “If you open any operating systems textbook, there will be a simple diagram that says ‘this is what a computer looks like,’” says Professor Timothy Roscoe. “That diagram is a lie.”

The diagrams were accurate enough 20 years ago: they depict the architecture of a traditional PC, and most computers at the time shared a similar anatomy. Today, however, the diagrams no longer hold true. Improvements in hardware design and manufacturing have made it easy to build custom hardware. Modern computers are complex, and individual processors are often highly specialised.

Portrait of Timothy Roscoe
Professor Timothy Roscoe

Timothy “Mothy” Roscoe, a full professor in the Systems Group of the Computer Science Department at ETH Zurich, is acutely aware of this development. “Systems research is running out of options,” he says. Often, researchers are limited to using off-the-shelf PCs, since the custom hardware that Google, Microsoft, Huawei and many other big players are using cannot be bought. “You therefore end up doing research that’s not as realistic or relevant as it could be,” says Roscoe. Research groups or universities that are well regarded in the industry – like the Systems Group at ETH – will occasionally receive samples of the custom hardware from such companies. While interesting, this once again limits the researchers. “If you get a cloud TPU that was made for deep learning, you can only use it to study deep learning. Try anything else and you’ll be fighting every assumption that went into the design of the hardware,” Roscoe explains.

So what is a systems researcher to do? “I’d like to do research into software for hardware that hasn’t been built or even designed yet,” says Professor Roscoe. Lacking a platform to work with, Roscoe and his group decided to build their own. Thus, the highly flexible external pageEnzian research computer was conceived.

Built for research

On his website, Roscoe describes himself as “a systems research person: I build stuff.” Until now, his focus has been on building software: scalable operating systems that would adapt to the increasingly heterogeneous architecture of modern computers. “We don’t build products to solve a specific problem,” he points out. “We build systems to better understand a problem and to explore a space of possible solutions.”

“We don’t build products to solve a specific problem. We build systems to better understand a problem and to explore a space of possible solutions.”Timothy Roscoe

Timothy Roscoe and his team have incorporated this principle into the design of their research computer. Named for the purple gentian flower native to the Swiss Alps, Enzian aims to provide computer scientists at ETH and all over the world with a flexible hardware platform intended to close the gap between academia and a highly customised industry. In a way, Enzian is also a product: it is manufactured by industry partners and will be made available for purchase to interested parties, which already include several renowned universities and research organisations.

At first glance, the computer that has sparked such high-profile interest resembles an off-the-shelf, two-socket server: two distinct CPUs, each with its own memory, network bandwidth and connections for peripheral components. However, Timothy Roscoe’s team has replaced one of the CPUs with a high-end field-programmable gate array (FPGA). This integrated circuit can be rewired on the fly and can be used to address any task the researchers have in mind. The close coupling of the reprogrammable chip with a standard CPU offers extraordinary flexibility. “We can program the FPGA to observe the behaviour of the CPU in real time or to deliberately inject faults into it in order to study software correctness, verification or validation,” Roscoe explains. “Or, vice versa, we can use the CPU to study the FPGA.” A single Enzian board can facilitate research into high-performance computing, hardware acceleration, databases and machine learning, among others. But that’s not all Enzian can do.

Enzian prototypes at the Department of Computer Science
The large prototypes are eventually to be replaced by standard-sized boards that will fit into a server rack.

For now, Enzian exists as two unwieldy prototypes in the Computer Science Department of ETH Zurich. The research-ready boards, which are currently being manufactured by an industry partner in Germany, will fit into a standard server rack 15 to 20 at a time. At this point, another feature comes into play: the FPGA supports an exceptional network bandwidth of 400 gigabits. Linking several Enzian boards together provides the researchers with new possibilities to study networks and security, a feature which has piqued the interest of researchers beyond ETH. “I’ve given talks about Enzian at various universities and people invariably ask me when they can get one,” says Timothy Roscoe.

Roscoe shares their eagerness to explore the full possibilities of Enzian. As a systems researcher, Roscoe is particularly interested in studying potential operating systems for the FPGA component. “The FPGA has no operating system,” he explains. “If you want it to perform a different task, you turn it off, reconfigure it and turn it back on again. But from a systems research standpoint, a system that only does one thing at a time is like playing tennis with the net down: too easy.” So he intends to work on an operating system that could better exploit the FPGA’s possibilities. It’s not a simple task: it’s difficult to even conceive of software that would adapt to the fluid structure of the reprogrammable component.

Essential but often unrecognised

Fortunately, Timothy Roscoe is no stranger to the occasional bit of digital anarchy. In his chosen field, mathematics and theory are vital but only go so far. “Computer systems are not idealised constructs. They act in the real world, and the world is a very messy place,” Roscoe explains. The complexity of operating systems makes collaboration essential, and systems programmers often end up getting caught in the middle between hardware designers and application creators.

“Computer systems are not idealised constructs. They act in the real world, and the world is a very messy place.”Timothy Roscoe

For all that they play an essential role in transforming chunks of silicon and metal into a working computer, systems programmers and researchers rarely receive much recognition outside of the field of computer science. The intricacy of working at the boundary between hardware and software presents a challenge for Roscoe and his peers as they seek to explain or demonstrate their work to outsiders. “Computer systems aren’t particularly glamorous in and of themselves," he says, "but it’s about designing and building the new computing infrastructure that is needed for all the other great computer science work going on at ETH and elsewhere.”

With contributions from Roscoe and his colleagues, the Systems Group at ETH has become highly regarded in the field. “When I became a professor here in 2007, ETH was not well known in the systems community,” he recalls. “A friend recommended it to me and I’m grateful to him to this day. This is such an amazing place to work, with a great faculty and students, and it keeps getting better.”

JavaScript has been disabled in your browser