A Técnica Lock Acquirer Prediction e sua Aplicação em Sistemas de Memória Compartilhada Distribuída
Autores
1707 |
373,135,161
|
|
1708 |
373,135,161
|
|
1709 |
Ricardo Bianchini
(Co-orientador) |
373,135,161
|
Informações:
Publicações do PESC
Título
A Técnica Lock Acquirer Prediction e sua Aplicação em Sistemas de Memória Compartilhada Distribuída
Linha de pesquisa
Arquitetura e Sistemas Operacionais
Tipo de publicação
Tese de Doutorado
Número de registro
Data da defesa
25/9/1998
Resumo
Esta tese apresenta a técnica Lock Acquirer Prediction (LAP), que prevê dinamicamente a ordem de transferência dos locks numa aplicação paralela, e um conjunto de três sistemas software distributed shared memory (software DSM) desenvolvidos para explorar as vantagens oferecidas por LAP. Os três sistemas propostos exploram LAP de forma diferente e, dentro do paradigma de memória compartilhada, utilizam modelos de programação distintos. Tais modelos tem implicações diretas na utilidade da técnica LAP, no desempenho e na complexidade dos sistemas. Nossos resultados mostram que LAP consegue acertar suas previsões com alta precisão e permite sensível redução no overhead de busca de dados compartilhados acessados dentro de uma seção crítica. Mostramos também que o aumento da complexidade do modelo de programação permite que a técnica LAP seja usada de forma agressiva e simplifica o protocolo de coerência empregado.
Nossos resultados mostram ainda que o aumento da complexidade do modelo não necessariamente leva a ganhos de desempenho, o que é diferente do esperado intuitivamente. Concluímos que a técnica LAP merece a atenção dos projetistas de sistemas software DSM, uma vez que pode alcancar bom desempenho sem a necessidade de hardware específico ou suporte de compiladores. Além disso, concluímos que, dentre os modelos de programação estudados, somente o mais complexo alcança desempenho que justifique a sua complexidade de programação.
Abstract
In this thesis we propose the Lock Acquirer Prediction (LAP) technique for software-based distributed shared-memory systems (software DSMs). LAP dynamically predicts the order of lock transfers in parallel applications and thus allows software DSMs to update the data accessed in critical sections even before the corresponding locks are requested. We also propose three software DSMs that exploit LAP assuming programming models with varying degrees of complexity. We study the impact of these models on the usefulness of LAP and on the performance and complexity of our software DSMs. Our results show that LAP is very successful at its predictions, leading to significant data access overhead reductions for our applications. Our results also demonstrate that increasing the complexity of the programming model simplifies the software DSMs, while allowing them to exploit LAP more aggressively. However, increases in programming model complexity do not always lead to performance improvements, which counters the common wisdom in the research community. Based on these results, we conclude that the LAP technique deserves the attention of software DSMs designers, as it can achieve good performance without any hardware or compiler support. Furthermore, we conclude that only the most complex programming model we study achieves performance that justifies its programming complexity.
Arquivo