Tim Sherwood (he/him)
Professor of Computer Science
2011 Henley Hall
sherwood@cs.ucsb.edu
Hi! I am a Professor in the Department of Computer Science, an affiliate of Electrical and Computer Engineering, and the Interim Dean of the College of Creative Studies at UC Santa Barbara. In addition to my responsibilities in CCS and Engineering (which includes running many ongoing funded research projects through the ArchLab), I am a co-founder of the interdisciplinary student-driven program SEEDS, a co-founder of Cycuity (formerly known as Tortuga Logic) and a frequent consultant to the UCSB Office of Research where I served as the Associate Vice Chancellor for Research for almost 5 years. Before joining UCSB in 2003, I received my B.S from UC Davis (1998) and my M.S. and Ph.D. from UC San Diego (2003) working with Professor Brad Calder.
UC Santa Barbara is an amazing place to work and live. I have been fortunate enough to find amazing students and collaborators here over the years eager to explore new ideas. Together we have done work engineering computers for places where security and correctness are absolutely critical; finding new ways for hand drawn sketches to be used as a mode of interaction with computers; probing the ability for new technologies such as superconducting and 3D integration to be used to build faster, lower energy, and more secure computing; and supporting new models of computation from cryptography, to bioinformatics, to machine learning from algorithms, to system software, to hardware. I am driven by a desire to understand the nature of computation better and support the next generation with the faster, more energy efficient, and more trustworthy machines they deserve. I hope you will consider joining us!
Lab Philosophy
The UCSB CS Computer Architecture Lab (ArchLab) is where my students and I work on all manner of computer science and engineering problems from the perspective of how we better "shape" computers to address our needs (e.g. to be more secure or amenable to machine learning). Computer architecture is a great field where creative thinking and careful software engineering meet crazy new hardware, surprising new algorithms, and complex new challenges. I try to keep our lab to a reasonable size so Ph.D. students get significant time directly with me one-on-one. I also try to keep a great mix of people with backgrounds and interests ranging from physics, to algorithms, to neuroscience, to hardware design, to human computer interferences. I do this because surrounding yourself with a diverse and capable pool of peers is one of the best ways to really learn and because it is a lot of fun that way. While my students and I all bring a variety of perspectives and experiences to the lab, we are also united in a common goal of doing groundbreaking and thought provoking architecture work that will help lay a foundation for the future of computing. If you are a perspective student or researcher I encourage you to consider joining us.
Some Awards
While the above might sound like a messy mix of things (and there is some truth to that), there is some method to the madness. The awards below are listed to provide some evidence of amazing people I have had the pleasure of working with in the past including graduate students, teaching assistants, and collaborators.
ACM Fellow: “for contributions to computer system security and performance analysis” The ACM Fellows program recognizes the top 1% of ACM Members for their outstanding accomplishments in computing and information technology and/or outstanding service to ACM and the larger computing community. Awarded January 2023.
Honorable Mention for IEEE Micro Top Pick — Georgios Tzimpragos, Jennifer Volk, Alex Wynn, James Smith, and Timothy Sherwood. Towards Practical Superconducting Computing. Named as Honorable Mention in IEEE Micro's Top Picks from Computer Architecture Conferences. January-February 2022.
IEEE Fellow: “for contributions to computer system security and performance analysis” This distinction reserved for select IEEE members whose extraordinary accomplishments are deemed fitting of this prestigious grade elevation. Awarded January 2022.
UCSB Academic Senate Outstanding Graduate Mentor Award: The Outstanding Graduate Mentor Awards “recognize the exemplary contributions of faculty to mentoring” and are awarded to no more than three faculty university-wide each year. Awarded April 2021.
IEEE Micro Top Pick: Georgios Tzimpragos, Jennifer Volk, Dilip Vasudevan, Nestan Tsiskaridze, George Michelogiannakis, Advait Madhavan, John Shalf, and Timothy Sherwood. Temporal Computing with Superconductor Electronics IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, May-June 2021.
UC San Diego CSE Distinguished Alumnus: Awarded by the Computer Science and Engineering Department of the Jacobs School of Engineering at UC San Diego, January 31st 2020.
IEEE Micro Top Pick: Deeksha Dangwal, Weilong Cui, Joseph McMahan, and Timothy Sherwood. Trace Wringing for Program Trace Privacy. IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2020.
ASPLOS Best Paper Award: Georgios Tzimpragos, Advait Madhavan, Dilip Vasudevan, Dmitri Strukov, and Timothy Sherwood. Boosted Race Trees for Low Energy Classification. ACM International Conference on Architectural Support for Programming Languages and Operating Systems (1 of 4 from 370 submissions), April 2019
IEEE Micro Top Pick: Joseph McMahan, Michael Christensen, Lawton Nichols, Jared Roesch, Sung-Yee Guo, Ben Hardekopf, and Timothy Sherwood. An Architecture for Analysis, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2018.
IEEE Micro Top Pick: Weilong Cui and Timothy Sherwood. Architectural Risk, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2018.
Chair's Choice Best Paper Award: Heba Saadeldeen, Zhaoxia Deng, Timothy Sherwood, and Fred Chong. Thermal-Aware, Heterogeneous Materials for Improved Energy and Reliability in 3D PCM Architectures, International Symposium on Memory Systems (MEMSYS). October 2017
ASPLOS Most Influential Paper Award "Automatically Characterizing Large Scale Program Behavior" (aka SimPoint), Timothy Sherwood, Erez Perelman, Greg Hamerly, Brad Calder from ASPLOS 2002. Awarded April 2017.
Maurice Wilkes Award "for contributions to novel program analysis advancing architectural modeling and security". This annual award acknowledges an outstanding contribution to computer architecture made by an individual in the first 20 years of their career.
IEEE Micro Top Pick: Advait Madhavan, Timothy Sherwood, and Dmitri Strukov. Abusing Hardware Race Conditions to do Useful Computation, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2015.
Honorable Mention for IEEE Micro Top Pick: Xun Li, Vineeth Kashyap, Jason Oberg, Mohit Tiwari, Vasanth Rajarathinam, Ryan Kastner, Timothy Sherwood, Ben Hardekopf, and Frederic Chong. Sapper: A Language for Hardware-Level Security Policy Enforcement, Named as Honorable Mention in IEEE Micro's Top Picks from Computer Architecture Conferences January-February 2015.
IEEE Micro Top Pick: Hassan Wassel, Ying Gao, Jason Oberg, Ted Huffmire, Ryan Kastner, Frederic Chong, and Timothy Sherwood. Networks-On-Chip with Provable Security Properties, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2014.
Most Promising Paper Award: Hebatallah Saadeldeen, Diana Franklin, Guoping Long, Charlotte Hill, Aisha Browne, Dmitri Strukov, Timothy Sherwood, and Frederic Chong. Memristors for Neural Branch Prediction: A Case Study in Strict Latency and Write Endurance Challenge ACM International Conference On Computing Frontiers. May 2013, Ischia Italy.
IEEE Micro Top Pick: Jonathan Valamehr, Melissa Chase, Seny Kamara, Andrew Putnam, Dan Shumow, Vinod Vaikuntanathan, and Timothy Sherwood. Inspection Resistant Memory Architectures, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2013.
UCSB Academic Senate Distinguished Teaching Award: This is a campus-level award given to faculty who have successfully united teaching and research and can only be won once in a career. Awarded April 2012.
IEEE Micro Top Pick: Mohit Tiwari, Xun Li, Hassan Wassel, Bita Mazloom, Shashidhar Mysore, Frederic Chong, and Timothy Sherwood. Tracking Information Flow at the Gate-Level for Secure Architectures, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences January-February 2010.
Best Paper Award: Mohit Tiwari, Shashidhar Mysore, Timothy Sherwood Quantifying the Potential for Program Analysis Peripherals Parallel Architecture and Compiler Techniques (PACT), Sept 2009. Raleigh, NC
UCSB Outstanding Organization Advisor Award: Campus-level award, as nominated by the students, for work with the UCSB Student Chapter of the ACM. Awarded 2009
Northrop Grumman Excellence in Teaching Award: This is a college-level award given to young faculty for teaching, mentoring, and service. Awarded June 2008
IEEE Micro Top Pick: Shashidhar Mysore, Banit Agrawal, Sheng-Chih Lin, Navin Srivastava, Kaustav Banerjee and Timothy Sherwood. 3D-Integration for Introspection, IEEE Micro: Micro's Top Picks from Computer Architecture Conferences January-February 2007.
Nominated for Best Paper: Banit Agrawal and Timothy Sherwood. Virtually Pipelined Network Memory, Proceedings of the International Symposium on Microarchitecture (Micro), December 2006. Orlando, FL
Best Paper Award: Shashidhar Mysore, Banit Agrawal, Timothy Sherwood, Nisheeth Shrivastava, and Subhash Suri. Profiling over Adaptive Ranges. Proceedings of the International Symposium on Code Generation and Optimization (CGO'06) March 2006. New York, New York.
IEEE Micro Top Pick: Lin Tan and Timothy Sherwood. Architectures for Bit-Split String Scanning in Intrusion Detection IEEE Micro: Micro's Top Picks from Computer Architecture Conferences, January-February 2006.
IEEE Micro Top Pick: Timothy Sherwood, Erez Perelman, Greg Hamerly, Suleyman Sair, and Brad Calder. Discovering and Exploiting Program Phases. IEEE Micro: Micro's Top Picks from Computer Architecture Conferences November-December 2003.
Invited Undergraduate Seminar — “Security, Synapses, and Superconducting from the Logic Gates Up” Harvey Mudd (March 2023)
Distinguished Seminar — “Reconsidering Computing from the Gates Up” Department of Electrical and Computer Engineering, University of Wisconsin Madison. (February 2020)
Distinguished Seminar — “Computing Fast and Slow” Department of Computer Science, University of Illinois Urbana-Champaign. (October 2019)
Distinguished Seminar — “Computer Architectures as an Instrument for Understanding the Nature of Practical Computation” Department of Electrical and Computer Engineering, George Mason University (March 2018)
Select Seminars
Rhys Gretsch, Peiyang Song, Advait Madhavan, Jeremy Lau, and Timothy Sherwood. Energy Efficient Convolutions with Temporal Arithmetic Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) 2024.
Jennifer Volk, Alex Wynn, Evan Golden, Timothy Sherwood, and Georgios Tzimpragos. Addressable superconductor integrated circuit memory from delay lines (Scientific Reports) 2023
Zhizhou Zhang, Alvin Glova, Timothy Sherwood, and Jonathan Balkind. A Prediction System Service Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) 2023.
Alvin Oliver Glova, Yukai Yang, Yiyao Wan, Zhizhou Zhang, George Michelogiannakis, Jonathan Balkind, Timothy Sherwood Establishing Cooperative Computation with Hardware Embassies IEEE International Symposium on Secure and Private Execution Environment Design (SEED) September 2022.
Georgios Tzimpragos, Advait Madhavan, Dilip Vasudevan, Dmitri Strukov, and Timothy Sherwood. In-sensor classification with boosted race trees Communications of the ACM (CACM) Volume 64, Issue 6, May 2021.
Deeksha Dangwal, Weilong Cui, Joseph McMahan, and Timothy Sherwood. Trace Wringing for Program Trace Privacy IEEE Micro: Micro's Top Picks from Computer Architecture Conferences (IEEE Micro - top pick), May-June 2020.
A more complete and indexed list of papers can be found on the lab publication page.
Recent papers
Courses
CS293E: The Computer Science of Accelerator Design
From Microsoft’s Catapult, to Amazon’s F1 service, to Google’s ASIC cloud, it is clear that to achieve the energy efficiency demanded by computing at enormous scale we will need specialized machines for everything from neural network training and inference to media re-coding and beyond. The design of such accelerators will require new algorithms more suited to efficient hardware operation, new programming languages that can cleanly and rapidly define computations ready for acceleration, and new software tools for exploring and rapidly prototyping design options. How can the abstract algebra of semirings help us think about accelerator design? What does a monad in hardware look like? How is accelerator design increasingly a software engineering problem? Studying papers from Google Brain, Microsoft Research, and leading academics, we will explore potential answers to these questions, and students will leave the course with a better understanding of what things are efficient in hardware versus software, how to reason about the size, delay, and energy efficiency of neural network accelerator designs, and what exactly this next generation of languages for hardware design are doing under the hood. The course will have a series of smaller projects that will help establish the framework for taking on a larger accelerator research effort of the student’s own design.
CS64: Computer Organization and Digital Logic
Have you ever wondered how a computer actually computes? Deep beneath your phone’s glossy exterior and flashy screen, a network of literally miles of wires carries information between many billions of little switches that, when working properly, allow you to play flappy bird. This class is the beginning of the story of how that happens. We will explore the fundamental principles of computing hardware, what it “means” for a program to actually run on a computer, and start to drill down through intricately stacked layers of abstraction that make what you call a “computer” even possible. Along the way you will learn some assembly language programming, you will better understand how and why computers are organized the way they are, and how to actually start to build your own computers using the basic digital logic design elements of gates, combinational circuits, flip-flops, and much more.
CS160: Translation of Programming Languages
Study of the structure of compilers. Topics include: lexical analysis; syntax analysis and parsers; type checking; run-time environments; intermediate code generation; and compiler-construction tools.
CS154: Computer Architecture
The course gives an in-depth understanding of the inner-workings of modern digital computer systems and tradeoffs present at the hardware-software interface. Computer architecture is driven from the software side by user needs in terms of functionality and performance and from the hardware side by technological innovations and constraints. CS 154 introduces students to this exciting field, including the design process, performance and cost analysis, computer arithmetic, controller and data path design, input/output systems, interrupts and exceptions, pipelining and parallelism.
CS254: Advanced Computer Architecture
This class will cover many of the important aspects of modern computer architectures (how do modern caches really work, predicting future execution, techniques for speculation and instruction level parallelism) and will explore the relationship between computer architecture and other areas such as machine learning and optimization.
CS189B: Capstone
The capstone course sequence presents an opportunity to develop innovative solutions to real industry problems. You won't find answers to these problems in a textbook, on a message board, or in off-the-shelf software package -- because students in this class are among the first ever to be able to solve them. Working together with industry leaders, student teams take on the most challenging problems of the day with technological innovation, creativity, and boatloads of hard work. The capstone course sequence is offered over 2 quarters at UCSB with Capstone projects presented to public during the UCSB CS Summit