## 1 Introduction
To overcome this drawback, the essentially non-oscillatory (ENO) [18] and weighted ENO (WENO) [19] limiting procedures were introduced. Both of them can maintain high-order accuracy in smooth regions but essentially suppress spurious oscillations near discontinuities. The first attempt of making such limiters suitable for unstructured meshes was to incorporate a WENO reconstruction procedure into high-order FV schemes [20]. Similar ideas were later adopted for DG methods [21; 22] at the cost of sacrificing the compactness of DG methods. Compact versions of WENO limiters suitable for DG methods only occurred in the last ten years [23; 24; 25] and most of them are only formulated for two-dimensional meshes. In Section 2.2, we will give a unified formulation of some compact WENO limiters for both two- and three-dimensional RKDG methods on unstructured meshes. The two-dimensional version of the algorithms described in Sections 2.1-2.3 has been proposed for nearly ten years, but few three-dimensional or real engineering applications have been reported so far. One reason is that the amount of computational resources cost by each cell grows rapidly as the order of accuracy or the dimension of space increases. Fortunately, both RKDG methods and WENO limiters use highly compact stencils and there is no global algebraic equation to be solved (as in FD and FV schemes). Based on these facts, parallel computing using domain decomposition can be applied for accelerating computation in a very natural way. Currently, we have not seen any parallel implementation of RKDG methods with WENO limiters for three-dimensional unstructured meshes. However, there are some frequently referenced works existing in the literature, which measured the parallel efficiencies of their DG methods. [PERSON], [PERSON] and [PERSON] [26] performed some tests of their one- and two-dimensional DG solvers for linear scalar problems on uniform structured meshes. They achieved excellent parallel efficiencies, which were over 99% for pure solution time (without I/O) and at least 89% for total running time. [PERSON], [PERSON] and [PERSON] [27] tested their DG solvers for linear conservation laws on both structured (uniform) and unstructured (\(hp\)-adaptive) meshes. They obtained nearly optimal speedups when the number of interior elements is sufficiently larger than that of subdomain boundary elements. Recently, [PERSON] et al. [28] implemented their DG solver for two-dimensional Navier-Stokes equations using MPI/OpenMP hybrid parallelism and achieved good scalability on a uniform mesh with only quadrilateral elements. None of them show the parallel performance of DG solvers on three-dimensional unstructured meshes. In this article, we incorporate unstructured mesh partitioning and message passing into the algorithms and implement them on top of publicly available libraries to support parallel execution. To partition a three-dimensional unstructured mesh, we use the application programming interface (API) provided by the Metis library [29]. To send and receive messages, we use the message passing interface (MPI) [30], which is the de facto industry standard of distributed memory parallelization. We will give the details of these parallel programming techniques in Section 2.4.