Research
Over a decade of systems research spanning serverless computing, hardware synthesis, stream processing, and parallel computing, at IBM Research and MIT CSAIL.
IBM Research
Composer
A new model for programming applications that are both serverless by construction and compose polyglot functions. Composer enables many classes of applications (IoT, workflow orchestration, chatbots, HPC) to take advantage of serverless computing.
Cloud Shell
A programming environment geared for the cloud and IBM Cloud Functions. Enables developing, deploying, running, and debugging serverless functions and compositions.
OpenWhisk
A serverless computing platform offering a simple yet composable programming model for cloud, web, and mobile development. The genesis of IBM Cloud Functions.
Liquid Metal
A research effort producing a language, compiler, and runtime for high-level synthesis of reconfigurable hardware (FPGAs). Enabled end-to-end high-performance, low-power solutions with unified programming across hardware and software.
ActiveSheets
Enables spreadsheets as graphical interfaces for visualizing and editing streaming data. Winner of the Distinguished Paper Award at ECOOP 2014.
MIT CSAIL
StreamIt
A language, compiler, and runtime for streaming and signal processing applications. StreamIt was used for teaching and research at universities worldwide.
StreamBit
Compiler enhancing productivity for bit-level stream processing, combining StreamIt with optimization techniques. Best Paper at PLDI 2005.
VersaBench
Tools for understanding program behavior variations, discovering program phases, and architecture optimization.
Adaptive and Cooperative Execution (ACE)
Enables programs to adapt behavior to runtime architectural information through compiler-embedded precomputation chains.
Trimaran
A publicly available compilation and simulation framework for VLIW research. Used for doctoral research and compiler courses worldwide.