• Beyond Explicit Transfers: Shared and Managed Memory in OpenMP

      Neth, Brandon; Scogland, Thomas R. W.; Duran, Alejandro; de Supinski, Bronis R.; University of Arizona (Springer International Publishing, 2021-09-08)
      OpenMP began supporting offloading in version 4.0, almost 10 years ago. It introduced the programming model for offload to GPUs or other accelerators that was common at the time, requiring users to explicitly transfer data between host and devices. But advances in heterogeneous computing and programming systems have created a new environment. No longer are programmers required to manage tracking and moving their data on their own. Now, for those who want it, inter-device address mapping and other runtime systems push these data management tasks behind a veil of abstraction. In the context of this progress, OpenMP offloading support shows signs of its age. However, because of its ubiquity as a standard for portable, parallel code, OpenMP is well positioned to provide a similar standard for heterogeneous programming. Towards this goal, we review the features available in other programming systems and argue that OpenMP expand its offloading support to better meet the expectations of modern programmers. The first step, detailed here, augments OpenMP’s existing memory space abstraction with device awareness and a concept of shared and managed memory. Thus, users can allocate memory accessible to different combinations of devices that do not require explicit memory transfers. We show the potential performance impact of this feature and discuss the possible downsides.
    • Comprehensive Degree Based Key Node Recognition Method in Complex Networks

      Xie, Lixia; Sun, Honghong; Yang, Hongyu; Zhang, Liang; School of Information, University of Arizona (Springer International Publishing, 2021-09-17)
      Aiming at the problem of the insufficient resolution and accuracy of the key node recognition methods in complex networks, a Comprehensive Degree Based Key Node Recognition Method (CDKNR) in complex networks is proposed. Firstly, the K-shell method is adopted to layer the network and obtain the K-shell (Ks) value of each node, and the influence of the global structure of the network is measured by the Ks value. Secondly, the concept of Comprehensive Degree (CD) is proposed, and a dynamically adjustable influence coefficient μi is set, and the Comprehensive Degree of each node is obtained by measuring the influence of the local structure of the network through the number of neighboring nodes and sub-neighboring nodes and influence coefficient μi. Finally, the importance of nodes is distinguished according to the Comprehensive Degree. Compared with several classical methods and risk assessment method, the experimental results show that the proposed method can effectively identify the key nodes, and has high accuracy and resolution in different complex networks. In addition, the CDKNR can provide a basis for risk assessment of network nodes, important node protection and risk disposal priority ranking of nodes in the network.
    • On Additive Spanners in Weighted Graphs with Local Error

      Ahmed, Reyan; Bodwin, Greg; Hamm, Keaton; Kobourov, Stephen; Spence, Richard; Department of Computer Science, University of Arizona (Springer International Publishing, 2021-09-20)
      An additive + β spanner of a graph G is a subgraph which preserves distances up to an additive + β error. Additive spanners are well-studied in unweighted graphs but have only recently received attention in weighted graphs [Elkin et al. 2019 and 2020, Ahmed et al. 2020]. This paper makes two new contributions to the theory of weighted additive spanners. For weighted graphs, [Ahmed et al. 2020] provided constructions of sparse spanners with global error β= cW, where W is the maximum edge weight in G and c is constant. We improve these to local error by giving spanners with additive error + cW(s, t) for each vertex pair (s, t), where W(s, t) is the maximum edge weight along the shortest s–t path in G. These include pairwise + (2 + ε) W(·, · ) and + (6 + ε) W(·, · ) spanners over vertex pairs P⊆ V× V on Oε(n| P|1 / 3) and Oε(n| P|1 / 4) edges for all ε> 0, which extend previously known unweighted results up to ε dependence, as well as an all-pairs + 4 W(·, · ) spanner on O~ (n7 / 5) edges. Besides sparsity, another natural way to measure the quality of a spanner in weighted graphs is by its lightness, defined as the total edge weight of the spanner divided by the weight of an MST of G. We provide a + εW(·, · ) spanner with Oε(n) lightness, and a + (4 + ε) W(·, · ) spanner with Oε(n2 / 3) lightness. These are the first known additive spanners with nontrivial lightness guarantees. All of the above spanners can be constructed in polynomial time.