Recently, task-based programming models have emerged as a prominent alternative among shared-memory parallel programming paradigms. Inherently asynchronous, these models provide native support for dynamic load balancing and incorporate data flow concepts to selectively synchronize the tasks. However, tasking models are yet to be widely adopted by the HPC community and their effective advantages when applied to non-trivial, real-world HPC applications are still not well comprehended. In this paper, we study the parallelization of a production electromagnetic particle-in-cell (EM-PIC) code for kinetic plasma simulations exploring different strategies using asynchronous task-based models. Our fully asynchronous implementation not only significantly outperforms a conventional, synchronous approach but also achieves near perfect scaling for 48 cores.
翻译:最近,基于任务的方案拟定模式已成为共同和平行方案拟定模式中一个突出的替代模式。这些模式必然地不同步地为动态负载平衡提供本地支持,并纳入数据流概念,以便有选择地同步各项任务。然而,任务拟定模式尚未被高专委社区广泛采用,在适用于非三边、真实世界的HPC应用时,其有效优势仍未得到充分理解。在本文件中,我们研究了电磁电磁电离子(EM-PIC)电动等离子模拟生成代码的平行化,利用非同步任务模型探索不同的战略。我们完全不同步的实施不仅大大超越常规的同步方法,而且接近于48个核心的完美规模。