skip to main content
research-article

FPGA Acceleration of Probabilistic Sentential Decision Diagrams with High-level Synthesis

Published:11 March 2023Publication History
Skip Abstract Section

Abstract

Probabilistic Sentential Decision Diagrams (PSDDs) provide efficient methods for modeling and reasoning with probability distributions in the presence of massive logical constraints. PSDDs can also be synthesized from graphical models such as Bayesian networks (BNs) therefore offering a new set of tools for performing inference on these models (in time linear in the PSDD size). Despite these favorable characteristics of PSDDs, we have found multiple challenges in PSDD’s FPGA acceleration. Problems include limited parallelism, data dependency, and small pipeline iterations. In this article, we propose several optimization techniques to solve these issues with novel pipeline scheduling and parallelization schemes. We designed the PSDD kernel with a high-level synthesis (HLS) tool for ease of implementation and verified it on the Xilinx Alveo U250 board. Experimental results show that our methods improve the baseline FPGA HLS implementation performance by 2,200X and the multicore CPU implementation by 20X. The proposed design also outperforms state-of-the-art BN and Sum Product Network (SPN) accelerators that store the graph information in memory.

REFERENCES

  1. [1] Berkeley. 2008. BEE3 (Berkeley Emulation Engine). Retrieved 24 July, 2022 from https://www.microsoft.com/en-us/research/project/bee3/.Google ScholarGoogle Scholar
  2. [2] Bova Simone. 2016. SDDs are exponentially more succinct than OBDDs. In Proceedings of the AAAI Conference on Artificial Intelligence. AAAI Press, 929935.Google ScholarGoogle ScholarCross RefCross Ref
  3. [3] Cai Ruizhe, Ren Ao, Liu Ning, Ding Caiwen, Wang Luhao, Qian Xuehai, Pedram Massoud, and Wang Yanzhi. 2018. VIBNN: Hardware acceleration of Bayesian neural networks. ACM SIGPLAN Notices 53, 2 (2018), 476488.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. [4] Chan Hei and Darwiche Adnan. 2006. On the robustness of most probable explanations. In Proceedings of the 22nd Conference in Uncertainty in Artificial Intelligence.Google ScholarGoogle Scholar
  5. [5] Chavira Mark and Darwiche Adnan. 2008. On probabilistic inference by weighted model counting. Artificial Intelligence 172, 6 (2008), 772799.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. [6] Chavira Mark, Darwiche Adnan, and Jaeger Manfred. 2006. Compiling relational Bayesian networks for exact inference. International Journal of Approximate Reasoning 42, 1–2 (2006), 420.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. [7] Chen X., Tan H., Chen Y., He B., Wong W., and Chen D.. 2021. ThunderGP: HLS-based graph processing framework on FPGAs. In Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. 6980.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] Choi Arthur, Broeck Guy Van den, and Darwiche Adnan. 2015. Tractable learning for structured probability spaces: A case study in learning preference distributions. In Proceedings of the 24th International Joint Conference on Artificial Intelligence. AAAI Press, 28612868.Google ScholarGoogle Scholar
  9. [9] Choi Arthur, Shen Yujia, and Darwiche Adnan. 2017. Tractability in structured probability spaces. In Proceedings of the Advances in Neural Information Processing Systems 30: Annual Conference on Neural Information Processing Systems. 34773485.Google ScholarGoogle Scholar
  10. [10] Choi Arthur, Tavabi Nazgol, and Darwiche Adnan. 2016. Structured features in naive bayes classification. In Proceedings of the 30th AAAI Conference on Artificial Intelligence. AAAI Press, 32333240.Google ScholarGoogle ScholarCross RefCross Ref
  11. [11] Choi Young-kyu and Cong Jason. 2018. HLS-based optimization and design space exploration for applications with variable loop bounds. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design. IEEE, 18.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Cong J., Jiang W., Liu B., and Zou Y.. 2011. Automatic memory partitioning and scheduling for throughput and power optimization. ACM Transactions on Design Automation of Electronic Systems 16, 2 (2011), 125.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. [13] Jason Cong, Bin Liu, Stephen Neuendorffer, Juanjo Noguera, Kees Vissers, and Zhiru Zhang. 2011. High-level synthesis for FPGAs: From prototyping to deployment. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 30, 4(2011), 473491.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. [14] Darwiche Adnan. 2003. A differential approach to inference in Bayesian networks. Journal of the ACM 50, 3 (2003), 280305.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. [15] Darwiche Adnan. 2009. Modeling and Reasoning with Bayesian Networks. Cambridge University Press.Google ScholarGoogle ScholarCross RefCross Ref
  16. [16] Darwiche Adnan. 2011. SDD: A new canonical representation of propositional knowledge bases. In Proceedings of the 22nd International Joint Conference on Artificial Intelligence. 819826.Google ScholarGoogle Scholar
  17. [17] Darwiche Adnan. 2020. Three modern roles for logic in AI. In Proceedings of the 39th ACM SIGMOD-SIGACT-SIGAI Symposium on Principles of Database Systems.ACM, 229243.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. [18] Darwiche Adnan. 2022. Tractable boolean and arithmetic circuits. In Proceedings of the Neuro-symbolic Artificial Intelligence: The State of the Art, Hitzler Pascal and Sarker Md Kamruzzaman (Eds.), Vol. 342, Frontiers in Artificial Intelligence and Applications. IOS Press, Chapter 6.Google ScholarGoogle Scholar
  19. [19] Geist Johannes, Rozier Kristin Y., and Schumann Johann. 2014. Runtime observer pairs and bayesian network reasoners on-board FPGAs: Flight-certifiable system health management for embedded systems. In Proceedings of the International Conference on Runtime Verification.Springer, 215230.Google ScholarGoogle ScholarCross RefCross Ref
  20. [20] Graham R. L.. 1966. Bounds for certain multiprocessing anomalies. Bell System Technical Journal 45, 9 (1966), 15631581.Google ScholarGoogle ScholarCross RefCross Ref
  21. [21] Guo L., Chi Y., Wang J., Lau J., Qiao W., Ustun E., Zhang Z., and Cong J.. 2021. AutoBridge: Coupling coarse-grained floorplanning and pipelining for high-frequency HLS design on multi-die FPGAs. In Proceedings of the ACM/SIGDA International Symposium on Field-Programmable Gate Arrays.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Kisa Doga, Broeck Guy Van den, Choi Arthur, and Darwiche Adnan. 2014. Probabilistic sentential decision diagrams. In Proceedings of the 14th Conference on the Principles of Knowledge Representation and Reasoning. AAAI Press.Google ScholarGoogle Scholar
  23. [23] Koller Daphne and Friedman Nir. 2009. Probabilistic Graphical Models - Principles and Techniques. MIT Press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. [24] Kruppe Hanna, Sommer Lukas, Weber Lukas, Oppermann Julian, Axenie Cristian, and Koch Andreas. 2021. Efficient Operator Sharing Modulo Scheduling for Sum-Product Network Inference on FPGAs. Retrieved 24 July, 2022 from https://www.esa.informatik.tu-darmstadt.de/assets/publications/materials/2021/2021_SAMOS_HK.pdf.Google ScholarGoogle Scholar
  25. [25] Lin Mingjie, Lebedev Ilia, and Wawrzynek John. 2010. High-throughput Bayesian computing machine with reconfigurable hardware. In Proceedings of the 18th Annual ACM/SIGDA International Symposium on Field Programmable Gate Arrays. 7382.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. [26] Murphy Kevin P.. 2012. Machine Learning - A Probabilistic Perspective. MIT Press.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. [27] Pan Xie and Jinsong Yu. 2017. Diagnosis via arithmetic circuit compilation of Bayesian network and calculation on FPGA. In Proceedings of the 13th IEEE International Conference on Electronic Measurement & Instruments. 3541.Google ScholarGoogle ScholarCross RefCross Ref
  28. [28] Pearl Judea. 1989. Probabilistic Reasoning in Intelligent Systems - Networks of Plausible Inference. Morgan Kaufmann.Google ScholarGoogle Scholar
  29. [29] Pipatsrisawat Knot and Darwiche Adnan. 2008. New compilation languages based on structured decomposability. In Proceedings of the 23rd AAAI Conference on Artificial Intelligence. AAAI Press, 517522.Google ScholarGoogle Scholar
  30. [30] Poon Hoifung and Domingos Pedro M.. 2011. Sum-product networks: A new deep architecture. In Proceedings of the 27th Conference on Uncertainty in Artificial Intelligence. AUAI Press, 337346.Google ScholarGoogle ScholarCross RefCross Ref
  31. [31] Rahman Tahrima, Kothalkar Prasanna, and Gogate Vibhav. 2014. Cutset networks: A simple, tractable, and scalable approach for improving the accuracy of chow-liu trees. In Proceedings of the Machine Learning and Knowledge Discovery in Databases - European Conference. Springer, 630645.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. [32] Roy Amitabha, Mihailovic Ivo, and Zwaenepoel Willy. 2013. X-stream: Edge-centric graph processing using streaming partitions. In Proceedings of the 24th ACM Symposium on Operating Systems Principles. 472488.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. [33] Shah N., Olascoaga L., Meert W., and Verhelst M.. 2020. Acceleration of probabilistic reasoning through custom processor architecture. In Proceedings of the Design, Automation and Test in Europe Conference and Exhibition. 322325.Google ScholarGoogle ScholarCross RefCross Ref
  34. [34] Shah Nimish, Olascoaga Laura I. Galindez, Meert Wannes, and Verhelst Marian. 2020. Acceleration of probabilistic reasoning through custom processor architecture. In Proceedings of the Design, Automation and Test in Europe Conference and Exhibition. IEEE, 322325.Google ScholarGoogle ScholarCross RefCross Ref
  35. [35] Shen Yujia, Choi Arthur, and Darwiche Adnan. 2016. Tractable operations for arithmetic circuits of probabilistic models. In Proceedings of the Advances in Neural Information Processing Systems. 39363944.Google ScholarGoogle Scholar
  36. [36] Shen Yujia, Choi Arthur, and Darwiche Adnan. 2018. Conditional PSDDs: Modeling and learning with modular knowledge. In Proceedings of the 32nd AAAI Conference on Artificial Intelligence. AAAI Press, 64336442.Google ScholarGoogle ScholarCross RefCross Ref
  37. [37] Sommer Lukas, Oppermann Julian, Molina Alejandro, Binnig Carsten, Kersting Kristian, and Koch Andreas. 2018. Automatic mapping of the sum-product network inference problem to FPGA-based accelerators. In Proceedings of the IEEE 36th International Conference on Computer Design. 350357.Google ScholarGoogle ScholarCross RefCross Ref
  38. [38] Sommer Lukas, Weber Lukas, Kumm Martin, and Koch Andreas. 2020. Comparison of arithmetic number formats for inference in sum-product networks on FPGAs. In Proceedings of the IEEE 28th Annual International Symposium on Field-Programmable Custom Computing Machines. 7583.Google ScholarGoogle ScholarCross RefCross Ref
  39. [39] Xilinx. 2020. Vitis Unified Software Platform. Retrieved 24 July, 2022 from https://www.xilinx.com/products/design-tools/vitis/vitis-platform.html.Google ScholarGoogle Scholar
  40. [40] Xilinx. 2020. Vivado High-Level Synthesis (UG902). Retrieved 24 July, 2022 from https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_2/ug902-vivado-high-level-synthesis.pdf.Google ScholarGoogle Scholar
  41. [41] Xilinx. 2021. Alveo U250 Data Center Accelerator Card. Retrieved 24 July, 2022 from https://www.xilinx.com/products/boards-and-kits/alveo/u250.html.Google ScholarGoogle Scholar
  42. [42] Xilinx. 2021. UltraScale Architecture Memory Resources. Retrieved 24 July, 2022 from https://www.xilinx.com/support/documentation/user_guides/ug573-ultrascale-memory-resources.pdf.Google ScholarGoogle Scholar
  43. [43] Zermani S., Dezan C., Chenini H., Diguet J., and Euler R.. 2015. FPGA implementation of Bayesian network inference for an embedded diagnosis. In Proceedings of the 2015 IEEE Conference on Prognostics and Health Management. 110.Google ScholarGoogle ScholarCross RefCross Ref
  44. [44] Zhou S., Kannan R., Prasanna V. K., Seetharaman G., and Wu Q.. 2019. Hitgraph: High-throughput graph processing framework on FPGA. IEEE Transactions on Parallel and Distributed Systems 30, 10 (2019), 22492264.Google ScholarGoogle ScholarCross RefCross Ref
  45. [45] Zierke Stephanie and Bakos Jason D.. 2010. FPGA acceleration of the phylogenetic likelihood function for Bayesian MCMC inference methods. BMC Bioinformatics 11, 1 (2010), 112.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. FPGA Acceleration of Probabilistic Sentential Decision Diagrams with High-level Synthesis

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM Transactions on Reconfigurable Technology and Systems
        ACM Transactions on Reconfigurable Technology and Systems  Volume 16, Issue 2
        June 2023
        451 pages
        ISSN:1936-7406
        EISSN:1936-7414
        DOI:10.1145/3587031
        • Editor:
        • Deming Chen
        Issue’s Table of Contents

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 11 March 2023
        • Online AM: 6 September 2022
        • Accepted: 19 August 2022
        • Revised: 24 July 2022
        • Received: 20 December 2021
        Published in trets Volume 16, Issue 2

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Author Tags

        Qualifiers

        • research-article
      • Article Metrics

        • Downloads (Last 12 months)395
        • Downloads (Last 6 weeks)39

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Full Text

      View this article in Full Text.

      View Full Text

      HTML Format

      View this article in HTML Format .

      View HTML Format
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!