Tecnología de programación paralela para informática de alto rendimiento
Si estás empezando, te recomiendo que aprendas programación MPI.
En la actualidad, la computación paralela incluye básicamente MPI, OPENMP, OPENCL, OPENGL y CUDA.
Si solo quieres experimentarlo, OPENMP es la forma más sencilla y puedes lograr efectos paralelos en una sola frase.
Puedo darte el código, pero tienes que coincidir con el entorno. Primero déjame escribirte un programa MPI de Hola Mundo.
#incluye & ltstdio.h & gt
#incluye & ltmpi.h & gt
int? ¿principal? (int? argc, char? *argv[])
{
int? mipido? , numprocs
MPI_Init(& argc & argv);? ///?Inicio paralelo
MPI_Comm_size(MPI_Comm_WORLD & num procs);? //Obtener el número de procesos
MPI_Comm_rank(MPI_Comm_WORLD&mypid);? //Obtiene el número de identificación del proceso.
printf("¿Hola? ¡Mundo!? ¿Yo? ¿Yo? %d? ¿Proceso? de? %d? procesos", mypid, num porcs); ;? //Fin paralelo
}Esta es la versión MPI del programa hola mundo. Debe asegurarse de tener varios procesos abiertos al mismo tiempo al compilar, digamos cuatro. El programa se puede ejecutar de la siguiente manera:
¡Hola mundo! Soy 2 procesos de 4 procesos
¡Hola mundo! Soy el proceso 0 del proceso 65438+4
¡Hola mundo! Soy 0 proceso de 4 procesos
¡Hola mundo! Soy 3 procesos de 4 procesos
¿Por qué es posible? Debido a que cuatro procesos están ejecutando el código anterior al mismo tiempo, el proceso que finalice primero generará primero.
Si quieres aprender programación paralela, te recomendamos que lo hagas en Linux.
Espero adoptar