Investigating Parallel Programming Paradigms in HeMPS MPSoC Platform
Resumo
This work investigates the use of parallel programming paradigms in the development of applications targeting a Multiprocessor System-on-Chip (MPSoC). We implemented Matrix Multiplication, Image Manipulation and Advanced Encryption Standard (AES) applications in the Master-Slave, Pipeline and Divide-and-Conquer paradigms, and applied execution time and power dissipation as criteria for evaluating the performance of the applications executing according to the paradigms on an MPSoC architecture. The obtained results allowed us to conclude that there are optimal application-paradigm relations. Pipeline presents lower execution time and lower power dissipation for the Image Manipulation application; whereas, Master-Slave performs better for the Matrix Multiplication and AES applications. However, when the input size of the applications increases, the Divide-and-Conquer paradigm tends to minimize the execution time for Matrix Multiplication application. The main contributions of this work are the development of applications, considering different paradigms, and the impact evaluation of these paradigms on MPSoC architecture.
Referências
Carara, E. A., De Oliveira, R. P., Calazans, N. L., & Moraes, F. G. (2009, May). HeMPS-a framework for NoC-based MPSoC generation. In 2009 IEEE International Symposium on Circuits and Systems (pp. 1345-1348). IEEE.
Carvalho, E. (2009). Mapeamento dinâmico de tarefas em mpsocs heterogêneos baseados em noc. Pontifícia Universidade Católica do Rio Grande do Sul.
Daemen, J. and Rijmen, V. (1999). Aes proposal: Rinjdael. aes algorithm submission, “http://www. nist. gov/CryptoToolKit”, January, 2019.
Gorev, M. and Ubar, R. (2014, October). Pipelined execution of data-parallel algorithms. In 2014 14th Biennial Baltic Electronic Conference (BEC) (pp. 109-112). IEEE.
Guindani, G. M. (2014). Mecanismo de controle de QoS através de DFS em MPSOCS. Pontifícia Universidade Católica do Rio Grande do Sul.
Johann Filho, S. (2012). Suporte para aplicações dinâmicas em sistemas multiprocessados intra-chip homogêneos. PUCRS.
Meyer, V. (2016). PIPEL: Modelo de Gerência da Elasticidade para Aplicações Organizadas em Pipeline. Universidade do Vale do Rio dos Sinos.
Moraes, F. et al., (2017) “Hemps Platform v7.3”. http://www.inf.pucrs.br/hemps/docs/HeMPS_presentation.pdf , January, 2019.
Moraes, F., Calazans, N., Mello, A., Möller, L., & Ost, L. (2004). HERMES: an infrastructure for low area overhead packet-switching networks on chip. INTEGRATION, the VLSI journal, 3 8(1), 69-93.
Null, L., & Lobur, J. (2014). The essentials of computer organization and architecture. Jones & Bartlett Publishers.
Press, W. H., Teukolsky, S. A., Vetterling, W. T., & Flannery, B. P. (2007). Numerical recipes 3rd edition: The art of scientific computing. Cambridge university press.
Raeder, M., Griebler, D., Baldo, L., and Fernandes, L. G. (2011). Performance prediction of parallel applications with parallel patterns using stochastic methods. Sistemas Computacionais (WSCAD-SSC), XII Simpósio em Sistemas Computacionais de Alto Desempenho, 1-13.
Rezende, L. and Caimi, L. (2016) “Desenvolvimento da Aplicação AES para HeMPS. http://www,github.com/GaphGroup/hemps/blob/master/hemps8.5/applications/aes , January, 2019.
Shee, S. L., Erdos, A., and Parameswaran, S. (2006, October). Heterogeneous multiprocessor implementations for jpeg:: a case study. In Proceedings of the 4th international conference on Hardware/software 217-222). ACM. Codesign and system synthesis (pp.
Souza, M. et al., (2017). CAP Bench: a benchmark suite for performance and energy evaluation of low-power many-core processors. Concurrency and Computation: Practice and Experience, 2 9( 4), e3892.
Tanurhan, Y. (2006). Processors and FPGAs quo vadis?. Computer, 39( 11), 108-110.
Wolf, W. (2004, July). The future of multiprocessor systems-on-chips. In Proceedings. 41st Design Automation Conference, 2004. (pp. 681-685). IEEE.