Exploring Parallelism in FPGA-Based Accelerators for Machine Learning Applications

Sed Centeno, Christopher Sprague, Arnab A Purkayastha, Ray Simar, Neeraj Magotra
11/9/2025
cs.DCcs.ARcs.LG

No confident code implementation found for this paper.

Abstract

Speculative backpropagation has emerged as a promising technique to accelerate the training of neural networks by overlapping the forward and backward passes. Leveraging speculative weight updates when error gradients fall within a specific threshold reduces training time without substantially compromising accuracy. In this work, we implement speculative backpropagation on the MNIST dataset using OpenMP as the parallel programming platform. OpenMP's multi-threading capabilities enable simultaneous execution of forward and speculative backpropagation steps, significantly improving training speed. The application is planned for synthesis on a state-of-the-art FPGA to demonstrate its potential for hardware acceleration. Our CPU-based experimental results demonstrate that speculative backpropagation achieves a maximum speedup of 24% in execution time when using a threshold of 0.25, and accuracy remaining within 3-4% of the baseline across various epochs. Additionally, when comparing individual step execution time, speculative backpropagation yields a maximum speedup of 35% over the baseline, demonstrating the effectiveness of overlapping forward and backward passes.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{centeno2025exploring,
  title  = {Exploring Parallelism in FPGA-Based Accelerators for Machine Learning Applications},
  author = {Sed Centeno and Christopher Sprague and Arnab A Purkayastha and Ray Simar and Neeraj Magotra},
  year   = {2025},
  eprint = {2511.11640},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2511.11640v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2511.11640.svg)](https://codeofpaper.com/paper/2511.11640)

Discussion