( Aviso: visões um tanto tendenciosas, simplificações excessivas e generalizações flagrantes à frente. )
Frequentemente, a diferença entre computação distribuída e computação paralela pode ser resumida da seguinte forma:
- Na computação distribuída , as principais medidas de complexidade estão relacionadas aos fluxos de comunicação e informação : quantas rodadas de comunicação ("tempo"); quantos bits transmitidos.
- Na computação paralela , as principais medidas de complexidade estão relacionadas ao processamento da computação e da informação : quantas etapas elementares ("tempo"); quantos bits armazenados.
Se você adota essa perspectiva, geralmente acontece que, para modelar sistemas distribuídos, não importa realmente que tipo de poder computacional seus nós (ou processadores ou computadores) possuem.
O(n)
XX
TT
Portanto, o uso de máquinas de Turing como ponto de partida para modelar sistemas distribuídos me parece um pouco natural: se esse é um aspecto irrelevante, por que construir tudo sobre ele? Por outro lado, na computação paralela isso seria natural (exceto que o modelo geralmente é algo como PRAM em vez de máquinas de Turing).