Behind the scenes at Labs
Showing results for 
Search instead for 
Did you mean: 

SpaceJMP: ASPLOS Honors Labs Researchers and Interns (Updated)


Dejan ASPLOS 2.jpg

Izatt, Dejan, Gerd, Alex


By Curt Hopkins, Managing Editor, Hewlett Packard Labs

A paper authored by Dejan Milojicic, Senior Researcher and Senior Manager in Systems Research at Hewlett Packard Labs, Paolo Faraboschi, a Systems Research Fellow, four Labs interns, and their three professors has been accepted by the prestigious 21st International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2016).

The paper, “"Space JMP: Programming with Multiple Virtual Address Spaces," was co-written by Milojicic, Faraboschi; Labs interns Izzat El Hajj (University of Illinois at Champaign-Urbana), Alexander Merritt (Georgia Institute of Technology), Gerd Zellweger (ETH Zürich), and Reto Achermann (ETH Zürich); and their advisers Wen-Mei Hwu (University of Illinois at Champaign-Urbana), Karsten Schwan (Georgia Institute of Technology), Timothy Roscoe (ETH Zürich),.

“SpaceJMP,” which will be presented at ASPLOS 2016 in Atlanta in April, was one of 53 accepted out of 240 submitted.

Here’s how Milojicic, Faraboschi, and the interns outlined their innovation.

A traditional operating system process consists of a single virtual address space that maps into available physical memory. Virtual memory management was introduced over fifty years ago to overcome the scarcity of physical memory by providing an abstraction presenting a larger address space to user processes through virtualization. With the advances of memory and interconnect technology, high-end systems are entering a different world: there is an abundance of physical memory, but a limited number of virtual and physical address bits that prevents directly accessing all the available memory. In this context, mapping available physical address ranges in and out of virtual address spaces becomes a frequent and important operation.

We propose a new operating system design that promotes virtual address spaces to first-class citizens, enabling process threads to attach to, detach from, and switch into multiple virtual address spaces.

“What intrigued me,” said Milojicic, “is that this concept has not been introduced before, that we came up with something that had never been conceived before.”

And by “we” he didn’t mean he and Faraboschi.

“The interns came up with this idea,” he said. (Interns at Hewlett Packard Labs do not fool around, evidently.)

The paper did not just result in a new way of mapping address spaces. It has also provided a waypost that leads to “many more uses of the same concept” in the future.

“Virtual address spaces (VAS) were designed when memory was at a premium,” he said. “Now that we have a great deal more memory, our ability is outstripped by the paucity of the tools.” SpaceJMP solves that problem.

“We are putting the world back in order,” said Milojicic. “We are trying to return balance.”


Update: This paper has just been awarded a HiPEAC Paper Award by the European Network on High Performance and Embedded Architecture and Compilation. Congratulations to Dejan, Paolo, and their interns. 

About the Author


Managing Editor, Hewlett Packard Labs