Home | Mapa do Site

     

Maximizando a performance

A velocidade dos processadores têm aumentado muito nos últimos anos. Aumentar a velocidade do processador aumenta também a performance global do processador. No entanto, o processador é apenas uma parte do computador, e tem que confiar nos outros componentes para realizar as suas funções. Pelo facto de toda a informação processada pelo processador necessitar de ser lida e escrita na memória, a performance global do PC é afectada de forma dramática pela velocidade com que a informação viaja da CPU para a memória.

Por isso, tecnologias de memória mais rápidas contribuem enormemente para a performace global de todo o sistema. Mas, aumentando a velocidade da memória por si só será sempre apenas uma parte da solução. O tempo que demora o percurso da informação desde o processador à memória é,, tipicamente, maior que o tempo que o processador dispende a processar a informação. A tecnologia e as inovações descritas nesta página foram desenhadas para acelerar esse processo de comunicação entre a memória e o processador.

MEMÓRIA CACHE (CACHE MEMORY)

A memória Cache é normalmente uma pequena quantidade de memória extremamente rápida e que reside perto do processador. A memória Cache é desenhada para fornecer a CPU com os pedidos mais frequentes de informação e instruções. Por ser muito mais rápido ler instruções da memória cache, o facto de existir memória cache poupa muito tempo ao sistema. Se a informação não estiver na memória cache então o processador terá que ir ler essa informação à memória principal, mas como leva tão pouco tempo a ler da Cache, vale a pena esse esforço. Isto é equivalente a ir verificar ao congelador se temos determinado alimento antes de irmos ao supermercado buscá-lo: só demourou uma pequena fracção de tempo, por isso vale a pena.

O conceito que está por trás da Cache é a regra "80/20", que nos indica que 20% dos ficheiros ou aplicações são utilizados 80% do tempo. Por outro lado, isto significa que a maior parte dos ficheiros e aplicações (80%) só são usados 20% das vezes. A memória cache faz sentido porque é provável que as intruções da CPU utilizadas num momento sejam necessárias pouco tempo depois.

COMO FUNCIONA A MEMÓRIA CACHE

A memória Cache é como uma "lista de favoritos" de instruções utilizadas pela CPU. Cache memory is like a “hot list” of instructions needed by the CPU. O controlador de memória guarda em cache cada instrução pedida pela CPU; cada vez que a CPU obtém uma instrução que necessita da cache (cache hit) essa instrução passa para 1º lugar da "lista de favoritos". Quando a cache fica cheia e a CPU pede uma instrução nova o sistema escreve por cima da instrução que não é usada há mais tempo. Desta forma, a informação prioritária vai ficando continuamente em cache, enquanto que a informação requerida com menos frequência vai saindo.

NÍVEIS DE CACHE

Hoje em dia, na maior parte daz vezes a cache está incorporada no chip do processador propriamente dito; no entanto, existem outras configurações possíveis. Nalguns casos, um sistema poderá ter cache localizada dentro do processador e na motherboard mas muito próximo do socket do processador. Qualquer que seja a configuração, é atribuído um nível de cache. Por exemplo, a cache que está normalmente dentro do processador é denominada cache de nível 1 (L1 cache), o nível seguinte será o 2 (L2) e assim sucessivamente.

Níveis de cache

LAYOUT DA PLACA DO SISTEMA

Como já deve ter notado, a colocação dos módulos de memória na placa do sistema (placa mãe) tem um efeito directo na performance do sistema. Como a memória tem que guardar toda a informação que a CPU necessita para o processamento, a velocidade à qual a informação pode circular entre a memória e o processador é crítica para a performance global do sistema. E porque a troca de informação entre a memória e o processador é um processo constante, a distância entre o processador e a memória é outro factor crítico na performance.

INTERLEAVING

O termo "interleaving" refere-se ao processo no qual o processador alterna a comunicação entre dois ou mais bancos de memória. A tecnologia de Interleaving é tipicamente utilizada por sistemas de grandes dimensões como servidores e estações de trabalho. É assim que funciona: cada vez que o processador de dirige a um banco de memória este necessita de pelo menos um ciclo de relógio para fazer o auto-reset. A CPU poupa tempo de processamento dirigindo-se ao segundo banco de memória enquanto o primeiro ainda faz o reset. O conceito de Interleaving também funciona entre os próprios chips da memória dentro do módulo de memória.

BURSTING

O "Bursting" é outra tecnologia que permite poupar tempo. O propósito do bursting é dotar a CPU de informação adicional da memória baseado na probabilidade de que essa informação será necessária. Inves de ir buscar o pedaço de informação que necessita naquele preciso momento, "agarra" um bloco de informação de endereços de memória consecutivos. Isto poupa tempo porque há uma forte probabilidade estatística de que o próximo "pedaço" de informação necessário será o que está no endereço de memória seguinte. O Bursting pode funcionar tanto no processo de leitura de memória como no de escrita na memória.

PIPELINING

O "Pipelining" é uma técnica de processamento na qual determinada tarefa é dividida em etapas. Com a divisão de uma tarefa em partes mais pequenas é possível sobrepor tarefas, ou seja, processar essas pequenas tarefas em simultâneo optimizando a capacidade do processador.

 

seguinte >>