Abstract
Graph algorithms, such as vertex reachability, transitive closure, and shortest path, are fundamental in many computing applications. We address the question of how to utilize the bit-level parallelism available in hardware, and specifically in FPGAs, to implement such graph algorithms for speedup relative to their software counterparts.
This paper generalizes the idea of a data-structure residing in reconfigurable hardware that, along with support logic and software in a microprocessor, accelerates a core algorithm. We give two examples of this idea. First, we draw parallels to content addressable memories. Second, we show how to extend the idea of mapping the adjacency matrix representation of a graph to a HArdware Graph ARray (HAGAR). We describe HAGAR implementations for graph reachability and shortest path. Reachability is a building block that can further be used to implement transitive closure, connected components, and other high- level graph algorithms. To handle large graphs where such an approach can excel relative to software, we develop a methodology, using FPGA internal small RAM blocks, to store and switch between multiple contexts of a regular architecture. The proposed circuits are implemented within the PAM-Blox module generation environment using Compaq’s PamDC, and run on an FPGA accelerator card.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
W.A. Wulf, S.A. McKee, “Hitting the Memory Wall: Implications of the Obvious,” Computer Architecture News, 23(1):20–24, March 1995.
S.D. Haynes, J. Stone, P.Y.K. Cheung, W. Luk, “Video Image Processing with the Sonic Architecture,” IEEE Computer, April 2000.
M. Flynn, “Operations in an Associative Memory,” PhD Thesis, EE Dept., Purdue Univ., June 1961.
J. Hennessy, D. Patterson, “Computer Architecture: A Quantitative Approach,” Morgan Kaufmann, 1990.
T.B. Pei, C. Zukowski, “Routing Tables: Tries and CAMs,” Proc. Infocom 1991.
E. Komoto, T. Homma, T. Nakamura, “A High-Speed and Compact-Size JPEG Huffman Decoder using CAM,” Symposium on VLSI Circuits, Kyoto, Digest of Technical Papers ch. 61 v pp. 37–X3, 1993.
L. Huelsbergen, “A Representation for Dynamic Graphs in Reconfigurable Hardware and its Application to Fundamental Graph Algorithms,” Proc. ACM Int. Symposium on Field Programmable Gate Arrays (FPGA 2000), Monterey, Feb. 2000
J. Babb, M. Frank, A. Agarwal, “Solving graph problems with dynamic computation structures,. High-Speed Computing, Digital Signal Processing, and Filtering Using Reconfigurable Logic, Proc. SPIE 2914, 1996.
A. Dandalis, A. Mei, V.K. Prasanna, “Domain Specific Mapping for Solving Graph Problems on Reconfigurable Devices,” 6th IEEE Reconfigurable Architectures Workshop (RAW), April 1999.
O. Mencer, “PAM-Blox II: Design and Evaluation of C++ Module Generation for Computing with FPGAs,” IEEE Symposium on Field Programmable Custom Computing Machines, FCCM, Napa Valley, CA, 2002.
P. Bertin, D. Roncin, J. Vuillemin, “Programmable Active Memories: A Performance Assessment,” ACM FPGA Conference, Monterey, Feb. 1992.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mencer, O., Huang, Z., Huelsbergen, L. (2002). HAGAR: Efficient Multi-context Graph Processors. In: Glesner, M., Zipf, P., Renovell, M. (eds) Field-Programmable Logic and Applications: Reconfigurable Computing Is Going Mainstream. FPL 2002. Lecture Notes in Computer Science, vol 2438. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46117-5_94
Download citation
DOI: https://doi.org/10.1007/3-540-46117-5_94
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44108-3
Online ISBN: 978-3-540-46117-3
eBook Packages: Springer Book Archive