Sítio do Piropo

B. Piropo

< Jornal Estado de Minas >
Volte
14/11/2002

< Hyperthreading >


A grande novidade do Pentium 4 3,06 GHz chama-se Hyperthreading. Segundo a Intel, trata-se de "uma inovação revolucionária que permite a aplicativos multilineares ('multi-threaded') executar tarefas ("threads') paralelamente no interior do mesmo processador". Vamos tentar destrinchar isso.

Um programa é uma sucessão de tarefas, ou rotinas. Por exemplo: em um processador de textos há uma rotina para receber as informações do teclado e arrumá-las na tela sob a forma de texto, outra para distribui-lo pelas diversas páginas, outra para verificar a ortografia e assim por diante. Nos aplicativos tradicionais elas eram executadas uma após a outra. Nos aplicativos multilineares modernos elas podem ser executadas simultaneamente. O Word, por exemplo, é um aplicativo multilinear capaz de corrigir seus erros de digitação enquanto você continua acrescentando texto, além de formatar o documento em segundo plano.

Para executar mais de uma tarefa ao mesmo tempo usa-se dois recursos. As máquinas convencionais, com uma única CPU, adotam o esquema denominado "fatias de tempo" ("time slices"). O sistema operacional entrega o "foco" a uma tarefa, à qual cede alguns milhares de ciclos de máquina, enquanto as demais esperam. Em seguida, aquela tarefa é "congelada" e o foco passa para a seguinte, que recebe sua fatia de tempo, e assim sucessivamente. As tarefas são executadas uma de cada vez, mas a passagem de uma para a outra e o retorno à primeira são feitos tão rapidamente que tem-se a impressão que a execução é simultânea. A outra maneira de executar tarefas simultaneamente exige máquinas "multiprocessadas", cujas placas-mãe abrigam mais de uma CPU. Nelas, as tarefas são executadas efetivamente ao mesmo tempo, cada uma em sua CPU, gerenciadas pelo sistema operacional.

Os microprocessadores Pentium, desde o primeiro, usam a chamada "arquitetura superescalar", com duas unidades de processamento de dados no interior da mesma CPU (grosseiramente falando, o primeiro Pentium era constituído por dois 486 justapostos). Até o momento, cada uma destas unidades constituía uma "pipeline" dentro do Pentium. Agora, com a tecnologia hyperthreading, cada uma delas funciona como um microprocessador independente.

Em suma: o que a Intel conseguiu com seu novo Pentium 4 3,06GHz com Hyperthreading é que a máquina se comporte como se ostentasse duas CPUs independentes e tenha um desempenho (quase) equivalente ao das máquinas multiprocessadas de dois microprocessadores.

Semana passada, nos escritórios da Intel, eu vi duas máquinas idênticas, com a mesma CPU Pentium 4 3,06 GHz, rodando os mesmos programas. Uma delas com a hyperthreading habilitada, a outra não. Acreditem: quando se roda mais de um programa ao mesmo tempo (multitarefa) ou um único programa multilinear (multithreaded), a diferença de desempenho é gritante. Ponto para a Intel.

 

B. Piropo