1 / 39

Massively LDPC Decoding on Multicore Architectures

Massively LDPC Decoding on Multicore Architectures. Present by : fakewen. Authors. Gabriel Falcao Leonel Sousa Vitor Silva. Outline. Introduction BELIEF PROPAGATION DATA STRUCTURES AND PARALLEL COMPUTING MODELS PARALLELIZING THE KERNELS EXECUTION EXPERIMENTAL RESULTS. Outline.

khoi
Download Presentation

Massively LDPC Decoding on Multicore Architectures

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Massively LDPC Decoding onMulticore Architectures Present by : fakewen

  2. Authors • Gabriel Falcao • Leonel Sousa • Vitor Silva

  3. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  4. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  5. Introduction • LDPC decoding on multicore architectures • LDPC decoders were developed on recent multicores, such as off-the-shelf general-purpose x86 processors, Graphics Processing Units (GPUs), and the CELL Broadband Engine (CELL/B.E.).

  6. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  7. BELIEF PROPAGATION • Belief propagation, also known as the SPA, is an iterative algorithm for the computation of joint probabilities

  8. LDPC Decoding • exploit probabilistic relationships between nodes imposed by parity-check conditions that allow inferring the most likely transmitted codeword.

  9. LDPC Decoding(cont.) White Gaussian noise

  10. LDPC Decoding(cont.)

  11. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  12. DATA STRUCTURES AND PARALLEL COMPUTING MODELS • compact data structures to representthe H matrix

  13. Data Structures • separately code the information about H in two independentdata streams, and

  14. remind • rmn :是CNm->BNn • qnm :是BNn->CNm

  15. Parallel Computational Models • Parallel Features of the General-PurposeMulticores • Parallel Features of the GPU • Parallel Features of the CELL/B.E.

  16. Parallel Features of the General-PurposeMulticores • #pragma omp parallel for

  17. Parallel Features of the GPU

  18. Throughput

  19. Parallel Features of the CELL/B.E.

  20. Throughput

  21. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  22. PARALLELIZING THE KERNELS EXECUTION • The Multicores Using OpenMP • The GPU Using CUDA • The CELL/B.E.

  23. The Multicores Using OpenMP

  24. The GPU Using CUDA • Programming the Grid Using a Thread per Node Approach

  25. The GPU Using CUDA(cont.) • Coalesced Memory Accesses

  26. The CELL/B.E. • Small Single-SPE Model(AB C) • Large Single-SPE Model

  27. Why Single-SPE Model • In the single-SPE model, the number of communications between PPE and SPEs is minimum and the PPE is relieved from the costly task of reorganizing data (sorting procedure in Algorithm 4) between data transfers to the SPE.

  28. Outline • Introduction • BELIEF PROPAGATION • DATA STRUCTURES AND PARALLEL COMPUTING MODELS • PARALLELIZING THE KERNELS EXECUTION • EXPERIMENTAL RESULTS

  29. EXPERIMENTAL RESULTS • LDPC Decoding on the General-Purpose x86 Multicores Using OpenMP • LDPC Decoding on the CELL/B.E. • Small Single-SPE Model • Large Single-SPE Model • LDPC Decoding on the GPU Using CUDA

  30. LDPC Decoding on the General-Purpose x86 Multicores Using OpenMP

  31. LDPC Decoding on the CELL/B.E.

  32. LDPC Decoding on the CELL/B.E.(cont.)

  33. LDPC Decoding on the CELL/B.E.(cont.)

  34. LDPC Decoding on the GPU Using CUDA

  35. The end Thank you~

More Related