Carregamento Especulativo
O carregamento especulativo permite a carga de um dado antes que o programa venha a necessitar-lhe. A ideia básica é separar o carregamento do dado do instante de sua utilização. O dado sempre estará disponível e, por isso, o processador não se detém esperando que a memória, ou o cache, seja lido. O compilador é o responsável por analisar o programa buscando operações que necessitam de dados que estão na memória. Sempre que possível, o compilador insere antecipadamente uma instrução de carregamento (bem antes do ponto onde o dado será necessário) e uma instrução de verificação imediatamente antes da instrução que usa o dado. Isso resulta que, muito antes do dado ser necessário, ele já está sendo buscado na memória. A verificação é importante porque o dado pode não mais ser válido e, além disso, é necessário checar as exceções. Por exemplo, um dado pode não mais ser válido porque a CPU executou um salto. Tudo isso é preparado pelo compilador visando a obter o máximo de paralelismo.
Respostas recomendadas
Não há comentários para mostrar.
Crie uma conta ou entre para comentar
Você precisa ser um usuário para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar agora