Cain: Automatic Code Generation for Simultaneous Convolutional Kernels on Focal-plane Sensor-processors
Edward Stow, Riku Murai, Sajad Saeedi, Paul H. J. Kelly

TL;DR
Cain is a compiler that automates code generation for multiple convolutional kernels on FPSPs, significantly reducing code length and enabling efficient edge computation for neural networks.
Contribution
The paper introduces Cain, a novel compiler that generates optimized code for multiple convolutional kernels on SCAMP-5 FPSPs, addressing development challenges.
Findings
Cain produces code half as long as existing compilers for SCAMP-5.
Cain enables efficient implementation of neural network kernels on FPSPs.
The approach improves code compactness and potentially reduces power consumption.
Abstract
Focal-plane Sensor-processors (FPSPs) are a camera technology that enable low power, high frame rate computation, making them suitable for edge computation. Unfortunately, these devices' limited instruction sets and registers make developing complex algorithms difficult. In this work, we present Cain - a compiler that targets SCAMP-5, a general-purpose FPSP - which generates code from multiple convolutional kernels. As an example, given the convolutional kernels for an MNIST digit recognition neural network, Cain produces code that is half as long, when compared to the other available compilers for SCAMP-5.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsCCD and CMOS Imaging Sensors · Robotics and Sensor-Based Localization · Image Processing Techniques and Applications
