• DocumentCode
    2092501
  • Title

    Parallelized Network Coding with SIMD Instruction Sets

  • Author

    Li, Han ; Huan-yan, Qian

  • Author_Institution
    Sch. of Comput. Sci. & Technol., Anhui Univ., Hefei, China
  • Volume
    1
  • fYear
    2008
  • fDate
    20-22 Dec. 2008
  • Firstpage
    364
  • Lastpage
    369
  • Abstract
    It is a well known result that network coding may achieve better network throughput in certain multicast topologies. However, the practicality of network coding has been questioned, due to its high computational complexity. This paper represents an attempt towards a high performance implementation of network coding. We first propose to implement progressive decoding with Gauss-Jordan elimination, such that blocks can be decoded as they are received. We then employ hardware acceleration with SIMD vector instructions. We also use a careful threading design to take advantage of symmetric multiprocessor (SMP) systems and multicore processors. Our core idea of optimization is the table-based multiplication in GF(28) ,which is able to process a row multiplication of random linear codes by searching previous built product tables with vector using the SSE3 instruction PSHUFB. Our high performance implementation is encapsulated as a C++ class library. On a dual-core Intel T5500 1.66G PC, the encoding bandwidth of our implementations able to reach 42.493 MB/second with 128 blocks of 4 KB each.
  • Keywords
    computational complexity; computer networks; decoding; linear codes; multicast communication; multiprocessing systems; parallel processing; random codes; telecommunication network topology; C++ class library; Gauss-Jordan elimination; PSHUFB; SIMD instruction sets; SIMD vector instructions; SSE3 instruction; computational complexity; dual-core Intel T5500 PC; frequency 1.66 GHz; hardware acceleration; multicast topologies; multicore processors; parallelized network coding; product tables; progressive decoding; random linear codes; symmetric multiprocessor systems; table-based multiplication; Acceleration; Computational complexity; Decoding; Gaussian processes; Hardware; Instruction sets; Network coding; Network topology; Throughput; Vectors; Galois field; Network coding; SIMD; SSE3;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Science and Computational Technology, 2008. ISCSCT '08. International Symposium on
  • Conference_Location
    Shanghai
  • Print_ISBN
    978-1-4244-3746-7
  • Type

    conf

  • DOI
    10.1109/ISCSCT.2008.141
  • Filename
    4731446