archlab logo

Jonathan Balkind in ArchLab

The ArchLab aims to build new computer systems and architectures using tools and techniques from a variety of areas. We are interested in making systems more efficient, secure, and easier to build (among other goals). To achieve this, we work with experts in programming languages, systems, security, circuits, and more. We try to make our designs and tools openly available along the way, to encourage reuse and enable reproduction, too.

Areas of Research include but are not limited to:

  • Agile and Open Source Hardware Design
  • Architectural Support for Serverless
  • Programming Language-Architecture Collaboration

Main Areas of Research

 

pmesh system graphic

Agile and Open Source Hardware Design

Open source hardware has the potential to redefine the world of chip design. With open components built on open standards using productive languages and tools, the community can come together to work more quickly and build more performant, efficient, complex, and secure systems. While open source software has established a template, we must determine the methods and tools that work best in the world of hardware. This will require practice, experience, and collaboration: expect many awesome new chip designs!

FaaSProfiler figure

Architectural Support for Serverless

Today's cloud systems are rapidly growing in complexity, with more layers in the stack coming through the common use of technologies like containerisation and virtualisation. Function-as-a-Service (FaaS) or "Serverless" systems take advantage of these technologies to provide the developer with an extremely convenient new programming paradigm where applications can be written in languages like Javascript and Python and then deployed at cloud scale without any need for DevOps. Unfortunately, we have found that FaaS applications violate common architectural wisdom by exhibiting extremely poor temporal locality. We will work to fix this by modifying existing architectures to better support FaaS applications and aim to build new architectures optimised specifically for FaaS.

metafn example

Programming Language-Architecture Collaboration

Today's architectures poorly reflect the sophistication of the programming languages and runtimes they are executing. Functions are rarely a first-class concept in the architecture and types even less so. We are interested in raising the abstraction level of processors and accelerators to better reflect programmers' and languages' expectations. By adopting these concepts in hardware, we hope to improve the performance and efficiency of more principled languages and to make hardware-software communication easy.

Balkind's Bio

Jonathan Balkind is an Assistant Professor of Computer Science at UCSB. He was previously a PhD Candidate in Computer Science at Princeton University. His research interests lie at the intersection of Computer Architecture, Programming Languages, and Operating Systems. He is the Lead Architect of OpenPiton and its heterogeneous-ISA descendent, BYOC, which are productive research platforms with thousands of downloads from over 70 countries worldwide. In developing Piton (a 25-core OpenPiton ASIC), Jonathan's verification effort helped ensure a functional, Linux-booting chip, a notable accomplishment for a small academic team's first chip.

Jonathan was also a developer of FaaSProfiler, a tool for profiling Function-as-a-Service "serverless" applications. His research on FaaS unveiled a series of architectural problems with today's FaaS workloads which will only be effectively addressed through hardware-software co-design. Jonathan was a Class of 2018 Siebel Scholar and recipient of the Gordon Y.S. Wu Fellowship in Engineering. He received his Master's in Science in Computing Science with Honours of the First Class from the University of Glasgow in June 2013. He has completed internships at Samsung Electronics (Suwon, South Korea), Arm Ltd (Cambridge, UK), and Microsoft Research (Cambridge, UK).

Jonathan Balkind

Assistant Professor, CS

Q & A with New Faculty – Jonathan Balkind

College of Engineering interview with Prof. Balkind

Prospective Students

Interested in joining the ArchLab? Professor Balkind is looking for students to join the team! If you are interested, please apply to the Computer Science or Electrical and Computer Engineering graduate program. Feel free to email Professor Balkind directly if you are applying and want to join the ArchLab.