Extending MadFlow: device-specific optimization
Stefano Carrazza, Juan M. Cruz-Martinez, Gabriele Palazzo

TL;DR
This paper presents a top-down approach to developing hardware-accelerated Monte Carlo code, emphasizing device-specific optimization by identifying critical bottlenecks and reducing memory footprint to enhance performance.
Contribution
It introduces a method to optimize Monte Carlo generators for specific hardware by focusing on critical operations and minimizing hardware-specific code.
Findings
Reducing memory footprint improves performance for 2→4 processes.
Identifying bottlenecks allows for more efficient hardware-specific optimization.
Parallelized Monte Carlo integration benefits from hardware-aware tuning.
Abstract
In this proceedings we demonstrate some advantages of a top-bottom approach in the development of hardware-accelerated code. We start with an autogenerated hardware-agnostic Monte Carlo generator, which is parallelized in the event axis. This allow us to take advantage of the parallelizable nature of Monte Carlo integrals even if we don't have control of the hardware in which the computation will run (i.e., an external cluster). The generic nature of such an implementation can introduce spurious bottlenecks or overheads. Fortunately, said bottlenecks are usually restricted to a subset of operations and not to the whole vectorized program. By identifying the more critical parts of the calculation one can get very efficient code and at the same time minimize the amount of hardware-specific code that needs to be written. We show benchmarks demonstrating how simply reducing the memory…
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
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Distributed and Parallel Computing Systems
