La necesidad de separar las tareas informáticas y realizarlas simultáneamente (en paralelo) surgió mucho antes de la aparición de las primeras computadoras .
A finales del siglo XVIII en Francia, bajo la dirección de Gaspard de Prony , se comenzó a trabajar en el perfeccionamiento de las tablas logarítmicas y trigonométricas en relación con la transición al sistema métrico [1] . Para su implementación, se requirió una gran cantidad de cálculos en ese momento. Los ejecutores del proyecto se dividieron en tres niveles:
El trabajo no se completó debido a los acontecimientos revolucionarios de 1799 , sin embargo, las ideas de de Prony llevaron a Charles Babbage a crear la Máquina Analítica .
La solución para el modelo de la bomba atómica estadounidense fue obtenida por un equipo de científicos que utilizaron computadoras.
En 1962, E. V. Evreinov (ganador del Premio Lenin, 1957), junto con Yu. G. Kosarev en el Instituto de Matemáticas de la Rama Siberiana de la Academia Rusa de Ciencias, propusieron un modelo de computadoras colectivas y fundamentaron la posibilidad de construir supercomputadoras en los principios de ejecución paralela de operaciones, estructura lógica variable y homogeneidad constructiva. [2]
En 1973, John Schoch y John Hupp del centro de investigación Xerox PARC de California escribieron un programa que se ejecutaba en la PARC LAN por la noche y obligaba a las computadoras en funcionamiento a realizar cálculos [3] .
En 1977, en NSTU (Novosibirsk), en el Departamento de Ingeniería Informática, bajo la dirección de V. I. Zhiratkov, se desarrolló un sistema informático distribuido a partir de tres computadoras "Minsk-32" con hardware y software originales que admiten protocolos del canal físico. y niveles de red, y proporciona la ejecución de tareas paralelas. Una máquina estaba en el Centro de Computación de la Universidad Técnica Estatal de Novosibirsk, y las otras dos estaban en el Centro de Computación del Instituto de Matemáticas de la Rama Siberiana de la Academia Rusa de Ciencias. La comunicación entre la NSTU y el Instituto de Matemáticas de la Rama Siberiana de la Academia Rusa de Ciencias se proporcionó a través de un canal de radio utilizando antenas direccionales. El sistema se probó mientras resolvía problemas de optimización en el campo de la economía utilizando paralelización de bloques grandes.
En 1978, el matemático soviético V. M. Glushkov trabajó en el problema de la computación distribuida de macrocanales . Propuso una serie de principios para la distribución del trabajo entre procesadores [4] . Basado en estos principios, desarrolló la computadora ES-2701 .
En 1988, Arjen Lenstra y Mark Menes escribieron un programa para factorizar números largos. Para acelerar el proceso, el programa podía ejecutarse en varias máquinas, cada una de las cuales procesaba su propio fragmento pequeño. Se enviaron nuevos bloques de tareas a los ordenadores de los participantes desde el servidor central del proyecto por correo electrónico . Le tomó a esta comunidad dos años y varios cientos de computadoras personales para factorizar con éxito un número de cien dígitos [3] .
Con el advenimiento y el rápido desarrollo de Internet , la idea del uso voluntario para computación distribuida de computadoras de usuarios comunes conectados a través de Internet se ha vuelto cada vez más popular .
En enero de 1996, comenzó el proyecto GIMPS para encontrar números primos de Mersenne , utilizando las computadoras de los usuarios comunes como una red informática voluntaria .
El 28 de enero de 1997, se lanzó la competencia RSA Data Security para resolver el problema de la piratería simplemente enumerando una clave de cifrado de información RC5 de 56 bits . Gracias a una buena preparación técnica y organizativa, el proyecto, organizado por la comunidad sin fines de lucro distribuido.net , rápidamente se hizo ampliamente conocido [3] .
El 17 de mayo de 1999, sobre la base de la plataforma BOINC , se lanzó el proyecto SETI@home , que se dedica a la búsqueda de inteligencia extraterrestre mediante el análisis de datos de radiotelescopios utilizando una red informática voluntaria basada en Grid .
Proyectos de computación distribuida en Internet como SETI@Home y Folding@Home no tienen menos poder de cómputo que las supercomputadoras más modernas . La productividad integrada de los proyectos en la plataforma BOINC al 16 de mayo de 2010 es de 5,2 peta flops [5] . El rendimiento de la red Bitcoin alcanzó los 17 000 peta flops el 6 de octubre de 2013 [6] . A modo de comparación, el rendimiento máximo de la supercomputadora más poderosa (" computadora K ", Japón) es de 8,16 petaflops [7] . Hasta mediados de 2011, la supercomputadora más poderosa era Tianhe-1A con un rendimiento de "solo" 2,57 petaflops [8] . El proyecto figura en el Libro Guinness de los Récords como el cálculo más grande [9] .
Hasta la fecha, para simplificar el proceso de organización y gestión de la informática distribuida, se han creado muchos sistemas de software , tanto comerciales como gratuitos.