Close de um chip de processador na placa-mãe de um computador
Crédito da imagem: Riccardo_Mojana / iStock / Getty Images
O processamento paralelo e serial descreve se um sistema de computador pode quebrar tarefas computacionais para usar vários processadores ou núcleos simultaneamente ou se for dependente da conclusão de tarefas com um único processador testemunho. Todos os processadores de computador de consumidor individuais eram processadores seriais antes de meados de 2005, quando a Intel lançou o primeiro processador de núcleo duplo para consumidor. Vários processadores de núcleo único podem trabalhar juntos para lidar com o processamento serial por meio de clusters de computadores paralelos em rede ou executando vários processadores em uma placa-mãe.
Os computadores são máquinas multitarefa
Um computador moderno típico executa dezenas a centenas de tarefas a qualquer momento; entretanto, cada núcleo está trabalhando apenas em um processo por vez. O processador salta constantemente entre os diferentes "threads" ou "fluxos de instrução" de processamento para executar vários programas simultâneos sob uma ilusão de tempo real chamada simultaneidade. O computador acaba desperdiçando ciclos do processador ao alternar entre os trabalhos e não funciona com a eficiência ideal durante a multitarefa.
Vídeo do dia
Executando Tarefas em Paralelo
Um ambiente de processamento paralelo pode processar tarefas mais rapidamente quando os programas são projetados para usar processamento paralelo. Os programas seriais alinham todas as instruções em um arranjo serial e fazem interface com o processador usando um único thread. Os programas paralelos funcionam dividindo as tarefas em partes individuais que podem ser divididas entre vários núcleos do processador e remontadas como tarefas concluídas. Os processadores paralelos podem multiplicar o poder de processamento de processadores seriais com clock semelhante com código escrito corretamente. No entanto, um processador serial com uma velocidade de clock mais alta pode superar os processadores paralelos ao trabalhar com um único thread.
Processamento serial em ação
Os programas escritos para processamento serial usam apenas um núcleo de cada vez e processam as tarefas em ordem sequencial. Um processador serial funciona muito como ter uma dúzia de corredores de caixa abertos em uma mercearia com um caixa correndo entre as diferentes corredores, verificando todos ao mesmo tempo. O caixa, ou CPU, salta de uma faixa para outra verificando alguns itens por vez antes de passar para o próximo com o objetivo de concluir todos os pedidos ao mesmo tempo.
Processamento Paralelo em Ação
A ideia por trás dos processadores paralelos é que mais núcleos trabalhando juntos levarão a um melhor desempenho. Um processador paralelo se comporta como se mais de um caixa operasse em uma dúzia de corredores de checkout. Se um programa for configurado para aproveitar as vantagens do processamento paralelo, o "cliente" pode dividir seu pedido em grupos menores e usar várias vias de pagamento ao mesmo tempo.
Processadores paralelos expandem possibilidades
Em 2007, a Nvidia usou pela primeira vez o processamento paralelo para o avanço da tecnologia gráfica. As unidades de processamento gráfico usam processamento paralelo em um nível que supera o desempenho do processamento serial ao fazer pequenos cálculos. Enquanto as CPUs tendem a ter um número de núcleos facilmente contável, as GPUs podem ter milhares de núcleos de baixa potência que são mais adequados para executar cálculos simultâneos mais simples. As GPUs são comumente usadas para gráficos, mas podem fazer outros cálculos para coisas como classificação e álgebra de matriz.