We’re looking for a postdoc to help us build a new kind of continuously reconfigurable machine (and a compiler to go with it).
Computer Architecture and Programming Abstractions
Capra is a research group at Cornell in the Computer Science and Electrical and Computer Engineering departments. Our research studies abstractions and efficiency through the interaction of programming languages and computer architecture.
Vision accelerators that run on real-time video process nearly identical frames at every time step. This project introduces activation motion compensation, a technique for approximately incremental acceleration of computer vision. It works by measuring motion in the input video and translating it to motion in the intermediate results of convolutional neural networks.
Most camera systems are optimized for photography, so they waste time and energy when they capture images for computer vision. This project designs a vision mode for cameras and their associated signal processing logic that saves energy by producing lower-quality, less-processed image data.
Braid is a programming language for heterogeneous programming, where a single source program targets different hardware units. We have applied it to real-time graphics programming on CPU–GPU systems. Braid compiles to WebGL, so you can try it out in your browser.
Despite rapid progress in machine learning capabilities, integrating ML into full applications remains complex and error prone. Opal is a new set of language features that help make it easier to build correct software that relies on AI, especially on natural language understanding.
Our paper on exploiting temporal redundancy in hardware-accelerated computer vision was accepted to ISCA 2018.