Busca avançada
Ano de início
Entree

Técnicas de alocação e balanceamento para máquinas NUMA

Processo: 15/12187-3
Modalidade de apoio:Bolsas no Exterior - Estágio de Pesquisa - Mestrado
Vigência (Início): 01 de setembro de 2015
Vigência (Término): 29 de fevereiro de 2016
Área do conhecimento:Ciências Exatas e da Terra - Ciência da Computação - Sistemas de Computação
Pesquisador responsável:Guido Costa Souza de Araújo
Beneficiário:Martin Ichilevici de Oliveira
Supervisor: José Nelson Amaral
Instituição Sede: Instituto de Computação (IC). Universidade Estadual de Campinas (UNICAMP). Campinas , SP, Brasil
Local de pesquisa: University of Alberta, Canadá  
Vinculado à bolsa:14/15523-1 - Técnicas de alocação e balanceamento em máquinas NUMA, BP.MS
Assunto(s):Alocação de memória   Arquitetura e organização de computadores   Memória (eletrônica digital)   Programação
Palavra(s)-Chave do Pesquisador:alocação de memória | Balanceamento | Numa | Arquitetura de Computadores

Resumo

O modelo NUMA (Non-Uniform Memory Architecture) permitiu aumentar consideravelmente a escalabilidade em arquiteturas paralelas. Contudo, ainda hoje muitos dos sistemas computacionais não consideram as diferenças de latência entre memória local e remota, o que acarreta grandes perdas de desempenho. Além disso, geralmente ignoram efeitos de congestão gerados por sobrecarregamento de controladores de memória. O controle por parte do programador é custoso e sujeito a erros, de forma que uma maneira automática de gerência da distribuição de memória seja fundamental. Este projeto pretende implementar uma técnica que permita, de forma independente do programador, a distribuição entre memória local e remota de um programa. Esta técnica deverá ser capaz de determinar o padrão de acesso à memória do programa, e realizar a distribuição das páginas de memória entre os diferentes nós de processamento, de forma a diminuir a latência média de execução do programa. Na Unicamp, durante o projeto de pesquisa principal, desenvolveu-se uma heurística de distribuição de páginas que produziu resultados iniciais promissores, sendo mais eficiente ou no mínimo equivalente a outras técnicas populares. Contudo, tal técnica é uma abordagem estática que depende do auxílio do programador. Para lidar com esta questão, pretende-se utilizar técnicas de compilação. Com estas, pretende-se estabelecer uma forma automática de detecção do padrão de acesso à memória de um programa e qual o nível de compartilhamento entre páginas. Além disso, tais técnicas serão responsáveis por determinar uma distribuição de páginas eficiente e gerenciar tal distribuição. Por fim, pretende-se que tal modelo suporte migrações de páginas. Com a implementação desta técnica, pretende-se melhorar o desempenho de programas que façam uso intensivo de memória, distribuindo a memória entre nós (diminuindo a congestão) e posicionando a memória próxima às unidades de processamento que operam sobre a mesma. Espera-se que a solução seja flexível e de fácil uso, uma vez que não necessitará da intervenção do usuário. (AU)

Matéria(s) publicada(s) na Agência FAPESP sobre a bolsa:
Mais itensMenos itens
Matéria(s) publicada(s) em Outras Mídias ( ):
Mais itensMenos itens
VEICULO: TITULO (DATA)
VEICULO: TITULO (DATA)