SparsePixels: Efficient Convolution for Sparse Data on FPGAs
Listen
Radio episode about this paper
Transcript
Introduction to the show: ident: AI Radio. Generated commentary on the latest Artificial Intelligence papers.
Tom: Hi, I'm Tom.
Jane: And I'm Jane, here with Lu, Meng and our in-house large language model, Lalam.
Tom: We're looking at the paper: "SparsePixels: Efficient Convolution for Sparse Data on FPGAs".
Jane: Here's the gist of the paper. The gist The SparsePixels framework introduces a method for efficient convolution on FPGAs by selectively computing only on active input pixels, which reduces per-layer compute from O(HWK2CinCout) to O(n 2CinCout) and storage from O(HW C) to O(nC), achieving significant speedups for spatially sparse data in low-latency applications Problem Statement The core problem addressed is whether it is possible to improve the processing efficiency of CNNs for spatially sparse images on FPGAs to allow for accelerated real-time inference in experiments that require microsecond-level latency or below.
Tom: This challenge arises because standard convolution requires scanning the entire input, which is inefficient when semantic information occupies only a small fraction of the pixels.
Jane: Contributions The authors make three primary contributions to this area.
Paper summary: Tom: So, to wrap up, SparsePixels tackles the high latency of standard CNNs on FPGAs caused by dense convolution when dealing with sparse image data. They introduce this sparse convolution method that drastically cuts down computation and storage requirements when n squared is much less than HW <ref:2512.06208#pg1>.
Jane: It’s about making inference latency data-independent and constant at runtime, which is vital for trigger systems in particle experiments where you need processing to happen in microseconds or below <ref:2512.06208#pg3>.
Lu: The authors provide a Python library for quantization-aware training of sparse CNNs and C++ HLS modules for FPGA deployment, which makes it accessible for deploying these models thirty-one thirty-three <ref:2512.06208#pg3>.
Meng: From a production standpoint, the paper shows that this approach can deliver significant speedups compared to standard CNNs in those low-latency scenarios <ref:2512.06208#pg1>.
Tom: The title, SparsePixels: Efficient Convolution for Sparse Data on FPGAs, points directly at solving the problem of inefficient computation when the input features are spatially sparse <ref:2512.06208#pg1>.
Jane: It gives us a concrete way to think about how to build faster readout systems in modern experiments where microsecond latency is a strict requirement <ref:2512.06208#pg3>.
Conclusion: Tom: So we've been looking at SparsePixels, which is about making convolution faster on FPGAs when the image data isn't really dense.
Jane: Right, so they’re talking about this framework that lets you skip over all the empty pixels in an image instead of processing them all.
Lu: The core idea here is to reduce that computation from something like O of H W squared times K by using a much smaller number, n squared.
Meng: But how does it actually work on hardware? We're talking about real deployment here, not just theoretical math.
Tom: Well, they do this by picking a small subset of active pixels and only computing on those, which cuts down the storage from something like H W C to O of n C.
Jane: That means the memory footprint shrinks a lot when you have sparse data. What’s really interesting is that the latency becomes constant at runtime, not depending on how much data you feed it in.
Lalam: I see what they mean here, it's about making the processing time predictable for real-time systems.
Tom: Exactly, because those fixed latencies are crucial for things like particle detectors where you need a trigger decision in microseconds.
Jane: It’s pretty neat because they showed this on a 4k pixel image of neutrino interactions, and they got a seven-thirty times speedup over the standard CNN.
Lu: That seven-thirty times improvement is substantial, even with that small percent drop in accuracy. It shows the concept works practically for sparse data too.
Meng: I'm interested in what this means for us running things at scale; if we can get this kind of speedup while staying within the chip budget, that opens up a lot of possibilities.
Tom: Yeah, so it’s not just a theoretical trick; it’s about making those high-throughput systems feasible with these sparse inputs.
Jane: It really shows how much efficiency we can gain by being smart about where we spend our compute resources. So, what does this mean for the next steps in building these kinds of fast experimental tools?
Ho Fung Tsoi, Dylan Rankin, Vladimir Loncar, Philip Harris
University of Pennsylvania · Institute of Physics Belgrade, Serbia · Massachusetts Institute of Technology, USA · Institute for Artificial Intelligence and Fundamental Interactions, USA
cs.AR, cs.LG, hep-ex
Submitted: 2025-12-05
Updated: 2026-10-19
Comments: Published in MLST
Journal ref: Mach. Learn.: Sci. Technol. 7 (2026) 055025
Code: https://github.com/hftsoi/sparse-pixels
License: http://creativecommons.org/licenses/by/4.0/
The gist: The gist The SparsePixels framework introduces a method for efficient convolution on FPGAs by selectively computing only on active input pixels, which reduces per-layer compute from O(HWK2CinCout) to
Key concepts
- Sparse Convolution
- A method where the convolution operation is only performed on the subset of input pixels that contain meaningful information. Instead of scanning every pixel in the input image, this technique selectively retains and computes only on active pixels, ignoring empty regions. This drastically reduces computational load when semantic data is spatially sparse.
- Input Reduction Layer
- The initial layer in SparsePixels that dynamically identifies and retains a small subset of active pixels from the large input data. It uses a recursive binary reduction scheme to read out these active pixels into two compact arrays: one for features (afeat) and one for coordinates (ahash). This avoids data-dependent write addresses.
- Data-Independent Latency
- A crucial property where the inference time on the FPGA does not change based on the actual input data. Because computation is fixed to a pre-specified pixel budget frozen during synthesis, the runtime latency remains constant. This makes it ideal for real-time systems with strict microsecond latency requirements.
- HLS Implementation Focus
- The Hardware Description Language Synthesis (HLS) implementation concentrates on storing only the active pixels in compact arrays and performing all subsequent computations exclusively on these retained elements. The convolution layer then checks coordinates against the hash array to determine if a pixel is within the receptive field, avoiding unnecessary loops over every possible kernel position.
Terminology
Summary
The gist The SparsePixels framework introduces a method for efficient convolution on FPGAs by selectively computing only on active input pixels, which reduces per-layer compute from O(HWK2CinCout) to O(n 2CinCout) and storage from O(HW C) to O(nC), achieving significant speedups for spatially sparse data in low-latency applications
Problem Statement
The core problem addressed is whether it is possible to improve the processing efficiency of CNNs for spatially sparse images on FPGAs to allow for accelerated real-time inference in experiments that require microsecond-level latency or below. This challenge arises because standard convolution requires scanning the entire input, which is inefficient when semantic information occupies only a small fraction of the pixels.
Contributions
The authors make three primary contributions to this area.
-
Development of a sparse convolution method designed for efficient FPGA implementation for applications in the broader particle physics experiments, targeting low inference latency that is independent of input data and is constant at runtime.
-
Proof-of-concept on spatially sparse image data, demonstrating significant FPGA inference speedups with comparable model performance.
-
A Python library for quantization-aware training of sparse CNNs and C++ HLS modules for FPGA deployment.
Sparse Convolution Method
The framework, SparsePixels, consists of five core sparse layers sufficient to build a sparse CNN. The process begins with the sparse input reduction layer, which dynamically retains up to N max active (a hyperparameter) active pixels into two sparse arrays: the feature array afeat (features) and the hash array ahash (height and width coordinates). This layer avoids data-dependent write addresses by using a recursive binary reduction scheme to read out active pixels, which results in a fixed-shape reduction tree. The sparse convolution layer performs a sparsity-preserving convolution that fixes the input-output sparsity, meaning an output pixel is active if and only if the input at the same pixel location is active, preventing dilation. The computation count scales as N max active 2CinCout rather than HWK2CinCout for standard convolution.
HLS Implementation Details
The HLS implementation focuses on storing only the active pixels in compact arrays and performing all subsequent computation on these arrays. The sparse input reduction layer uses a recursive binary reduction scheme to obtain the leftmost active pixel, which is then written into the first slots of afeat and ahash, with unused slots padded as invalid. The sparse convolution layer loops over output pixels and input pixels, computing offsets (∆h, ∆w) between their coordinates from the hash array to check if they lie within the K × K receptive field before performing a channel-wise dot product. This approach avoids explicit looping over all K squared kernel positions, making it advantageous for sparse data where active pixels can be far apart.
Evaluation Results
Experimental validation on a realistic neutrino dataset demonstrated substantial speedups. For example, the sparse-large model achieved a ×73 speedup over the standard CNN with comparable or slightly lower accuracy. The latencies and initiation intervals (II) of the sparse CNNs are frozen at synthesis, meaning they are data-independent and constant at runtime. This constant runtime property is crucial for trigger systems in modern particle experiments that enforce strict latency bounds. The framework is designed to benefit future algorithm development for efficient data readout in modern experiments with strict latency requirements of microseconds or below.
Limitations and Future Work
Current limitations include the full parallelization in HLS, which limits input and model sizes, as the current implementation prioritizes minimal latency at the cost of higher resource usage. A key area for improvement is enabling flexible control over the degree of parallelization in every sparse layer so one can trade between latency and resource utilization. Furthermore, choosing a proper N max active is currently empirical; a possible improvement is to make N max active, and potentially the threshold, trainable hyperparameters in the training library. Coarse quantization is also noted as an area for future upgrade to adopt HGQ for finer-grained per-weight quantization.
Summary
SparsePixels introduces a framework for sub-microsecond FPGA inference of CNNs using sparse convolution on spatially sparse 2D data. The key features in the HLS implementation are (1) dynamically identifying and retaining a small subset of active pixels from a large input into compact arrays, then (2) performing all subsequent computation only on those retained pixels. By selectively computing on the informative subset of pixels, the design avoids computation on empty regions, yielding significant inference speedups and resource savings. Our design operates on a fixed pixel budget that does not change between inputs, so the hardware runtime is input-independent and constant by construction. On a representative example of MicroBooNE neutrino images with 4k input pixels, a sparse CNN that computes on at most 20 active pixels achieves a ×73 inference speedup on an FPGA over a standard CNN with the same base architecture (133 vs. 9733 clock cycles; 0.665 vs. 48.665 µs), with < 2% ROC AUC drop, and resource utilization well within device budgets. For easy adoption, we provide a Python library supporting quantization-aware training of sparse CNNs and HLS C++ modules for FPGA deployment. We hope this work benefits experiments operating under stringent sub-microsecond latency constraints, such as modern particle experiments, where standard CNNs are often infeasible due to their high latency, which would otherwise force substantial performance compromises.
Improvements for AI systems
-
Sparse Convolution for Neutrino Event Identification: The SparsePixels framework enables real-time inference on FPGAs for neutrino identification, achieving a speedup of a factor of 73 (0.665 µs vs 48.665 µs) while maintaining comparable accuracy, which is crucial for ultra-low latency trigger applications.
-
Constant Latency Inference: By operating on a fixed pixel budget that is frozen at synthesis, the inference latency becomes
data-independent and constant at runtime,
solving the problem of input-dependent computation that plagues existing methods in strict microsecond latency domains. -
Hardware Acceleration for Sparse Data Readout: The sparse input reduction layer uses a recursive binary reduction scheme to read out active pixels, replacing data-dependent write addresses with a
fixed-shape reduction tree,
ensuring hardware efficiency and predictable performance regardless of the input sparsity level. -
Efficient Model Deployment via HLS: The framework provides a Python library for quantization-aware training of sparse CNNs and C++ HLS modules for FPGA deployment, allowing researchers to easily translate models into high-level synthesis firmware while supporting fixed precision deployments.
Abstract
Inference of standard convolutional neural networks (CNNs) on FPGAs often incurs high latency and a long initiation interval due to the deep nested loops required to densely convolve every input pixel regardless of its feature value. However, input features can be spatially sparse in some image data, where semantic information may occupy only a small fraction of the pixels and most computation would be wasted on empty regions. In this work, we introduce SparsePixels, a framework that implements sparse convolution on FPGAs by selectively retaining and computing on a small subset of active input pixels while ignoring the rest, reducing the per-layer compute from O(HWK 2C inC out) to O(n 2C inC out) and the storage from O(HWC) to O(nC) when n squared HW. Because computation always runs over a single pre-specified pixel budget that is frozen at synthesis, the inference latency is data-independent and constant at runtime. We show that, for identifying neutrino interactions in naturally sparse LArTPC images with 4k pixels, a standard CNN with a compact size of 4k parameters incurs an inference latency of 48.665 μ s on an FPGA, whereas a sparse CNN of the same base architecture, computing on less than 1% of the input pixels, achieves a times 73 speedup to 0.665 μ s with resource utilization well within on-chip budgets, trading only a small percent-level performance loss. This work aims to benefit future algorithm development for efficient data readout in modern experiments with strict latency requirements of microseconds or below.
Sources
- Fast Neural Network Inference on FPGAs for Triggering on Long-Lived Particles at Colliders
- Jet-Images -- Deep Learning Edition
- Deep-learning Top Taggers or The End of QCD?
- JEDI-net: a jet identification algorithm based on interaction networks
- Jet Single Shot Detection
- The LHC Olympics 2020: A Community Challenge for Anomaly Detection in High Energy Physics
- Autoencoders on FPGAs for real-time, unsupervised new physics detection at 40 MHz at the Large Hadron Collider
- Real-time Anomaly Detection at the L1 Trigger of CMS Experiment
- A Convolutional Neural Network Neutrino Event Classifier
- Convolutional Neural Networks Applied to Neutrino Events in a Liquid Argon Time Projection Chamber
- Scalable Deep Convolutional Neural Networks for Sparse, Locally Dense Liquid Argon Time Projection Chamber Data
- Neutrino interaction classification with a convolutional neural network in the DUNE far detector
- Real-time Anomaly Detection for Liquid Argon Time Projection Chambers
- Fast convolutional neural networks on FPGAs with hls4ml
- Operation of the ATLAS trigger system in Run 2
- Performance of the CMS Level-1 trigger in proton-proton collisions at $\sqrt{s} =$ 13 TeV
- Fast inference of deep neural networks in FPGAs for particle physics
- Real-time semantic segmentation on FPGAs for autonomous vehicles with hls4ml
- Automatic heterogeneous quantization of deep neural networks for low-latency inference on the edge for particle detectors
- HGQ: High Granularity Quantization for Real-time Neural Networks on FPGAs
Related papers
- WitCert: Sound Runtime Risk Observability and Gating for KV-Cache Quantization
- Golden Ruler: A Numeric Format Catalog with Bit-Exact Conformance Vectors for FP8, BF16, MXFP4, and Microscaling Formats
- RFChipAgent: Multi-Agentic AI Flow for Analog/RF Chip Design
- PoisonCap: Efficient Hierarchical Temporal Safety for CHERI
- Provisioning to Runtime Optimization of a 100 MW-Scale AI Cluster
- Bit-Accurate Modeling of GPU Matrix Multiply-Accumulate Units: Demystifying Numerical Discrepancy and Accuracy