New Website

Welcome to my new research website.

About Me

Chris Shaver is currently a graduate student working towards a PhD in Electrical Engineering in the EECS department at University of California, Berkeley. Chris is a member of the CHESS group and is advised by Edward A. Lee. Chris is interested in dataflow models of computation, semantics, scheduling, and code generation. Chris is also interested in algebraic representations of computation, Programming Languages, Type Theory, and recursion.

Bio

Chris Shaver graduated summa cum laude from The Cooper Union in 2006 with a bachelors degree in Electrical Engineering and the Irwin L. Lynn Memorial Prize for Mathematics. As an undergraduate, he received a fellowship for MRI research at Cornell Medical Center for his work on computer simulations of noise in multiple coil acquisitions. He also taught MATLAB programming for two semesters emphasizing applications in Signal Processing. His other studies included Signal Processing, Computer Engineering, Mathematics, Computer Science, Stochastic Processes, and VLSI.

Upon graduating from Cooper, he worked as a developer for Bloomberg, L.P. writing applications for mortgage security analysis until 2008. After moving to San Francisco, Chris worked at Keith McMillen Instruments in Berkeley on analysis algorithms for stringed instrument signal processing. Chris created new methods for feature detection, improved and optimized pitch detection algorithms, and developed other applications.

Multidimensional Dataflow

In cases where signal processing involves arrays of data interrelated in a larger data space, models of dataflow in which actors produce and consume series of patterned subspaces of these data spaces have certain advantages over dataflow models that simply act on streams of independent tokens. Such models can utilize these patterns and traversals of space to intuitively structure computations in which the structure of the data space is meaningfully related to the computation. In this kind of a model, optimizations can also be made in scheduling to minimize the use of buffers and to pipeline processing.

While several specifications have been made for the semantics of static multidimensional models, including GMDSDF and ArrayOL, with differing constraints imposed on them, many problems still exist in how these specifications can be optimally implemented to minimize buffer space, handle feedback, and pipeline scheduling. Questions also exist with regards to generating efficient code from these models. I am beginning to explore some of these questions in multidimensional static dataflow.

The possibility also exists for more generalized, dynamic versions of these semantics to be developed. In dynamic models, patterns and traversals of data space could be made modal or parametric. The expressive potential of such models would be expanded in a manner useful in many applications. However, the scheduling and optimization of these dynamic models will be significantly more complicated than the static case. In particular, I am exploring possible ways of dynamically handling dependency relationships between actors efficiently. I am also interested in the effect of imposing on a more general model different sets of constraints limiting the kinds of variability in patterns and traversals to special classes that allow further optimizations.

Syntactic Representations

Influenced by previous work in which combinator expressions are used to represent block-diagrams with certain semantic details about systems they constitute, I am developing a general method of representing a broad class of dataflow ptolemy models with a generalized combinator syntax. In such a syntax, functional blocks with enumerable sets of input and output ports are composed in parallel and connected in series to form models. This type of syntax serves as an alternative to syntaxes in which ports are bound to names and connections are unstructured sets of statements specifying by names the connections between these ports. In such a syntax, a canonical form can uniquely or nearly uniquely represent textually a model as an expression. Hierarchy in the syntax would be reflected naturally in subexpression.

In addition to having a combinator representation generated from ptolemy models, a combinator syntax would provide a non-graphical secondary means to author models or edit them. The analysis utilized to formulate this syntactic representation could itself be useful in doing various other syntactic analyses on models such as deducing compositional properties between groupings of actors. This analysis could also be useful in generating both functional and sequential code from models.

In order to explore this kind of syntactic representation, I have been working on an algorithm to translate a large class of suitable ptolemy models into combinator expressions through a set of intermediate transformations on a representative 'syntactic graph' generated from a model. The modularity of this algorithm will allow different variations on syntactic code generation to be explored.

Links (keeping the "web" alive).

CV/Resume

View my cv/resume in html, or download it as a pdf.

Contact Info

My office is in room 545M Cory, in the DOP Center.

I can be reached at the following emails:

  • Berkeley: shaver@eecs.berkeley.edu
  • Outside: hexxiiiz@gmail.com
Feel free to drop me a line.