Skip to main content

Research of Hardware Implementations Efficiency of Sorting Algorithms Created by Using Xilinx’s High-Level Synthesis Tool

  • Conference paper
  • First Online:
Supercomputing (RuSCDays 2020)

Abstract

The article describes results of our research of hardware implementation efficiency of sorting algorithms created by using of Xilinx’s High-Level Synthesis tools, the Vivado HLS package, and FPGAs. The term efficiency, used in the research, defined as a function of the performance, estimated in time for sorting a random generated array, and hardware “cost”, estimated in utilized FPGA resources. In the research, a simulation modeling and a comparative analysis was carried out for the wide range of sorting algorithms implemented on a universal processor and on the Xilinx’s FPGAs. The research results prove that hardware implementations of the sorting algorithms, synthesized by Xilinx HLS tool, do not always provide higher performance comparing with the implementations of the same algorithms on a universal processor. The article shows that the hardware implementation of the Merge sort algorithm, created by Xilinx’s HLS tool, can speed up, comparing with software implementation, the process of sorting arrays of small and medium size.

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 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Antonov, A., Zaborovskij, V., Kalyaev, I.: The architecture of a reconfigurable heterogeneous distributed supercomputer system for solving the problems of intelligent data processing in the era of digital transformation of the economy. Cybersecur. Issues 33(5), 2–11 (2019). https://doi.org/10.21681/2311-3456-2019-5-02-11

    Article  Google Scholar 

  2. Mantovani, F., Calore, E.: Performance and power analysis of HPC workloads on heterogeneous multi-node clusters. Low Power Electron. Appl. 8(2), 13–27 (2018). https://doi.org/10.3390/jlpea8020013

    Article  Google Scholar 

  3. Usman Ashraf, M., Alburaei Eassa, F., Ahmad Albeshri, A., Algarni, A.: Performance and power efficient massive parallel computational model for HPC heterogeneous exascale systems. IEEE Access 6, 23095–23107 (2018). https://doi.org/10.1109/ACCESS.2018.2823299

    Article  Google Scholar 

  4. Kobayashi, R., Oobata, Y., Fujita, N., Yamaguchi, Y., Boku, T.: OpenCL-ready high speed FPGA network for reconfigurable high performance computing, In: Proceedings of International Conference on High Performance Computing in Asia-Pacific, HPC Asia, pp. 192–201 (2018). https://doi.org/10.1145/3149457.3149479

  5. Antonov, A., Zaborovskij, V., Kisilev, I.: Specialized reconfigurable computers in network-centric supercomputer systems. High Availab. Syst. 14(3), 57–62 (2018). https://doi.org/10.18127/j20729472-201803-09

    Article  Google Scholar 

  6. Dongarra, J., Gottlieb, S., Kramer, W.: Race to exascale. Comput. Sci. Eng. 21(1), 4–5 (2019). https://doi.org/10.1109/MCSE.2018.2882574

  7. Haidar, A., Jagode, H., Vaccaro, P., YarKhan, A., Tomov, S., Dongarra, J.: Investigating power capping toward energy-efficient scientific applications. Concurr. Comput. Pract. Exp. 1–14 (2018). https://doi.org/10.1002/cpe.4485

  8. Le Fèvre, V., Herault, T., Robert, Y., Bouteiller, A., Hori, A., Bosilca, J.G., Dongarra, J.: Comparing the performance of rigid, moldable and grid-shaped applications on failure-prone HPC platforms. Parallel Comput. 85, 1–12 (2019). https://doi.org/10.1016/j.parco.2019.02.002

    Article  Google Scholar 

  9. IDE Vivado HLS. https://www.xilinx.com/video/hardware/vivado-hls-tool-overview.html. Accessed 19 April 2020

  10. Intel HLS compiler. https://www.intel.com/content/www/us/en/software/programmable/quartus-prime/hls-compiler.html?wapkw=HLS. Accessed 19 April 2020

  11. Catapult HLS. https://www.mentor.com/hls-lp/catapult-high-level-synthesis/. Accessed 19 April 2020

  12. Angermeier, J., Sibirko, E., Wanka, R., Teich, J.: Bitonic sorting on dynamically reconfigurable architectures. In: 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum, Shanghai, pp. 314–317, (2011). https://doi.org/10.1109/ipdps.2011.164

  13. Mihhailov, D., Sklyarov, V., Skliarova I., Sudnitson, A.: Parallel FPGA-based implementation of recursive sorting algorithms, In: 2010 International Conference on Reconfigurable Computing and FPGAs, Quintana Roo, pp. 121–126, (2010). https://doi.org/10.1109/reconfig.2010.30

  14. Janarbek M.I., et al.: Resolve: generation of high-performance sorting architectures from high-level synthesis. In: Proceedings of the 2016 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA ’16), pp. 195–204, New York, NY, USA (2016). https://doi.org/10.1145/2847263.2847268

  15. Sorting Methods. https://www.mathworks.com/matlabcentral/fileexchange/45125-sorting-methods?focused=3805900&tab=function. Accessed 19 April 2020

  16. Vitis_Libraries. https://github.com/Xilinx/Vitis_Libraries. Accessed 19 April 2020

  17. Comb sort. https://www.geeksforgeeks.org/comb-sort/. Accessed 19 April 2020

  18. Gnome sort. http://rosettacode.org/wiki/Sorting_algorithms/Gnome_sort. Accessed 19 April 2020

  19. Merge sort. http://rosettacode.org/wiki/Sorting_algorithms/Merge_sort. Accessed 19 April 2020

  20. Heap sort. http://rosettacode.org/wiki/Sorting_algorithms/Heapsort. Accessed 19 April 2020

  21. Binary tree. https://www.geeksforgeeks.org/counting-sort/. Accessed 19 April 2020

  22. Bucket sort, Web: https://en.wikipedia.org/wiki/Bucket_sort. Accessed 19 April 2020

  23. Counting sort. https://www.geeksforgeeks.org/counting-sort/. Accessed 19 April 2020

  24. Bictonic sorter. https://en.wikipedia.org/wiki/Bitonic_sorter. Accessed 19 April 2020

Download references

Acknowledgements

The reported study was funded by RFBR, project number 18-29-03250.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alexander Antonov .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Antonov, A., Besedin, D., Filippov, A. (2020). Research of Hardware Implementations Efficiency of Sorting Algorithms Created by Using Xilinx’s High-Level Synthesis Tool. In: Voevodin, V., Sobolev, S. (eds) Supercomputing. RuSCDays 2020. Communications in Computer and Information Science, vol 1331. Springer, Cham. https://doi.org/10.1007/978-3-030-64616-5_39

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-64616-5_39

  • Published:

  • Publisher Name: Springer, Cham

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics