Skip to main content

The Compiler of DFC: A Source Code Converter that Transform the Dataflow Code to the Multi-threaded C Code

  • Conference paper
  • First Online:
Parallel and Distributed Computing, Applications and Technologies (PDCAT 2020)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12606))

  • 1036 Accesses

Abstract

The working principle of DFC compiler is introduced in this article. DFC is a grammatical extension of standard C language, with special DF function which describe the dependence of computing DAG. DFC compiler, dfcc, is used to convert the DFC source codes to standard C codes with the assistance of multi-threaded library. The lexical rules and grammatical rules are used to setup the AST of DFC codes, and then it is converted to the AST of standard C without DF function nodes. The derived AST is printed into a text file, a normal C file, and finally is processed by GCC to obtain the executable file. The experiment gives some demonstration of that converting details, and the memory footprint is studied to show an ideal scalability.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Sterling, T., Brodowicz, M., Anderson, M.: High Performance Computing: Modern Systems and Practices, pp. 616–618. Morgan Kaufmann, Cambridge (2018)

    Google Scholar 

  2. Pell, O., Averbukh, V.: Maximum performance computing with dataflow engines. Comput. Sci. Eng. 14(4), 98–103 (2012). https://doi.org/10.1109/MCSE.2012.78

    Article  Google Scholar 

  3. Burger, D., et al.: The TRIPS team, scaling to the end of silicon with EDGE architectures. IEEE Comput. 37(7), 44–55 (2004). https://doi.org/10.1109/MC.2004.65

    Article  Google Scholar 

  4. Gebhart, M., et al.: An evaluation of the TRIPS computer system. SIGPLAN Not. 44(3), 1–2 (2009). https://doi.org/10.1145/1508284.1508246

    Article  Google Scholar 

  5. Giorgi, R.: Teraflux: exploiting dataflow parallelism in teradevices. In: Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture, CF 2012, ACM, 2012. New York, NY, USA (2012). https://doi.acm.org/10.1145/2212908.2212959.

  6. Portero, A., Yu, Z., Giorgi, R.: Teraflux: exploiting tera-device computing challenges. Procedia CS 7, 146–147 (2011)

    Google Scholar 

  7. Ursutiu,D., Samoila, C., Jinga, V.: Creative developments in LabVIEW student training: (Creativity laboratory — LabVIEW academy). In: 2017 4th Experiment@International Conference (exp.at 2017), Faro, pp. 309–312 (2017). https://doi.org/10.1109/EXPAT.2017.7984399

  8. Chavarrias, M., Pescador, F., Juárez, E., Garrido, M.J.: An automatic tool for the static distribution of actors in RVC-CAL based multicore designs, Design of Circuits and Integrated Systems, Madrid, pp. 1–6 (2014)

    Google Scholar 

  9. Lin, H., Lin, Z., Diaz, J.M., Li, M., An, H., Gao, G.R.: swFLOW: a dataflow deep learning framework on Sunway TaihuLight Supercomputer. In: 2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS), Zhangjiajie, China, pp. 2467–2475 (2019)

    Google Scholar 

  10. Du, Z., Zhang, J., Sha, S., Luo, Q.: Implementing the matrix multiplication with DFC on Kunlun small scale computer. In: 2019 20th International Conference on Parallel and Distributed Computing, Applications and Technologies (PDCAT), Gold Coast, Australia, pp. 115–120 (2019)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Qiuming Luo .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Du, Z., Zhang, J., Li, J., Du, H., Shu, J., Luo, Q. (2021). The Compiler of DFC: A Source Code Converter that Transform the Dataflow Code to the Multi-threaded C Code. In: Zhang, Y., Xu, Y., Tian, H. (eds) Parallel and Distributed Computing, Applications and Technologies. PDCAT 2020. Lecture Notes in Computer Science(), vol 12606. Springer, Cham. https://doi.org/10.1007/978-3-030-69244-5_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-69244-5_16

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-69243-8

  • Online ISBN: 978-3-030-69244-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics