Handling Nested Parallelism and Extreme Load Imbalance in an Orbital Analysis Code
Benjamin James Gaska, Neha Jothi, Mahdi Soltan Mohammadi, Kat Volk,, and Michelle Mills Strout

TL;DR
This paper introduces a novel shared memory parallelization strategy for nested parallelism in an orbital analysis code, significantly reducing load imbalance and improving execution time by an order of magnitude.
Contribution
It presents an inspector/executor approach that transforms nested parallelism into a non-nested, efficient parallel wavefront method for complex scientific codes.
Findings
Order of magnitude speedup in execution time
Reduced load imbalance in parallel execution
Effective implementation across multiple programming models
Abstract
Nested parallelism exists in scientific codes that are searching multi-dimensional spaces. However, implementations of nested parallelism often have overhead and load balance issues. The Orbital Analysis code we present exhibits a sparse search space, significant load imbalances, and stopping when the first solution is reached. All these aspects of the algorithm exacerbate the problem of using nested parallelism effectively. In this paper, we present an inspector/executor strategy for chunking such computations into parallel wavefronts. The presented shared memory parallelization is no longer nested and exhibits significantly less load imbalance. We evaluate this approach on an Orbital analysis code, and we improve the execution time from the original implementation by an order of magnitude. As part of a Graduate Computer Science course in Parallel Programming models, we show how the…
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 · Distributed and Parallel Computing Systems · Advanced Data Storage Technologies
