Uma conseqüência da forma como a tecnologia vem avançando é a mudança de paradigma nos microprocessadores de alta performance.
Durante várias décadas, arrancaram-se todas as gotas possíveis de performance dos processadores de ponta com núcleo único, e isso ao custo de uma complexidade arquitetural feroz. Acrescentaram-se recursos que ultrapassavam o limite dos retornos cada vez menores, porque todos os softwares dependiam de um modelo particularmente simples de programação em linha única.
Agora, de uma hora para outra, tudo mudou. Os processadores com dois núcleos tornaram-se o padrão, os com quatro núcleos começam a aparecer, e o setor já fala sobre o crescimento futuro em termos de processadores com mais núcleos em um chip.
O que aconteceu?
O paralelismo para uso geral certamente não foi solucionado e, até que o seja, a utilidade de processadores de vários núcleos continua a ser questionável (para os aplicativos de desktop de uso geral; não há dúvida sobre a utilidade deles em muitos aplicativos de servidores).
Os lucros cada vez menores oferecidos pela complexidade adicional, os custos de projeto e a mudança da relação entre as defasagens de processamento e de comunicação nos chips se somam para tornar o investimento nos processadores de núcleo único menos atraente.
A operação de cortar e colar é tão fácil no silício quanto em qualquer outro lugar, de forma que colocar dois ou quatro núcleos em um chip não se revela tão mais difícil do que colocar um. O setor simplesmente abandonou o caminho do processador de núcleo único, considerando-o difícil demais e optando pela rota que oferecia menos resistência.
Os fabricantes conseguem aumentar a capacidade de processamento por meio do investimento nos núcleos múltiplos; se você consegue ou não utilizar esse potencial, isso é problema seu, não deles.
Há uma motivação consideravelmente maior para realizar avanços no paralelismo de uso geral: não há mais outra forma de seguir adiante.
Que chip usar?
Os processadores podem ser avaliados segundo seu custo de fabricação (que diz respeito à performance por unidade de área de silício) e segundo seu custo de rodagem (que diz respeito à sua eficiência no consumo de energia).
No primeiro caso, os processadores de alta performance, como os dos desktops, e os processadores embutidos do tipo ARM, como os usados em celulares e em players de música, são basicamente equivalentes.
No segundo, os processadores embutidos apresentam grande vantagem.
Eles ficam atrás na performance de direção única de processamento, mas, se e quando o paralelismo estiver disponível, essas máquinas terão mais eficiência no consumo de energia ao usar um grande número de processadores em oposição a um pequeno número de processadores de ponta.
Gasto de energia cai, mas consumo geral aumenta
Quando, no dia 21 de junho de 1948, o computador Baby, de Manchester, rodou pela primeira vez um programa gravado em uma memória de tubo de raios catódicos para produzir um resultado correto, iniciou-se a era moderna da computação. Ao longo desses 60 anos, assistimos ao surgimento de um sem-número de alterações na arquitetura dos computadores, responsáveis por deixá-los mais flexíveis e mais fáceis de serem programadas.
A fim de verificar o quanto a tecnologia da computação avançou, podemos comparar algumas das características principais dos computadores de então e de hoje. O Baby (chamado oficialmente de SSEM, sigla em inglês para máquina experimental de pequena escala) ocupava várias estantes repletas de dispositivos eletrônicos conhecidos como válvulas termiônicas e obedecia a 700 instruções por segundo, consumindo cerca de 3,5 kW de energia elétrica.
Em 1985, o primeiro processador ARM executou 6 milhões de instruções por segundo e usou 0,1 W. Hoje, um computador embutido com consumo eficiente de energia, como o ARM968, ocupa 0,4 mm2 da superfície de uma placa de silício e realiza cerca de 200 milhões de instruções por segundo, consumindo 20 mW.
Uma forma de comparar essas máquinas computacionais se baseia na eficiência de seu consumo de energia, ou seja, quanto gasta para executar uma instrução -o equivalente, nos computadores, à medida de litros por quilômetro usada em carros. O Baby utilizava 5 joules por instrução, o ARM1, 15 nanojoules por instrução e o ARM968, 100 picojoules por instrução -uma melhora estarrecedora.
Uma das ironias do panorama atual é fato de que o mercado cresce tão rapidamente que a contribuição líquida dos produtos eletrônicos para o consumo global de energia também aumenta, apesar das crescentes melhorias no consumo de energia, que permitem a criação de usos cada vez mais atraentes para a tecnologia -ou, provavelmente, como resultado direto dessas mesmas melhorias.
Perto do limite
Em contrapartida, os custos de construir uma fábrica de chips e de projetar chips de ponta aumentam exponencialmente. As vantagens, porém, superam as desvantagens, e, para os que dispõem de carteiras gordas o suficiente para bancar o imenso investimento inicial, o negócio dos chips tem sido altamente lucrativo.
Mas o crescimento exponencial não se sustentará para sempre. Quando os transistores chegarem às dimensões atômicas, a atual tecnologia deixará de funcionar.
A menos que ocorra um salto hoje imprevisto rumo a uma tecnologia totalmente nova, o momento da desaceleração se encontra prestes a irromper. Ao longo da próxima década, as melhorias vão se tornar cada vez mais difíceis de serem realizadas, já que as leis físicas dos dispositivos minúsculos prevêem uma crescente dificuldade para controlá-los.
Esses fatores sugerem que o futuro não será simplesmente uma extrapolação do passado. Chegou a hora de os projetistas repensarem os pesos e contrapesos quanto ao uso mais adequado da tecnologia disponível.
Comentários