12 de fevereiro de 2009

Velho



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!!!

Estamos na era da Informação. Isso acaba gerando muita ansiedade. Nos dá a impressão de que não seremos capazes de opinar sobre tudo o que chega até nós. Mas eu te peço, por favor: não fica preocupado. Relaxa. Sabes por que? Porque... esquece! Tu não vais conseguir opinar, ou mesmo te inteirar de todas das novidades que chegam a ti. Tu já trabalhas bastante! Vai pegar um cinema! Vai tomar chimarrão no Parque da Redenção! Vai conversar com teu amigo sobre aquela guria cheia de "sex appeal".

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!


Agora podemos ter sistemas operacionais de altíssima estabilidade no nosso computador ou PDA, e gratuitos! Ah! Tens medo, né? Todas as tuas coisinhas e programas que mais utilizas estão no Windows! Eu te digo: virtualiza! Nada que o Sun VirtualBox não resolva!

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)

2 comentários:

  1. A lei de Moore !!!
    No 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. !!!

    ResponderExcluir
  2. 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

 
Nota de responsabilidade:
As informações contidas nesse blog têm caráter informativo, mas muitas vezes subjetivo, da mesma forma que as referências citadas. Afinal, quem cria e faz a Engenharia são sempre pessoas, e não livros. Recomenda-se análise crítica e pedem-se sugestões de correção se o leitor acreditar serem oportunas. O autor não se responsabiliza pelos comentários postados ou por qualquer consequência negativa resultante da utilização das informaçoes aqui contidas, de forma que o leitor deve usá-las sob sua própria conta e risco.
Licença Creative Commons
Mec. Flu., CFD e HPC de Marco Leonardelli Lovatto está sob uma Licença Creative Commons Atribuição-NãoComercial-CompartilhaIgual 3.0 Não Adaptada. Permite-se e incentiva-se a cópia, tradução e adaptação por qualquer meio, desde que para fins não comerciais, mantendo-se essas mesmas condições e fazendo referência ao link original do texto.