Title :
Sparse matrix-vector multiply on the Texas Instruments C6678 Digital Signal Processor
Author :
Yang Gao ; Bakos, Jason D.
Author_Institution :
Dept. of Comput. Sci. & Eng., Univ. of South Carolina, Columbia, SC, USA
Abstract :
The Texas Instruments (TI) C6678 “Shannon” is TI´s most recently-released Digital Signal Processor (DSP). Although its original purpose was voice and video encoding and decoding, it may have the potential to become a practical coprocessor for scientific computing. In this paper, we evaluate the C6678 in terms of its programming methodology, performance, and power efficiency. As a case study, we implemented a sparse matrix vector multiply (SpMV) kernel and used it to perform a comparative study against the NVIDIA Kepler GK104 and GK106 Graphical Processor Units. On the DSP, we take advantage of many of the C6678´s features, including its VLIW and SIMD instruction set architecture, program-controlled scratchpad memory, and direct memory access (DMA) controller. We found that the DSP is unable to outperform the GPUs in raw performance but can achieve roughly equal power efficiency in Gflops/Watt. This is more impressive when considering that the DSP is manufactured in a 45 nm process while the GPUs are manufactured in a 28 nm process. We believe that subsequent DSPs, when manufactured in a modern fabrication process, may be more competitive with GPUs in power efficiency. We also found that, for this kernel, the DSP is able to achieve higher utilization of both its peak memory bandwidth and its functional units as compared with the GPUs. In this paper we describe our kernel and the programming techniques required to optimize its performance.
Keywords :
coprocessors; digital signal processing chips; graphics processing units; instruction sets; multiplying circuits; parallel processing; sparse matrices; storage management; vectors; DMA controller; DSP; GPU; NVIDIA Kepler GK104; NVIDIA Kepler GK106; SIMD instruction set architecture; SpMV kernel; TI C6678 Shannon; Texas Instruments C6678 digital signal processor; VLIW; coprocessor; direct memory access controller; fabrication process; graphical processor unit; peak memory bandwidth; performance optimization; power efficiency; program-controlled scratchpad memory; programming methodology; programming technique; scientific computing; sparse matrix vector multiply; sparse matrix-vector multiply; video decoding; video encoding; voice encoding; Arrays; Coprocessors; Digital signal processing; Kernel; Sparse matrices; VLIW; digital signal processor (DSP); graphical processor unit (GPU); high performance computing; linear algebra; sparse matrix vector (SpMV); very long instruction word (VLIW);
Conference_Titel :
Application-Specific Systems, Architectures and Processors (ASAP), 2013 IEEE 24th International Conference on
Conference_Location :
Washington, DC
Print_ISBN :
978-1-4799-0494-5
DOI :
10.1109/ASAP.2013.6567571