Search papers, labs, and topics across Lattice.
This paper analyzes the challenges and outcomes of parallelizing the legacy mesh generation software Advancing Front Local Reconnection (AFLR) using a pseudo-constrained parallel data refinement approach. The authors implemented a data decomposition scheme and a workload balancing runtime system, achieving an 11-fold performance improvement over the serial version when using 16 CPU cores, although stability and output quality were compromised due to input boundary constraints. The findings indicate that the inherent limitations of black-box software may hinder effective parallelization, suggesting a need for redesigning such systems to fully exploit concurrency in large-scale computing environments.
Parallelizing legacy mesh generation software can yield significant speedups, but black-box constraints may undermine output quality and scalability.
This paper presents lessons learned from parallelizing the legacy software known as Advancing Front Local Reconnection (AFLR) as a black box. The parallel procedure utilizes (i) a data decomposition scheme where each subdomain is refined in parallel using the sequential mesh generation code and (ii) a runtime system for work-load balancing. Results on the mesh refinement operation show that the parallel method's stability (output mesh quality) is good and that the parallel method outperforms the serial AFLR by about 11 times when utilizing 16 CPU cores. However, full stability (i.e., generating the same quality as the serial method) and potential scalability is limited due to the constraints set by the black box's input boundary requirement. Satisfying this requirement for each subdomain not only adds overhead but also causes the parallel method to generate a different output mesh volume than that generated by the serial method. The complexity of such a state-of-the-art code requires that it be modified to a non-trivial extent in order to remove these constraints. These results suggest that the parallelization of black-box legacy codes like AFLR may not be practical and instead encourages an approach that is originally designed without such constraints to efficiently leverage the concurrency offered by large-scale architectures.