segunda-feira, 29 de junho de 2009

Going Parallel

A lei de Moore não é mais válida. Aquele crescimento exponencial em desempenho dos processadores cessou. A tecnologia de single core parece estar bem próxima de seu limite. Neste contexto, empresas como Intel e AMD resolveram mudar o paradigma. Já que um aumento de frequência não é mais "possível", colocar vários núcleos em um único chip tem sido a saída. Entretanto, grande parte dos aplicativos atuais não tiram proveito desse poder de processamento paralelo. Nem mesmo os programadores estão bem preparados para paralelizar, seja pela quantidade extra de código ou por não conhecerem formas abstrastas de pensar. Com isso o velho conceito de Map-Reduce (Mapear e Reduzir) de linguagens como LISP, vem ganhando bastante espaço. Além de oferecer uma abstração extremamente simples ("interface mental" simples), as interfaces de código simplificam muito o desenvolvimento de software paralelos.

Map-Reduce está sendo bastante utilizado nos "Clusters" do Google.

Para um introdução, visite o link:
http://labs.google.com/papers/mapreduce-osdi04-slides/index.html

Um comentário:

  1. modelo mental ao invés de interface mental!
    mas o LISP ser catalogado assim me surpreende.

    ResponderExcluir