¿Ya se demostró / descubrió en física que la computadora basada en paralelismo no determinista no se puede implementar?

Por el contrario, la mayoría de las computadoras paralelas que construimos no son deterministas; lo más probable es que esté leyendo esta respuesta en una de ellas. Tienden a demostrar su no determinismo cada vez que pasa por alto algunos detalles en su programa paralelo.

Considere este programa trivial en C, que usa MPI para ejecución paralela:

#include
#include

int main (int argc, char ** argv)
{
rango int, tamaño;
MPI_Init (& argc, & argv);
MPI_Comm_rank (MPI_COMM_WORLD, y rango);
MPI_Comm_size (MPI_COMM_WORLD, y tamaño);
printf (“Hola desde el rango% d de% d \ n”, rango, tamaño);
MPI_Finalize ();
}

Todo lo que hace es generar el número de procesos paralelos que le pides y hacer que cada uno de ellos informe su propio identificador único ( rango ). Voy a compilarlo y ejecutarlo dos veces, usando todos los núcleos de mi computadora portátil de 4 vías en paralelo:

% make CC = mpicc hola
mpicc hola.c -o hola

% mpirun -np 4 hola
Hola desde el rango 0 de 4
Hola desde el rango 2 de 4
Hola desde el rango 3 de 4
Hola desde el rango 1 de 4

% mpirun -np 4 hola
Hola desde el rango 1 de 4
Hola desde el rango 0 de 4
Hola desde el rango 2 de 4
Hola desde el rango 3 de 4

Como ningún mecanismo de sincronización fuerza ninguna secuencia en la salida, estos 4 procesos alcanzan la declaración ‘ printf ‘ en un orden impredecible y responden a medida que llegan. Por lo tanto, no puede saber si el mismo programa producirá resultados diferentes para ejecuciones consecutivas con la misma entrada. No es porque el programa sea incorrecto, se define de manera válida de esta manera.

Sin mecanismos para la exclusión / sincronización mutua, la computación paralela se vuelve no determinista con mucha facilidad.

More Interesting

¿Qué sucede si dos individuos diferentes encuentran la posición y el momento de un electrón en el mismo instante?

¿Qué es la longitud de dispersión?

¿Cuál es la relación entre el entrelazamiento cuántico y un experimento de doble rendija?

¿Todos los orbitales en el mismo nivel de energía, es decir, período, tienen la misma energía? ¿Eso significa que todos los orbitales en una subshell están degenerados?

¿Cómo podemos usar la teoría funcional de la densidad para encontrar las propiedades de los fonones, y para qué se utiliza el DFTP?

Si soy mediocre al hacer un tipo de teoría (electrodinámica), ¿eso significa que seré malo en otras materias teóricas?

¿Cuál es la interpretación de la densidad de probabilidad de la ecuación de Schrodinger para partículas grandes como una pelota de golf?

Cómo explicar la paradoja de Einstein Podolsky Rosen con la teoría de la onda piloto

¿Cuáles son algunas aplicaciones interesantes del formalismo integral del camino de Feynman?

¿Cuál es la diferencia entre la teoría de dispersión clásica y la cuántica?

¿Cómo se relacionan la electrónica y la mecánica cuántica?

¿Hay algún experimento teorizado que prediga la existencia del cronón (también conocido como cantidad de tiempo)?

¿Por qué la desviación estándar es la medida estándar de incertidumbre en la mecánica cuántica?

¿Cuál es el concepto de universos paralelos? ¿Descansa en la física cuántica?

¿Existe una cantidad máxima de energía que pueda usarse para acelerar un sistema físico, después de lo cual cualquier energía adicional hace que el sistema se desmorone?