skip to main content
10.1145/3443467.3443860acmotherconferencesArticle/Chapter ViewAbstractPublication PageseitceConference Proceedingsconference-collections
research-article

A specification that supports FPGA devices on the TensorFlow framework

Authors Info & Claims
Published:01 February 2021Publication History

ABSTRACT

With the rise of artificial intelligence and machine learning, many applications and services require FPGA support to speed up the training process and improve efficiency. FPGA has its unique advantages including inference; but now TensorFlow only supports CPU and GPU, TPU, does not support FPGA, cannot use FPGA to accelerate specific models, and cannot play the full role of FPGA in TensorFlow. Based on the above problems, this paper proposes a method for efficiently using FPGA in TensorFlow. This method uses TensorFlow's original device management mechanism, adds an abstract method for FPGA devices under the TensorFlow framework, and writes implementation specifications for FPGA operators. Finally, we used OpenCL to build kernels of FPGA devices, took full advantage of the parallel computing advantages of FPGA devices, and used the CNN LeNet5 model and MNIST dataset to conduct corresponding experiments. The experimental results show that the training accuracy of the two devices is basically the same. This paper provides a feasible solution for TensorFlow to use FPGA devices for neural network calculations.

References

  1. M. Abadi, M. Isard, and D. G. Murray (2017). A Computational Model for TensorFlow An Introduction, 4th ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming (ARRAY), 1--7.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. S. Mouselinos, V. Leon, S. Xydis, D. Soudris and K. Pekmestzi (2019). TF2FPGA: A Framework for Projecting and Accelerating Tensorflow CNNs on FPGA Platforms, In Proceedings of the 8th International Conference on Modern Circuits and Systems Technologies (MOCAST). IEEE, New York, NY, USA, 4 pages.Google ScholarGoogle ScholarCross RefCross Ref
  3. D. D. Kalamkar, K. Banerjee, S. Srinivasan, S. Sridharan, E. Georganas, M. E. Smorkalov, C. Xu and A. Heinecke (2019). Training Google Neural Machine Translation on an Intel CPU Cluster, IEEE International Conference on Cluster Computing (IEEE CLUSTER), 193--202.Google ScholarGoogle ScholarCross RefCross Ref
  4. Z. Y. Chen, L. Luo, W. Quan, S. Yang, J. Yu, M. Wen and C. Y. Zhang (2018). Multiple CNN-based Tasks Scheduling across Shared GPU Platform in Research and Development Scenarios, 20th IEEE International Conference on High Performance Computing and Communications (HPCC), 578--585.Google ScholarGoogle ScholarCross RefCross Ref
  5. F. F. dos Santos, P. F. Pimenta, C. Lunardi, L. Draghetti, L. Carro, D. Kaeli, and P. Rech (2019). Analyzing and Increasing the Reliability of Convolutional Neural Networks on GPUs, IEEE Transactions on Reliability, 68: 663--677.Google ScholarGoogle ScholarCross RefCross Ref
  6. Q. Liu, T. Liang, Z. Huang, and V. Dinavahi(2019). Real-Time FPGA-Based Hardware Neural Network for Fault Detection and Isolation in More Electric Aircraft, IEEE ACCESS, 159831--159841.Google ScholarGoogle Scholar
  7. Y. J. Guan, H. Liang, N. Y. Xu, W. Q. Wang, S. S. Shi, X. Chen, G. Y. Sun, W. Zhang and J. Cong(2018). FP-DNN: An Automated Framework for Mapping Deep Neural Networks onto FPGAs with RTL-HLS Hybrid Templates, 25th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM), 152--159.Google ScholarGoogle Scholar
  8. H. Q. Zeng, C. Zhang, and V. Prasanna(2017). Fast Generation of High Throughput Customized Deep Learning Accelerators on FPGAs, In Proceedings of International Conference on Reconfigurable Computing and FPGAs (ReConFig). IEEE, New York, NY, USA, 8 pages.Google ScholarGoogle Scholar
  9. U. Aydonat, S. O'Connell, D. Capalija, A. C. Ling, and G. R. Chiu, "An opencl™ deep learning accelerator on arria 10," in Proceedings of the 2017 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays. ACM, 2017, pp. 55--64Google ScholarGoogle Scholar

Index Terms

  1. A specification that supports FPGA devices on the TensorFlow framework

    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
    • Published in

      cover image ACM Other conferences
      EITCE '20: Proceedings of the 2020 4th International Conference on Electronic Information Technology and Computer Engineering
      November 2020
      1202 pages
      ISBN:9781450387811
      DOI:10.1145/3443467

      Copyright © 2020 ACM

      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: 1 February 2021

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

      Acceptance Rates

      EITCE '20 Paper Acceptance Rate214of441submissions,49%Overall Acceptance Rate508of972submissions,52%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader