-
Usando esta técnica a CPU escreve dados diretamente na cache, cabendo ao sistema a escrita posterior da informação na memória principal. Como resultado, o CPU fica livre mais rapidamente para executar outras operações. Em contrapartida, a latência do controlador pode induzir problemas de consistência de dados na memória principal, em sistemas multiprocessados com memória compartilhada. Esses problemas são tratados por protocolos de consistência da cache.
Exemplo:
A escrita de um endereço é feita inicialmente numa linha da cache, e somente na cache. Quando mais tarde algum novo endereço precisar desta linha da cache, estando esta já ocupada, então o endereço inicial é guardado na memoria e o novo endereço ocupa-lhe o lugar na respectiva linha da cache.
-
As duas 1°'s proposições são simples e diretas. High-speed cache é um tipo de memória que "traduz" a informação que CPU necessita e busca-a da RAM. A 3° proposição está explicada na passagem
One of the more extreme examples of cache specialization is the trace cache found in the Intel Pentium 4 microprocessors. A trace cache is a mechanism for increasing the instruction fetch bandwidth and decreasing power consumption (in the case of the Pentium 4) by storing traces of instructions that have already been fetched and decoded.
Sim, trace cache armazena "traços" de memória RAM que já foram decodificados, o que faz o seu reuso mais fácil e eficiente.
src: en.wikipedia.org/wiki/CPU_cache
-
O item II esta errado.
A memória cache é totalmente transparente para a CPU (dai inclusive seu nome).
- Quando a CPU que acessar ou gravar em uma região de memória ela simplesmente o faz.
- A cache intercepta essa requisição, e se possuir o dado responde a CPU muito mais rapidamente.
Nenhum projeto de CPU é alterado por incluir um ou mais níveis de Cache.
Alguem sabe se houve recursos para esta questão?
-
O Pentium III possui 32 KB de cache L1, dividido em dois blocos, onde 16 KB são para o armazenamento de dados e os demais 16 KB para o armazenamento de instruções. O Athlon utiliza um cache L1 de 128, novamente dividido em dois blocos separados, que armazenam dados e instruções.
No Pentium 4, o bloco do cache L1 destinado a instruções foi substituído pelo Execution trace cache, um tipo de cache ultra-rápido que, em vez de instruções, armazena diretamente uOPs, que são as instruções já decodificadas, prontas para serem processadas. Isso garante que o cache tenha apenas um ciclo de latência (a instrução é solicitada em um ciclo e recebida no seguinte), o que faz com que o processador não perca praticamente tempo algum ao utilizar dados armazenados no trace cache, ao contrário do que acontecia no Pentium III, onde são perdidos pelo menos dois ciclos em cada leitura, o tempo necessário para decodificar a instrução.
Fonte: http://www.hardware.com.br/livros/hardware/execution-trace-cache.html
-
@Bernardo,
eu não seria tão crítico assim. No seu próprio comentário "A cache intercepta essa requisição, e se possuir o dado responde a CPU muito mais rapidamente." você acaba se contradizendo. Cuidado com a criticidade nestes tipos de questões, acredito ser bem trivial o item II.
Bons estudos!
-
A técnica de trace cache é um mecanismo que tem o objetivo de suprir os altos requisitos de vazão exigidos pelas unidades de execuçõ superscalares modernas.
Trace cache não vem substituir as caches de instruções e/ou dados, ao invés disso, é uma nova forma de cache de instruções onde blocos básicos do fluxo de instrução dinâmico são armazenados nas linhas da cache.
Mais detalhes no paper da UNICAMP: http://www.ic.unicamp.br/~ducatte/mo401/1s2011/T2/Artigos/G10-115121-115153-t2.pdf.
-
Gabarito C
Acredito que a grande dúvida da questão foi sobre a Trace Cache.
Vejam:
O cache de rastreamento (também conhecido como cache de rastreamento de execução) é um cache muito especializado que armazena o fluxo dinâmico de instruções conhecidas como rastreamento. Isso ajuda a aumentar a largura de banda de busca de instruções e a diminuir o consumo de energia (no caso do Intel Pentium 4) armazenando vestígios de instruções que já foram obtidas e descodificadas. Trace Processor é uma arquitetura projetada em torno do cache de rastreamento e processa as instruções na granularidade do nível de rastreamento.
"Retroceder Nunca Render-se Jamais !"
Força e Fé !
Fortuna Audaces Sequitur !