• DocumentCode
    1860417
  • Title

    C++ Compiler Supports for Embedded Multicore DSP Systems

  • Author

    Kuan, Chi-Bang ; Li, Jia-Jhe ; Chen, Chung-Kai ; Lee, Jenq Kuen

  • Author_Institution
    Dept. of Comput. Sci., Nat. Tsing Hua Univ., Hsinchu, Taiwan
  • fYear
    2011
  • fDate
    13-16 Sept. 2011
  • Firstpage
    214
  • Lastpage
    221
  • Abstract
    The development of embedded systems has moved toward multicore in recent years. As processor numbers continue growing in embedded multicore systems, how to provide efficient programming models and tailored compiler supports becomes a critical issue in developing embedded multicore applications. Though C still dominates embedded computing so far, C++ is gaining importance and popularity in DSP systems for its power and flexibility. In addition, current C++ compilers are able to produce efficient and compact code as C compilers. This increases the practical use of C++ technologies in embedded systems. In this paper, we address issues in supporting C++ compilers and present methods to leverage C++ in embedded multicore computing. Since embedded systems are usually limited by tight resource, code size issues are addressed when supporting C++ libraries. Code size of standard C++ library is analyzed and a library layering technique is provided to guide reasonable library use in embedded applications. Our methods to leverage C++ include enhancing programming models with high-level abstraction and incorporating the programming models with parallel patterns to simplify program parallelization. In our experiments, PAC multi-DSP systems, composed of one MPU and two VLIW DSPs, are used to evaluate the proposed methods. Parallelization results on stereo-vision and image-blurring applications are presented with key components of the systems, including SIMD and DMAs, incorporated to pursue maximal performance. The result shows our approaches with C++ compilers can deliver performance improvements of 61% and 174% for the stereo-vision and image-blurring applications, respectively.
  • Keywords
    C++ language; digital signal processing chips; embedded systems; parallel architectures; stereo image processing; visual perception; C++ compiler; DMA; MPU; PAC multi-DSP systems; SIMD; VLIW; code size issues; embedded multicore DSP systems; high-level abstraction; image-blurring applications; library layering technique; parallel architecture core; parallel patterns; program parallelization; programming model enhancement; standard C++ library; stereo-vision applications; Computational modeling; Digital signal processing; Libraries; Multicore processing; Object oriented modeling; Programming; Servers;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Processing Workshops (ICPPW), 2011 40th International Conference on
  • Conference_Location
    Taipei City
  • ISSN
    1530-2016
  • Print_ISBN
    978-1-4577-1337-8
  • Electronic_ISBN
    1530-2016
  • Type

    conf

  • DOI
    10.1109/ICPPW.2011.38
  • Filename
    6047295