DOI QR코드

DOI QR Code

Efficient Process Network Implementation of Ray-Tracing Application on Heterogeneous Multi-Core Systems

  • Jung, Hyeonseok (Department of Electrical and Computer Engineering, Ajou University) ;
  • Yang, Hoeseok (Department of Electrical and Computer Engineering, Ajou University)
  • 투고 : 2016.07.21
  • 심사 : 2016.07.29
  • 발행 : 2016.08.30

초록

As more mobile devices are equipped with multi-core CPUs and are required to execute many compute-intensive multimedia applications, it is important to optimize the systems, considering the underlying parallel hardware architecture. In this paper, we implement and optimize ray-tracing application tailored to a given mobile computing platform with multiple heterogeneous processing elements. In this paper, a lightweight ray-tracing application is specified and implemented in Kahn process network (KPN) model-of-computation, which is known to be suitable for the description of real-time applications. We take an open-source C/C++ implementation of ray-tracing and adapt it to KPN description in the Distributed Application Layer framework. Then, several possible configurations are evaluated in the target mobile computing platform (Exynos 5422), where eight heterogeneous ARM cores are integrated. We derive the optimal degree of parallelism and a suitable distribution of the replicated tasks tailored to the target architecture.

키워드

참고문헌

  1. Exynos, Samsung. "Octa 5422." (2015).
  2. Dagum, Leonardo, and Ramesh Menon, "OpenMP: an industry standard API for shared-memory programming." IEEE computational science and engineering 5.1 (1998): 46-55. https://doi.org/10.1109/99.660313
  3. Gropp, William, et al. "A high-performance, portable implementation of the MPI message passing interface standard." Parallel computing 22.6 (1996): 789-828. https://doi.org/10.1016/0167-8191(96)00024-5
  4. Munshi, Aaftab, "The opencl specification." 2009 IEEE Hot Chips 21 Symposium (HCS). IEEE, 2009.
  5. Nvidia, C. U. D. A. "Compute unified device architecture programming guide." (2007).
  6. Schor, Lars, et al. "Euretile design flow: Dynamic and fault tolerant mapping of multiple applications onto many-tile systems." 2014 IEEE International Symposium on Parallel and Distributed Processing with Applications. IEEE, 2014.
  7. Gilles, Kahn. "The semantics of a simple language for parallel programming." In Information Processing 74 (1974): 471-475.
  8. Schor, Lars, et al. "Scenario-based design flow for mapping streaming applications onto on-chip manycore systems." Proceedings of the 2012 international conference on Compilers, architectures and synthesis for embedded systems. ACM, 2012.
  9. Sheikh, Suhel, "Efficient Process Network Specification of Ray-Tracing Application," Master Thesis, ETH Zurich, 2012.
  10. Schor, Lars, et al. "Expandable process networks to efficiently specify and explore task, data, and pipeline parallelism." Compilers, Architecture and Synthesis for Embedded Systems (CASES), 2013 International Conference on. IEEE, 2013.
  11. Jensen, Henrik Wann, et al. "Monte Carlo ray tracing." ACM SIGGRAPH. 2003.