Geração Automática de Código TBB na SPar
Resumo
Técnicas de programação paralela são necessárias para extrair todo o potencial dos processadores de múltiplos núcleos. Para isso, foi criada a SPar, uma linguagem para abstração do paralelismo de stream. Esse trabalho descreve a implementação da geração de código automática para a biblioteca TBB na SPar, uma vez que gerava-se código para FastFlow. Os testes com aplicações resultaram em tempos de execução até 12,76 vezes mais rápidos.
Referências
Griebler, D. (2016). Domain-Specific Language & Support Tool for High-Level Stream Parallelism. PhD thesis, Faculdade de Informática - PPGCC - PUCRS, Porto Alegre, Brazil.
Griebler, D., Danelutto, M., Torquati, M., and Fernandes, L. G. (2017). SPar: A DSL for High-Level and Productive Stream Parallelism. Parallel Processing Letters, 27(01):1740005.
Griebler, D., Hoffmann, R. B., Danelutto, M., and Fernandes, L. G. (2018). Stream Parallelism with Ordered Data Constraints on Multi-Core Systems. Journal of Supercomputing, 75(8):4042–4061.
Playne, D. P. and Hawick, K. A. (2011). Auto-generation of parallel finite-differencing code for mpi, tbb and cuda. In 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops, pages 1168–1175.
Reinders, J. (2007). Intel Threading Building Blocks. O’Reilly, Sebastopol, CA, USA.