The Gaia Astrometric Verification Unit-Global Sphere Reconstruction (AVU-GSR) Parallel Solver aims to find the astrometric parameters for $\sim$10$^8$ stars in the Milky Way, the attitude and the instrumental specifications of the Gaia satellite, and the global parameter $\gamma$ of the post Newtonian formalism. The code iteratively solves a system of linear equations, $\mathbf{A} \times \vec{x} = \vec{b}$, where the coefficient matrix $\mathbf{A}$ is large ($\sim$$10^{11} \times 10^8$ elements) and sparse. To solve this system of equations, the code exploits a hybrid implementation of the iterative PC-LSQR algorithm, where the computation related to different horizontal portions of the coefficient matrix is assigned to separate MPI processes. In the original code, each matrix portion is further parallelized over the OpenMP threads. To further improve the code performance, we ported the application to the GPU, replacing the OpenMP parallelization language with OpenACC. In this port, $\sim$95% of the data is copied from the host to the device at the beginning of the entire cycle of iterations, making the code $compute$ $bound$ rather than $data$$-$$transfer$ $bound$. The OpenACC code presents a speedup of $\sim$1.5 over the OpenMP version but further optimizations are in progress to obtain higher gains. The code runs on multiple GPUs and it was tested on the CINECA supercomputer Marconi100, in anticipation of a port to the pre-exascale system Leonardo, that will be installed at CINECA in 2022.
翻译:Gaia Astrome 校验单位- Global Sphere Reformation (AVU-GSR) 平行解答器旨在找到在银河中10美元10美元8美元的恒星、Gaia卫星的态度和工具规格以及后牛顿正式主义的全球参数$Gamma$的全球参数。代码迭代解了一个线性方程系统, $\mathbf{A}\ times\vec$$x{x} =\vecx$$美元 =comb{b}$, 其中系数矩阵值$\mathbf{A} 值是大(sim$10美元11}\ times 10+8$元素)和稀薄的天文参数。 为了解析这个方程式, 代码利用了20个 PC- LSQR 算法的混合执行, 与不同的水平系数矩阵部分的计算被分配到不同的 MPI 进程。 在原始代码中, 每一个矩阵部分被进一步与 OpenMP prilate rideal rial ride ride ride ride rideal ride ride