Programação Paralela em Arquiteturas Multi-Core/Arquitetura Intel Core e Core 2: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Alymenbr (discussão | contribs)
Alymenbr (discussão | contribs)
Linha 89:
=== Intel Advanced Smart Cache ===
 
A arquitetura Intel Core foi desenvolvida desde o começo prevendo-se o suporte a vários núcleos por processador. Diferentemente dos processadores anteriores, os processadores Intel Core com múltiplos núcleos compartilham a memória cache de nível 2 (L2).
 
A primeira vantagem da estratégia de compartilhar o cache L2 é que a quantidade de cache L2 pode ser alterada dinamicamente de acordo com a carga dos núcleos. Em um processador DualCore, quando um núcleo está inativo, o núcleo ativo fica com toda a cache L2 à sua disposição. Quando vários núcleos estão ativos a cache L2 é dividia proporcionalmente entre os núcleos de acordo com a frequência de requisições feitas por cada núcleo à memória.
 
A segunda vantagem é que ao utilizar uma única cache L2 não é necessário utilizar técnicas para garantir a consistência de dados entre as caches dos vários núcleos, diminuindo a utilização do barramento entre o processador e a memória do sistema.
 
Uma terceira vantagem é que o espaço total disponível em cache L2 é melhor utilizado já que quando dois núcleos utilizam os mesmos dados eles não são duplicados em várias caches, sendo compartilhados pelos dois núcleos.
 
A última vantagem é que a microarquitetura Core possui lógica de controle adicional para permitir que os dados da cache L1 de um núcleo sejam transferidos para a cache L1 de outro núcleo passando pela cache L2 compartilhada. Isso permite um passo a menos (não é necessário transferir dados entre as caches L2 de cada núcleo) no compartilhamento de dados entre as caches L1 de diversos núcleos, potencialmente melhorando a performance do sistema quando vários núcleos executam a mesma tarefa.
 
=== Intel Smart Memory Access ===