Sem resumo de edição
Linha 1: Linha 1:
= Conceito =
= Conceito =
l;ZXKkZxZ:xkZ:
Computação paralela é uma forma de computação que opera sob o princípio de que grande problemas geralmente podem ser divididos em problemas menores, que então são resolvidos concorrentemente (em paralelo), em uma mesma máquina com multinúcleos ou multiprocesadores ou usando múltiplos computadores em rede para trabalhar em uma única tarefa. Isso é feito em busca maior desempenho, podendo realizar determinado número de tarefas em menor tempo.


= Concorrência =
= Concorrência =
Concorrência ou paralelismo potencial diz-se quando um programa possui tarefas que podem ser executadas em qualquer ordem sem alterar o resultado final. Assim, muitas delas podem ser processadas simultaneamente, reduzindo o tempo de execução dos programas.


= Comunicação e Sincronização =
= Comunicação e Sincronização =
A comunicação e a sincronização entre diferentes subtarefas é tipicamente uma das maiores barreiras para atingir grande desempenho em programas paralelos, pois a execução de determinada tarefa pode envolver o acesso a dados calculados por outras tarefas, sendo necessário que haja uma comunicação eficiente entre os núcleos de processamento. A comunicação dos processadores entre si e com as memórias pode ser implementada em hardware de várias formas, incluindo por memória compartilhada, barramento compartilhado ou uma rede interconectada.


= Linguagens de programação =
= Linguagens de programação =
Linguagens de programação de memória compartilhada se comunicam ao manipularem variáveis de memória compartilhada. Exemplos de uso do modelo incluem POSIX Threads e OpenMP. Já a memória distribuída faz uso de troca de mensagens. Exemplos de uso do modelo incluem Message Passing Interface. Um conceito usado em na programação paralela é o valor futuro, quando uma parte do programa promete processar dados para outra parte de um programa em um momento futuro.


= Aplicações =
= Aplicações =


= Referências =
= Referências =

Edição das 11h58min de 13 de novembro de 2013

Conceito

Computação paralela é uma forma de computação que opera sob o princípio de que grande problemas geralmente podem ser divididos em problemas menores, que então são resolvidos concorrentemente (em paralelo), em uma mesma máquina com multinúcleos ou multiprocesadores ou usando múltiplos computadores em rede para trabalhar em uma única tarefa. Isso é feito em busca maior desempenho, podendo realizar determinado número de tarefas em menor tempo.

Concorrência

Concorrência ou paralelismo potencial diz-se quando um programa possui tarefas que podem ser executadas em qualquer ordem sem alterar o resultado final. Assim, muitas delas podem ser processadas simultaneamente, reduzindo o tempo de execução dos programas.

Comunicação e Sincronização

A comunicação e a sincronização entre diferentes subtarefas é tipicamente uma das maiores barreiras para atingir grande desempenho em programas paralelos, pois a execução de determinada tarefa pode envolver o acesso a dados calculados por outras tarefas, sendo necessário que haja uma comunicação eficiente entre os núcleos de processamento. A comunicação dos processadores entre si e com as memórias pode ser implementada em hardware de várias formas, incluindo por memória compartilhada, barramento compartilhado ou uma rede interconectada.

Linguagens de programação

Linguagens de programação de memória compartilhada se comunicam ao manipularem variáveis de memória compartilhada. Exemplos de uso do modelo incluem POSIX Threads e OpenMP. Já a memória distribuída faz uso de troca de mensagens. Exemplos de uso do modelo incluem Message Passing Interface. Um conceito usado em na programação paralela é o valor futuro, quando uma parte do programa promete processar dados para outra parte de um programa em um momento futuro.


Aplicações

Referências