In this paper, we investigate parallel implementation techniques for network coding. It is known that network coding is useful for both wired and wireless networks and it also mitigates peer/piece selection problems in P2P file sharing systems. However, due to the decoding complexity of network coding, there have been concerns about adoption of network coding in practical network systems and to improve the decoding performance, the exploitation of parallelism has been proposed previously. In this paper, we argue that naive parallelization strategies of network coding may result in unbalanced workload distribution, and thus, limiting performance improvements. We further argue that a higher performance enhancement can be achieved through balanced partitioning methods in parallelized network coding and propose new parallelization techniques for network coding. Our experiments show that on a quad-core processor system, proposed algorithms exhibit up to 5.69 speedup which is better than the linear speedup with the influence of additional cache. Moreover, on an octal-core system, our algorithms even achieve speedup of 8.46 compared to a sequential network coding and 43.3 percent faster than an existing parallelized technique using 1 Mbytes data with 1,024 × 1,024 coefficient matrix size.
|Number of pages||14|
|Journal||IEEE Transactions on Parallel and Distributed Systems|
|Publication status||Published - 2010|
Bibliographical noteFunding Information:
This manuscript is an extended version of a paper which appeared in the Proceedings of Fourth International Conference on Grid and Pervasive Computing (GPC ’09), Geneva, May 2009. This work was supported by the Korea Research Foundation Grant funded by the Korean Government (KRF-2008-313-D00871).
All Science Journal Classification (ASJC) codes
- Signal Processing
- Hardware and Architecture
- Computational Theory and Mathematics