Neural Network Exemplar Parallelization with Go
Georg Wiesinger, Erich Schikuta

TL;DR
This paper demonstrates that exemplar parallelism of neural networks implemented in Go can significantly accelerate processing even on limited hardware like notebooks and single-board computers, achieving over 300% speedup with multiple goroutines.
Contribution
It introduces a method for neural network parallelization using Go goroutines on limited hardware, showing substantial speedup in MNIST digit recognition tasks.
Findings
Notebooks achieved 252% speedup with 4 goroutines.
Single-board computer achieved 320% with 4 goroutines.
Single-board computer achieved 432% with 8 goroutines.
Abstract
This paper presents a case for exemplar parallelism of neural networks using Go as parallelization framework. Further it is shown that also limited multi-core hardware systems are feasible for these parallelization tasks, as notebooks and single board computer systems. The main question was how much speedup can be generated when using concurrent Go goroutines specifically. A simple concurrent feedforward network for MNIST digit recognition with the programming language Go was created to find the answer. The first findings when using a notebook (Lenovo Yoga 2) showed a speedup of 252% when utilizing 4 goroutines. Testing a single board computer (Banana Pi M3) delivered more convincing results: 320% with 4 goroutines, and 432% with 8 goroutines.
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.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNeural Networks and Applications
MethodsDense Connections · Feedforward Network
