CoreTool: Identificação e Análise de Threads em Sistemas Multicore

  • Camila Koike UFMS
  • Eduardo Max UFMS
  • Rodolpho Gheleri UFMS
  • Ricardo Santos UFMS
##plugins.pubIds.doi.readerDisplayName## https://doi.org/10.5753/wscad.2014.15011

Resumen

A disponibilidade de recursos de processamento nos processadores atuais aliada à complexidade do software faz com que ferramentas automatizadas sejam cada vez mais importantes no processo de validação e avaliação de aplicações multithreaded. Este artigo apresenta o desenvolvimento de uma ferramenta para análise do comportamento de threads em sistemas multicore. Especificamente, a ferramenta proposta, denominada CoreTool, acompanha o escalonamento e execução das threads de uma aplicação e retorna informações precisas sobre a utilização dos núcleos de processamento assim como a execução de instruções por thread. CoreTool foi desenvolvida a partir da infraestrutura PIN para instrumentação binária dinâmica de aplicações multithreaded. Experimentos de validação e avaliação foram realizados com a ferramenta e aplicações Linux e do benchmark Splash-2. Os experimentos foram executados sobre duas configurações de processadores multicore com quatro e oito núcleos. 1.

Citas

Bach, M., Charney, M., Cohn, R., Demikhovsky, E., Devor, T., Hazelwood, K., Jaleel, A., Luk, C. -K., Lyons, G., Patil, H. Tal, A. (2010) “Analyzing Parallel Programs with Pin”, IEEE Computer Society.

Biena, C., Kumar, S., Singh, J. P., Li, K. (2008). “The PARSEC Benchmark Suite: Characterization ad Architectural Implications”. In Proceedings of the 17th International Conference on Parallel Architectures and Compilation Techniques, pp. 72-81, ACM.

Jaleel, A., Cohn, R. S., Luk, C. K., Jacob, B. (2008). “CMP$im: A Pin-Based On-theFly Multi-Core Cache Simulator”. In Proceedings of the Fourth Annual Workshop on Modeling, Benchmarking and Simulation (MoBS), co-located with ISCA, pp. 28-36.

Kim, M., Kim, H., & Luk, C. K. (2010). “Prospector: A Dynamic Data-Dependence Profiler to Help Parallel Programming”. In Proceedings of the USENIX Workshop on Hot Topics in Parallelism.

Luk, C.-K., Cohn, R., Muth, R., Patil, H., Klauser, A., Lowney, G., Wallace, S., Reddi,V. J., Azelwood, K. (2005). “Pin: Building Customized Program Analysis Tools with Dynamic Instrumentation”. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 190–200, ACM.

Patil, H., Pereira, C., Stallcup, M., Lueck, G., Cownie, J. (2010). “Pinplay: A Framework for Deterministic Replay and Reproducible Analysis of Parallel Programs”. In Proceedings of the 8th annual IEEE/ACM International Symposium on Code Generation and Optimization, pp. 2-11, ACM.

Pin. (2012). Pin 2.13 User Guide. Disponível em: https://software.intel.com/enus/articles/pintool. Acesso em: 23/05/2014

Reddi, V., Settle, A. M., Connors, D. A., Cohn, R. S. (2004) “Pin: A Binary Instrumentation Tool for Computer Architecture Research and Education.” In Proceedings of the Workshop on Computer Architecture Education, June.

SPLASH-2 (2007). The Modified SPLASH-2. Disponível em: http://www.capsl.udel.edu/splash/. Acesso em 16/07/2014.

Treibig, J., Hager, G., Wellein, G. (2010). “ LIKWID: A Lightweight PerformanceOriented Tool Suite for x86 Multicore Environments”. In Proceedings of the 39th International Conference on Parallel Processing Workshops, pp. 207-216.

Wallace, S. and Hazelwood, K. (2007). “Superpin: Parallelizing Dynamic Instrumentation for Real-Time Performance”. In Proceedings of the International Symposium on Code Generation and Optimization, pp. 209–220, IEEE Computer Society.
Publicado
2014-10-08
Cómo citar
KOIKE, Camila et al. CoreTool: Identificação e Análise de Threads em Sistemas Multicore. Anais do Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD), [S.l.], p. 192-203, oct. 2014. ISSN 0000-0000. Disponible en: <https://sol.sbc.org.br/index.php/sscad/article/view/15011>. Fecha de acceso: 18 mayo 2024 doi: https://doi.org/10.5753/wscad.2014.15011.