Associative version of the Ramalingam incremental algorithm for the dynamic single-source reachability problem | Vestnik Tomskogo gosudarstvennogo universiteta. Upravlenie, vychislitelnaja tehnika i informatika – Tomsk State University Journal of Control and Computer Science. 2021. № 54. DOI: 10.17223/19988605/54/11

Associative version of the Ramalingam incremental algorithm for the dynamic single-source reachability problem

The paper provides a parallel implementation of the Ramalingam sequential algorithm for dynamically processing a graph with a single source after inserting a new arc. For this purpose, a model of associative (content-addressable) processors of the SIMD type with vertical data processing is used. The study of associative data processing began in the 60s. But studying the associative processing has never taken off, because only a limited amount of memory could be placed on a single die. However, progress in the computer industry and semiconductor technology in recent years has made the associative processing attractive again. Such an architecture best suits for solving problems of non-numeric data processing. In particular, this includes relational algebra, graph theory, seismic data processing. The main advantages of this architecture include data parallelism at the basic level, the use of twodimensional tables as a data structure, and a massively parallel search by content. To model of vertical processing systems the STAR-machine is used. The work of STAR-machine is given by the language STAR. This language contains a group of elementary operations for processing of bit columns, as well as a library of standard procedures for efficient processing of matrix data. Every associative algorithm is represented as a procedure written in the language STAR. Since common associative architecture does not exist yet, there is a problem of the efficient implementing the STAR-machine on real appropriate SIMD architecture. Therefore, the STAR machine was efficiently implemented on graphics accelerators. The Ramalingam algorithm receives as input the graph G, the set of reachable vertices from the source s, the dynamic spanning tree T, and the arc (u, v) inserted to the graph. After performing the Ramalingam algorithm the tree T is updated to the spanning tree on the updated set of reachable vertices. At the beginning, the Ramalingam sequential algorithm adds a new arc (u, v) to graph G. If the vertex u is reachable in the graph G and the vertex v is unreachable, then the arc (u, v) is added to the tree T and the vertex v becomes reachable. After that, all arcs outdoing from vertex v are added to the set Work Sets of processed arcs. Then each arc from this set is updated by analogy with the described method. To implement the Ramalingam algorithm on the STAR-machine, a special data structure is built, that allows one to access data by content. With a parallel implementation of this algorithm, the set of WorkSets was represented as a bit column. At each current iteration, the unreachable vertices entering the processing vertex are included into the Workset. These vertices become reachable, and the corresponding arcs are simultaneously added to the tree T. Note that in the sequential algorithm, the set WorkSet stores a set of processed arcs. While in the associative version, the slice WorkSet stores only unreachable vertices entering the processing vertex. The correctness of this associative version was proved. Using the implementation of the STAR-machine on the GPU, this algorithm was tested on the NVIDIA GEFORCE 920m on graphs with various numbers of reachable vertices (total number of vertices up to 5000, number of arcs up to 90,000). Test results show that the associative dynamic algorithm runs up to ten times faster than the static associative algorithm. Moreover, it performs significantly less iterations than the sequential dynamic algorithm.

Download file
Counter downloads: 112

Keywords

SIMD, GPU, content-addressable memory, flowgraph, dynamic algorithm

Authors

NameOrganizationE-mail
Nepomniaschaya Anna Sh.Institute of Computational Mathematics and Mathematical Geophysics SB RASanep@ssd.sscc.ru
Snytnikova Tatyana V.Institute of Computational Mathematics and Mathematical Geophysics SB RASsnytnikovat@ssd.sscc.ru
Всего: 2

References

Ramalingam G. Bounded Incremental Computation. 1996. V. 1098. P. 149-155.
Sleator D.D., Tarjan R.E. A Data Structure for Dynamic Trees // Journal of Computer and System Sciences. 1983. V. 26. P. 362-391.
Непомнящая А.Ш., Владыко М.А. Сравнение моделей ассоциативного вычисления // Программирование. 1997. № 6. С. 41-50.
Foster C.C. Content Addressable Parallel Processors. New York : John Wiley & Sons, 1976. 233 p.
Nepomniaschaya A.Sh. Associative version of the Ramalingam incremental algorithm for the dynamic all-pairs shortest-path problem // Bulletin of the Novosibirsk Computing Center. Series: Comp. Science. 2016. № 40. P. 75-86.
Nepomniaschaya A.Sh. Efficient parallel implementation of the Ramalingam decremental algorithm for updating the shortest paths subgraph // Computing and Informatics. 2013. V. 32. P. 331-354.
Nepomniaschaya A.Sh. Associative version of the Ramalingam decremental algorithm for the dynamic all-pairs shortest-path problem // Bulletin of the Novosibirsk Computing Center. Series: Comp. Science. 2016. № 39. P. 37-50.
Непомнящая А.Ш. Ассоциативная версия алгоритма Рамалингама для динамической обработки подграфа кратчайших путей после добавления к графу новой дуги // Кибернетика и системный анализ. 2012. № 3. C. 45-57.
Снытникова Т.В. Реализация модели ассоциативных вычислений на GPU: библиотека базовых процедур языка STAR // Вычислительные методы и программирование. Новые вычислительные технологии. 2018. № 19 (1). C. 85-95.
Nepomniaschaya A.Sh. Basic associative parallel algorithms for vertical processing systems // Bulletin of the Novosibirsk Compu ting Center. Series: Comp. Science. 2009. № 9. P. 63-77.
Снытникова Т.В., Непомнящая А.Ш. Решение задач на графах с помощью STAR-машины, реализуемой на графических ускорителях // Прикладная дискретная математика. 2016. № 3 (33). C. 98-115.
Nedaa A. A hardware fast tracker for the ATLAS trigger // Physics of Particles and Nuclei Letters. 2016. V. 13, № 5. P. 527-531.
Nepomniaschaya A.S., Dvoskina M.A. A simple implementation of Dijkstra’s shortest path algorithm on associative parallel processors // Fundamenta Informaticae. IOS Press, 2000. V. 43. P. 227-243.
Potter J.L. Associative Computing: a Programming Paradigm for Massively Parallel Computers. Boston : Perseus Publishing, 1991. 304 р.
Yavits L., Kvatinsky S., Morad A., Ginosar R. Resistive associative processor // IEEE Computer Architecture Letters. 2015. V. 14, № 2. P. 148-151.
Jin R., Hong H., Wang H., Ruan N., Xiang Y. Computing Label-Constraint Reachability in Graph Databases // Proceedings of the 2010 ACM SIGMOD International Conference on Management of Data. New York: Association for Computing Machinery, 2010. P. 123-134.
Hanauer K., Henzinger M., Schulz Ch. Fully Dynamic Single-Source Reachability in Practice: an Experimental Study // Proceedings of the Twenty-Second Workshop on Algorithm Engineering and Experiments, ALENEX, Salt Lake City, 2020. Р. 106-119.
Zhang Q., Su Z. Context-sensitive data-dependence analysis via linear conjunctive language reachability // POPL 2017: Proc. of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages. 2017. P. 344-358.
Reps T. Program analysis via graph reachability // Information and software technology, 1998. V. 40, № 11. P. 701-726.
 Associative version of the Ramalingam incremental algorithm for the dynamic single-source reachability problem | Vestnik Tomskogo gosudarstvennogo universiteta. Upravlenie, vychislitelnaja tehnika i informatika – Tomsk State University Journal of Control and Computer Science. 2021. № 54. DOI: 10.17223/19988605/54/11

Associative version of the Ramalingam incremental algorithm for the dynamic single-source reachability problem | Vestnik Tomskogo gosudarstvennogo universiteta. Upravlenie, vychislitelnaja tehnika i informatika – Tomsk State University Journal of Control and Computer Science. 2021. № 54. DOI: 10.17223/19988605/54/11

Download full-text version
Counter downloads: 561