Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors

Detalhes bibliográficos
Autor(a) principal: Serpa, Matheus da Silva
Data de Publicação: 2023
Tipo de documento: Tese
Idioma: eng
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFRGS
Texto Completo: http://hdl.handle.net/10183/267722
Resumo: As arquiteturas de computação recorrem a processadores Simultaneous Multithreading (SMT) para melhorar o throughput computacional e gerenciar aplicações paralelas. No entanto, a efetividade do SMT pode ser comprometida pela disputa de unidades funcionais quando threads paralelas executam instruções similares no mesmo núcleo. Em resposta a isso, esta tese introduz a ferramenta Instruction-Aware Mapping (IAM), que mitiga a disputa de unidades funcionais e otimiza a utilização de recursos. Ao contrário de outras soluções, a IAM utiliza uma estratégia de mapeamento dinâmica e transparente que atribui threads aos núcleos SMT com base em seus perfis de instrução em tempo real, sem necessidade de alterar o código-fonte da aplicação. A performance da ferramenta IAM foi testada usando os benchmarks NAS Parallel Benchmarks (NPB) e Standard Performance Evaluation Corporation (SPEC), além do SMT-Bench, um microbenchmark focado na análise de desempenho SMT. Essas avaliações, conduzidas em processadores Advanced Micro Devices (AMD) e Intel, mostram um aumento na média geométrica de desempenho de 9,8% em relação ao scheduler do sistema operacional Linux, com desempenho comparável às implementações round-robin e a outras estratégias de mapeamento. A eficácia da IAM é centrada na especificidade da instrução, mostrando melhorias no desempenho para operações como instruções de inteiro, de ponto flutuante e de desvio, enquanto seu impacto é mais moderado para instruções relacionadas à memória, como operações de carga. Essas descobertas ressaltam a importância de estratégias dinâmicas e adaptativas que levem em conta a natureza das instruções na otimização do desempenho SMT. Este estudo proporciona uma base para pesquisas adicionais sobre métodos adaptativos em SMT.
id URGS_4376b1b8607d6883bd95a7b7b6ebde65
oai_identifier_str oai:www.lume.ufrgs.br:10183/267722
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str 1853
spelling Serpa, Matheus da SilvaNavaux, Philippe Olivier AlexandreBeck Filho, Antonio Carlos Schneider2023-11-28T03:23:08Z2023http://hdl.handle.net/10183/267722001188185As arquiteturas de computação recorrem a processadores Simultaneous Multithreading (SMT) para melhorar o throughput computacional e gerenciar aplicações paralelas. No entanto, a efetividade do SMT pode ser comprometida pela disputa de unidades funcionais quando threads paralelas executam instruções similares no mesmo núcleo. Em resposta a isso, esta tese introduz a ferramenta Instruction-Aware Mapping (IAM), que mitiga a disputa de unidades funcionais e otimiza a utilização de recursos. Ao contrário de outras soluções, a IAM utiliza uma estratégia de mapeamento dinâmica e transparente que atribui threads aos núcleos SMT com base em seus perfis de instrução em tempo real, sem necessidade de alterar o código-fonte da aplicação. A performance da ferramenta IAM foi testada usando os benchmarks NAS Parallel Benchmarks (NPB) e Standard Performance Evaluation Corporation (SPEC), além do SMT-Bench, um microbenchmark focado na análise de desempenho SMT. Essas avaliações, conduzidas em processadores Advanced Micro Devices (AMD) e Intel, mostram um aumento na média geométrica de desempenho de 9,8% em relação ao scheduler do sistema operacional Linux, com desempenho comparável às implementações round-robin e a outras estratégias de mapeamento. A eficácia da IAM é centrada na especificidade da instrução, mostrando melhorias no desempenho para operações como instruções de inteiro, de ponto flutuante e de desvio, enquanto seu impacto é mais moderado para instruções relacionadas à memória, como operações de carga. Essas descobertas ressaltam a importância de estratégias dinâmicas e adaptativas que levem em conta a natureza das instruções na otimização do desempenho SMT. Este estudo proporciona uma base para pesquisas adicionais sobre métodos adaptativos em SMT.Modern computing architectures frequently rely on Simultaneous Multithreading (SMT) processors to boost computational throughput and handle parallel applications efficiently. However, the potential of SMT can be compromised by functional unit contention when parallel threads execute similar instructions on the same core. Addressing this issue, this thesis introduces an Instruction-Aware Mapping (IAM) tool that mitigates functional unit contention and enhances resource utilization. Distinct from current solutions, IAM uses a dynamic, transparent mapping strategy that assigns threads to SMT cores based on their real-time instruction profiles, eliminating the need to alter the application source code. The performance of the IAM tool was evaluated using the well-known NAS Parallel Benchmarks (NPB) and Standard Performance Evaluation Corporation (SPEC) benchmarks, as well as SMT-Bench, a microbenchmark developed for SMT performance analysis. These evaluations, conducted on Advanced Micro Devices (AMD) and Intel processors, show an average geometric mean performance increase of 9.8% compared to the Linux operating system scheduler, performing well against round-robin and random mapping methods. IAM’s effectiveness is instruction-specific, offering marked performance improvements for compute-centric operations, such as integer, floating-point, and branch instructions. At the same time, its influence is more moderate for memory-bound instructions, particularly load operations. These insights emphasize the importance of dynamic, instruction-specific strategies that can cater to the distinct characteristics of workloads in enhancing SMT performance. This research provides insights that can inspire more indepth studies into adaptive methods for SMT optimization.application/pdfengProcessadoresComputação de alto desempenhoMapeamentoDesempenho : SoftwareArquiteturas multicorePerformance degradationResource sharingFunctional unit contentionInstruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processorsMapeamento instruction-aware (IAM) : uma ferramenta para mitigar a contenção nas unidades funcionais de processadores SMTinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPrograma de Pós-Graduação em ComputaçãoPorto Alegre, BR-RS2023doutoradoinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001188185.pdf.txt001188185.pdf.txtExtracted Texttext/plain241984http://www.lume.ufrgs.br/bitstream/10183/267722/2/001188185.pdf.txt021727adc220b931440e905e32bd1c2aMD52ORIGINAL001188185.pdfTexto completo (inglês)application/pdf8915328http://www.lume.ufrgs.br/bitstream/10183/267722/1/001188185.pdf0caa5c8fdae4cb4c233d509eaf4b264aMD5110183/2677222023-12-23 04:29:03.906138oai:www.lume.ufrgs.br:10183/267722Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532023-12-23T06:29:03Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
dc.title.alternative.pt.fl_str_mv Mapeamento instruction-aware (IAM) : uma ferramenta para mitigar a contenção nas unidades funcionais de processadores SMT
title Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
spellingShingle Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
Serpa, Matheus da Silva
Processadores
Computação de alto desempenho
Mapeamento
Desempenho : Software
Arquiteturas multicore
Performance degradation
Resource sharing
Functional unit contention
title_short Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
title_full Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
title_fullStr Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
title_full_unstemmed Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
title_sort Instruction-aware mapping (IAM) : a tool to mitigate functional unit contention in SMT processors
author Serpa, Matheus da Silva
author_facet Serpa, Matheus da Silva
author_role author
dc.contributor.author.fl_str_mv Serpa, Matheus da Silva
dc.contributor.advisor1.fl_str_mv Navaux, Philippe Olivier Alexandre
dc.contributor.advisor-co1.fl_str_mv Beck Filho, Antonio Carlos Schneider
contributor_str_mv Navaux, Philippe Olivier Alexandre
Beck Filho, Antonio Carlos Schneider
dc.subject.por.fl_str_mv Processadores
Computação de alto desempenho
Mapeamento
Desempenho : Software
Arquiteturas multicore
topic Processadores
Computação de alto desempenho
Mapeamento
Desempenho : Software
Arquiteturas multicore
Performance degradation
Resource sharing
Functional unit contention
dc.subject.eng.fl_str_mv Performance degradation
Resource sharing
Functional unit contention
description As arquiteturas de computação recorrem a processadores Simultaneous Multithreading (SMT) para melhorar o throughput computacional e gerenciar aplicações paralelas. No entanto, a efetividade do SMT pode ser comprometida pela disputa de unidades funcionais quando threads paralelas executam instruções similares no mesmo núcleo. Em resposta a isso, esta tese introduz a ferramenta Instruction-Aware Mapping (IAM), que mitiga a disputa de unidades funcionais e otimiza a utilização de recursos. Ao contrário de outras soluções, a IAM utiliza uma estratégia de mapeamento dinâmica e transparente que atribui threads aos núcleos SMT com base em seus perfis de instrução em tempo real, sem necessidade de alterar o código-fonte da aplicação. A performance da ferramenta IAM foi testada usando os benchmarks NAS Parallel Benchmarks (NPB) e Standard Performance Evaluation Corporation (SPEC), além do SMT-Bench, um microbenchmark focado na análise de desempenho SMT. Essas avaliações, conduzidas em processadores Advanced Micro Devices (AMD) e Intel, mostram um aumento na média geométrica de desempenho de 9,8% em relação ao scheduler do sistema operacional Linux, com desempenho comparável às implementações round-robin e a outras estratégias de mapeamento. A eficácia da IAM é centrada na especificidade da instrução, mostrando melhorias no desempenho para operações como instruções de inteiro, de ponto flutuante e de desvio, enquanto seu impacto é mais moderado para instruções relacionadas à memória, como operações de carga. Essas descobertas ressaltam a importância de estratégias dinâmicas e adaptativas que levem em conta a natureza das instruções na otimização do desempenho SMT. Este estudo proporciona uma base para pesquisas adicionais sobre métodos adaptativos em SMT.
publishDate 2023
dc.date.accessioned.fl_str_mv 2023-11-28T03:23:08Z
dc.date.issued.fl_str_mv 2023
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/267722
dc.identifier.nrb.pt_BR.fl_str_mv 001188185
url http://hdl.handle.net/10183/267722
identifier_str_mv 001188185
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/267722/2/001188185.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/267722/1/001188185.pdf
bitstream.checksum.fl_str_mv 021727adc220b931440e905e32bd1c2a
0caa5c8fdae4cb4c233d509eaf4b264a
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1810085633959395328