O avanço da Computação Paralela
|
Veja nessa matéria como a Computação Paralela vem se tornando cada vez mais presente e porque um bom conhecimento nessa área, provavelmente, será crucial em sua carreira.
|
Primeiramente, o que seria Computação Paralela? Esta é um paradigma de computação que consiste, basicamente, na divisão de um problema em partes que podem ser resolvidas ao mesmo tempo, paralelamente. Essa forma de computação já vem sendo usada há certo tempo para a resolução de problemas de complexidade elevada e que precisam de uma quantidade considerável de poder de processamento. ![]() Cluster para computação de alto desempenho com 396 nós de processadores AMD Opteron funcionando em paralelo.
Porém, na atualidade, a Computação Paralela deixou de ser exclusivamente relacionada à computação de alto desempenho em mainframes e supercomputadores, alcançando não só as estações de trabalhos como, também, os populares computadores pessoais. As principais linhas de produtos dos dois maiores fabricantes de CPU para PC, Intel e AMD, consistem, atualmente, em processadores de múltiplos núcleos (multi-core). Neste tipo de CPU, cada núcleo (core) atua como se fosse um processador separado, embora esteja integrado aos outros num único chip. Dessa forma, um programa escrito apropriadamente pode dividir uma tarefa em partes e solucioná-las concorrentemente, utilizando mais de um núcleo do processador, diminuindo, assim, o tempo necessário para sua execução. ![]() Processadores multi-core. AMD e Intel trazendo hardware com suporte a Computação Paralela para as massas.
A principal motivação para o impulso da tecnologia multi-core e, em conseqüência, da Computação Paralela foi a crescente dificuldade para conseguir o aumento da frequência de clock dos processadores e os problemas de dissipação térmica, que fizeram com que essa tecnologia se tornasse uma alternativa viável, no mínimo em curto prazo, para se manter a conhecida Lei de Moore. É interessante ressaltar que ainda não há um consenso geral sobre o significado dos termos concorrência e paralelismo no âmbito da computação, existindo aqueles que consideram os termos como equivalentes e outros que diferenciam os dois, sem também haver consenso entre os que os diferenciam [1] [2] [3]. A comunidade acadêmica já vem notando essa rápida popularização da Computação Paralela e, como prova disso, a ACM (Association for Computing Machinery), no final de 2008, lançou uma nova versão do seu currículo sugerido para os cursos de Ciência da Computação, a partir da qual uma das três principais tendências citadas é o “aumento da relevância da programação concorrente”, devido em grande parte ao desenvolvimento de processadores multi-core. Nesse mesmo documento, é previsto ainda que o papel do paradigma concorrente crescerá cada vez mais e que isso influenciará as outras áreas da Ciência da Computação. Outra tendência na computação que tanto se beneficia da Computação Paralela quanto a impulsiona é a “computação nas nuvens”. O gerenciamento e funcionamento de todos os servidores interligados necessários para suportar a demanda de inúmeros usuários a um sistema de “computação nas nuvens” é objeto direto de estudo da Computação Paralela. Como exemplo de aplicação do paradigma computacional paralelo, tem-se o Intel Infoscape, demonstrado na CES 2010, famosa exposição de eletrônicos, que consiste em um painel gigante sensível ao toque em formato cúbico e que permite a manipulação, em tempo real, de vários cubos virtuais contendo informações da internet. Todo esse sistema é executado por um notebook com um processador multi-core. ![]()
Intel Infoscape, todo o sistema é processado por apenas um notebook. Assista aqui ao vídeo.
Existe também outra nova tecnologia de custo acessível que traz um grande poder de processamento paralelo, o GPGPU (General-Purpose computing on Graphics Processing Units), que permite a utilização de placas de vídeo para processamento paralelo. Esta tecnologia já está sendo usada com bons resultados na área de Ciência da Computação Molecular, como na fabricação de substâncias de limpeza. Veja aqui o vídeo. Finalmente, pode-se ver que a necessidade de se ter pelo menos um conhecimento mínimo da área da Computação Paralela é indiscutível, considerando a altíssima probabilidade desta se tornar um dos principais paradigmas computacionais num futuro próximo. Alguns links para os interessados em aprender mais sobre Computação Paralela: - Introdução a Computação Paralela - Review de tecnologias GPGPU da AMD e Nvidia |
Por Victor Freire (victor@dsc.ufcg.edu.br) |