Sítio do Piropo

B. Piropo

< O Globo >
Volte
18/11/2002

< Quadro: Hyperthreading >


Segundo a Intel, Hyperthreading  é “uma inovação revolucionária que permite a aplicativos multilineares (‘multi-threaded’) executar tarefas (“threads’) paralelamente no interior do mesmo processador”.

Um programa é uma sucessão de tarefas. Nos aplicativos tradicionais elas eram executadas uma após a outra. Nos aplicativos multilineares (“multithreaded”) modernos elas podem ser executadas simultaneamente. Uma planilha multilinear é capaz efetuar os cálculos enquanto você continua acrescentando números em outras células, além de formatar as páginas em segundo plano.

Para executar mais de uma tarefa ao mesmo tempo pode-se usar um dentre dois recursos. O primeiro, adotado nas máquinas convencionais com uma única CPU, denomina-se “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 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. É como o truque dos acrobatas mantêm no ar uma dúzia de objetos. A impressão é que estão manejando todos, quando na verdade jogam para cima um de cada vez.

O segundo recurso é o adotado nas máquinas “multiprocessadas”: mais de uma CPU na placa-mãe. As tarefas, gerenciadas pelo sistema operacional, são executadas efetivamente ao mesmo tempo, cada uma em sua CPU,.

Os microprocessadores Pentium usam a chamada “arquitetura superescalar”, com duas unidades de processamento 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”. Agora, a Intel descobriu um jeito de fazer com que elas se apresentem ao sistema operacional como microprocessadores independente.

Essa é a base da tecnologia “Hyperthreading”. E o que a Intel conseguiu com ela é fazer que um único P4 3,06 HT se comporte como duas CPUs independentes. O resultado é um desempenho (quase) equivalente ao das máquinas multiprocessadas de dois microprocessadores.

B. Piropo