GPU Accelerated Parallel Algorithm of Sliding-Window Belief Propagation for LDPC Codes

  • Bowei Shan
  • Yong FangEmail author
Part of the following topical collections:
  1. Special Issue on Emerging Technology for Software Defined Network Enabled Internet of Things


Low-Density Parity-Check (LDPC) codes are widely used from hard-disk systems to satellite communications. Sliding-Window Belief Propagation (SWBP) is an effective decoding algorithm of LDPC codes for time-varying channels and demonstrates near-optimal performance in many experiments. However, to adaptively find the best window size, SWBP may need very long computing time. Inspired by Graphics Processing Unit and Compute Unified Device Architecture, in this paper we propose a novel method to address the issue of SWBP’s computing complexity. Different from sequential SWBP, we simultaneously compute the metrics of different window sizes in parallel, which enables us to quickly find the best window size. We use coalesced memory access to accelerate reading and writing processes. Registers and shared memory are also considered in our program to reduce memory latency. On the GTX 1080Ti platform, experimental results show that parallel SWBP can achieve about 14 \(\times \) to 118 \(\times \) speedup ratio for different regular LDPC codes, and about 8 \(\times \) to 120 \(\times \) speedup ratio for different irregular LDPC codes, respectively. According to the trend of our experiments, we strongly believe that, as the length of LDPC codes increases, a higher speedup ratio can be obtained.





We would like to thank colleagues in School of Information Engineering, Chang’an University, for their useful suggestions.


  1. 1.
    Gallager, R.G.: Low-density parity-check codes. IRE Trans. Inf. Theory 8(1), 21–28 (1962)MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Mackay, D.J.C., Neal, R.M.: Near shannon limit performance of low density parity check codes. Electron. Lett. 32(6), 457–458 (1997)CrossRefGoogle Scholar
  3. 3.
    Fang, Y.: Ldpc-based lossless compression of nonstationary binary sources using sliding-window belief propagation. IEEE Trans. Commun. 60(11), 3161–3166 (2012)CrossRefGoogle Scholar
  4. 4.
    Chang, C.C., Chang, Y.L., Huang, M.Y., Huang, B.: Accelerating regular LDPC code decoders on GPUS. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 4(3), 653–659 (2011)CrossRefGoogle Scholar
  5. 5.
    Dai, Y., Fang, Y., Yang, L., Jeon, G.: Graphics processing unit-accelerated joint-bitplane belief propagation algorithm in DSC. J. Supercomput. 72(6), 2351–2375 (2016)CrossRefGoogle Scholar
  6. 6.
    Pai, Y.S., Shen, Y.C., Wu, J.L.: High efficient distributed video coding with parallelized design for LDPCA decoding on CUDA based GPGPU. J. Vis. Commun. Image Represent. 23(1), 63–74 (2012)CrossRefGoogle Scholar
  7. 7.
    Park, J.Y., Chung, K.S.: Parallel LDPC decoding using CUDA and OPENMP. Eurasip J. Wirel. Commun. Netw. 2011(1), 1–8 (2011)CrossRefGoogle Scholar
  8. 8.
    Falcao, G., Sousa, L., Silva, V.: Massively LDPC decoding on multicore architectures. IEEE Trans. Parallel Distrib. Syst. 22(2), 309–322 (2010)CrossRefGoogle Scholar
  9. 9.
    NVIDIA: cublas. Accessed 10 Apr 2018
  10. 10.
    Thrust. Accessed 10 Apr 2018
  11. 11.
    Source codes. Accessed 10 Apr 2018

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.School of Information EngineeringChang’an UniversityXi’anChina

Personalised recommendations