78364

Avaliando práticas de Load Speculation em processadores

Favoritar este trabalho

Um dos principais desafios para melhorar o desempenho de um processador é a latência de memória, isto porque, com exceção dos bancos de registradores e as caches, os demais elementos da hierarquia de memória são externos ao processador e, portanto, necessitam de mais tempo para serem acessados, fator que gera bolhas nas execuções, deixando o processador ocioso esperando os resultados do acesso. Uma forma de minimizar o efeito destas latências seria o uso de especulação sobre o valor presente em um determinado endereço de memória, prática conhecida como Load Speculation. Com essas técnicas é possível especular sobre o conteúdo de um endereço desejado e continuar a execução, quando o valor buscado for conhecido, caso o valor especulado esteja correto, a execução continua - gerando assim um ganho no tempo de execução, mas caso o valor especulado esteja incorreto, deve-se reavaliar a execução e refazer as operações com o valor correto. O objetivo deste trabalho era, através de simulações e execução em placas FPGAs, implementar e avaliar nos quesitos tempo, área e consumo de energia, os resultados obtidos quando tal prática está disponível. Contudo, devido a limitações de tempo – o aluno se graduou seis meses antes do fim do projeto, apenas a primeira etapa do projeto foi concluída, tendo como resultado uma integralização entre a ferramenta de simulação e o módulo de avaliação física.