Estou me sentindo velho! Estou me sentindo velho agora!
Estou falando de tecnologia.
Até então, tudo o que eu tinha visto de novidades tecnológicas são aquelas que tu vês no mercado. E, assim, tinha a capacidade de comparar com aqueles equipamentos com os quais eu tive contato, ou que ouvi falar do meu pai, ou que, mais recentemente, posso ler na Wikipédia.
É muito comum olharmos pra trás e dizermos "nossa! Como as coisas mudaram!".
Estamos no futuro??? Sim!!! Estamos!!!
Ou... vai blogar! E vais acabar gerando mais informação! Ótimo! PDAs, laptops e celulares 3G... estão aí para isso!
Mas... por favor! Não faz parte da população que se sente ansiosa por ter acabado a bateria do celular e ficar desconectada do mundo! Pelo contrário: faz questão de deixá-lo assim, sem bateria. Deita, e ouve música. Ah... desculpa... eu esqueci que a tua única fonte de música é o mp3 do celular!
Não, amigos... não estou me sentindo velho por ter tanta acessibilidade surgindo, por ver amigos conectando-se no Orkut ou Facebook enquando tomam uma ceva na Lima e Silva. Pelo contrário.
Hoje tive uma "aula" com meu colega do CESUP, Benno Bodmann, sobre o que está por vir. Imaginem, por exemplo, a OpenCL. É uma nova linguagem de programação. Já tem nome. Hoje, o único problema dela é o seguinte: ela não existe.
Conhecidos de vocês podem já ter computadores com quatro núcleos de processamento, os "Quad-Core". Se tu compraste um laptop no último ano, posso ter certeza de que é, ao menos, um "Dual-Core", com dois núcleos. No entanto, como usuário doméstico, tu dificilmente usarás um programa que utilize, só ele, mais de um núcleo. Isso ainda é coisa do presente. Ainda!
O modo de processamento "serial", ou seja, de as informações serem transmitidas, calculadas, e lidas "em linha", uma atrás da outra, está prestes a se tornar coisa do passado. A partir de agora, há no máximo um ano, começaram a surgir centenas de cientistas da computação trabalhando para que as aplicações ou jogos que hoje utilizas sejam paralelizadas! Sim. Os dias dos núcleos com "uso de CPU" em 0% estão contados: processadores gráficos de nada menos que 240 núcleos de 64 bits estão sendo lançados (Nvidia Tesla S1070), bem como códigos e flags de paralelização passaram a ser desenvolvidos, como os que há no compilador gratuito Sun Studio.
Agora, imagina uma linguagem de programação, e não flags ou bibliotecas, mas uma liguagem totalmente nova, que será capaz de dividir os processos de um código em todos os núcleos das CPUs e das GPUs de um servidor ou, até mesmo, de um cluster (para computação de alta performance, se utilizando MPI). Imaginou? Não precisava. Eu já tinha te dito. Esta é a OpenCL. A compilação, feita no sistema em que o programa irá funcionar, será capaz de identificar todas as unidades de processamento e suas características para o melhor aproveitamento do código, puro.
Estou me sentindo velho, pois estou na época em que a Lei de Moore ainda é válida. Mas por pouco tempo. E o pessoal de CFD (Mecânica dos Fluidos Computacional), especialmente os que gostam de escoamentos turbulentos, vão gostar do que está por vir ainda mais do que eu!
12/02/2009
15:27 (GMT -2:00)
O modo de processamento "serial", ou seja, de as informações serem transmitidas, calculadas, e lidas "em linha", uma atrás da outra, está prestes a se tornar coisa do passado. A partir de agora, há no máximo um ano, começaram a surgir centenas de cientistas da computação trabalhando para que as aplicações ou jogos que hoje utilizas sejam paralelizadas! Sim. Os dias dos núcleos com "uso de CPU" em 0% estão contados: processadores gráficos de nada menos que 240 núcleos de 64 bits estão sendo lançados (Nvidia Tesla S1070), bem como códigos e flags de paralelização passaram a ser desenvolvidos, como os que há no compilador gratuito Sun Studio.
Agora, imagina uma linguagem de programação, e não flags ou bibliotecas, mas uma liguagem totalmente nova, que será capaz de dividir os processos de um código em todos os núcleos das CPUs e das GPUs de um servidor ou, até mesmo, de um cluster (para computação de alta performance, se utilizando MPI). Imaginou? Não precisava. Eu já tinha te dito. Esta é a OpenCL. A compilação, feita no sistema em que o programa irá funcionar, será capaz de identificar todas as unidades de processamento e suas características para o melhor aproveitamento do código, puro.
12/02/2009
15:27 (GMT -2:00)
A lei de Moore !!!
ResponderExcluirNo meu modo de ver está mesmo dando os últimos passos. Se quisermos aumentar a velocidade dos computadores num futuro muito próximo(100 anos), deveremos atacar pelos software, pois no meu mínimo conhecimento os hardware estão chegando no seu limite. !!!
O que dita a 'velocidade dos computadores' é o hardware. O software apenas vai ser capaz de aproveitar menos ou mais o recurso de hardware.
ResponderExcluir