To expose, or not to expose, hardware heterogeneity to runtimes!
The emphasis on energy efficient computing is steering hardware towards greater heterogeneity. Software must take advantage of emerging heterogeneous hardware to optimize for performance and efficiency. A question that arises is what is the right software layer to abstract the complexity of heterogeneous hardware?
Historically, the operating system (OS) is the first choice to abstract new hardware features. This benefits programmers, virtual machine developers, and language implementers, who do not need to worry about hardware details. On the other hand, the upper layers of the software stack, especially the language runtimes contain rich semantic information about user applications, unavailable to the OS. This information can be useful in better managing hardware. The drawback is that it requires changes to the runtime which makes hardware vendors depend on runtime developers. This paper discusses two case studies that show exposing hardware details to the Java runtime improves key evaluation metrics for popular Java applications. We further discuss implications for implementation complexity, programming model, and the necessary hardware and OS support.
Shoaib Akram is a Ph.D. candidate at Ghent University in Belgium. He has an M.S. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign and a B.S. in Electrical Engineering from the University of Engineering and Technology in Pakistan. His research focuses on the intersection of programming languages, system software, and computer architecture. His current research investigates software approaches to ease the adoption of emerging memory technologies. His recent research also explores the potential of language runtimes in abstracting the complexity of heterogeneous hardware.
Tue 2 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
11:00 - 12:30 | |||
11:00 30mTalk | Efficient Implementation of Smalltalk Activation Records in Language Implementation Frameworks MoreVMs Fabio Niephaus Hasso Plattner Institute, University of Potsdam, Tim Felgentreff Oracle Labs, Potsdam, Tobias Pape Hasso Plattner Institute, Germany, Robert Hirschfeld Hasso-Plattner-Institut (HPI), Germany DOI Pre-print | ||
11:30 30mTalk | Optimization Coaching for Fork/Join Applications on the Java Virtual Machine MoreVMs Eduardo Rosales University of Lugano, Switzerland, Andrea Rosà University of Lugano, Switzerland, Walter Binder University of Lugano, Switzerland | ||
12:00 30mTalk | To expose, or not to expose, hardware heterogeneity to runtimes! MoreVMs Shoaib Akram Ghent University |