Seminar - Generalize or Die: Operating Systems Support for Memristor-based Accelerators

The seminar will be given by Dejan Milojicic, Distinguished Technologist di Hewlett Packard Labs, IEEE Computer Society President 2014, IEEE Board of Directors 2017-2018, as part of the course "Trends in Electronics M"

  • Date: 21 May 2018

  • Event location: Room 5.2, School of Engineering and Architecture, viale Risorgimento 2, Bologna

Contact Name:

Contact Phone: + 39 051 209 3013

About the speaker

Dejan is a distinguished technologist at Hewlett Packard Labs, Palo Alto, CA [1998-].
His areas of technical expertise include operating systems, distributed systems, and systems management. He worked in the OSF Research Institute, Cambridge, MA [1994-1998] and Institute “Mihajlo Pupin”, Belgrade, Serbia [1983-1991].
He received his PhD from University of Kaiserslautern, Germany (1993); and MSc/BSc from Belgrade University, Serbia (1983/86). Dejan was a managing director of the Open Cirrus Cloud Computing testbed (2007-2011), with the academic and industrial sites in US (6), Europe (3), and Asia (6). Dejan has published over 170 papers and 2 books; he has 25 granted patents and over 50 patent applications.
Dejan is an IEEE Fellow (2010), ACM Distinguished Engineer (2008), and USENIX member. He was president of IEEE Computer Society and is currently on IEEE Board. He has been on many conference program committees and journal editorial boards. He started two conferences (IEEE ASAP; USENIX WIESS).

Abstract

The deceleration of transistor feature size scaling has motivated growing adoption of specialized accelerators implemented as GPUs, FPGAs, ASICs, and more recently new types of computing such as neuromorphic, bio-inspired, ultra low energy, reversible, stochastic, optical, quantum, combinations, and others unforeseen. There is a tension between specialization and generalization, with the current state trending to master slave models where accelerators (slaves) are instructed by a general purpose system (master) running an Operating System (OS). Traditionally, an OS is a layer between hardware and applications and its primary function is to manage hardware resources and provide a common abstraction to applications. Does this function, however, apply to new types of computing paradigms? This talk revisits OS functionality for memristor-based accelerators. We explore one accelerator implementation, the Dot Product Engine (DPE), for a select pattern of applications in machine learning, imaging, and scientific computing and a small set of use cases. We explore typical OS functionality, such as reconfiguration, partitioning, security, virtualization, and programming. We also explore new types of functionality, such as precision and trustworthiness of reconfiguration. We claim that making an accelerator, such as the DPE, more general will result in broader adoption and better utilization.