Está en la página 1de 5

Maestría en Inteligencia Artificial Aplicada

Materia: Cómputo en la nube

Profesor: Dr. Eduardo Antonio Cendejas Castro

Tarea 1. Programación de una solución paralela

Integrante:

● Norma de los Ángeles García López - A01228278

Fecha de entrega: 29 de enero del 2023


Introducción
El trabajo que se presenta a continuación tiene como finalidad el ejemplificar el uso de un proceso
de paralelismo a través de un código de programación en C++. A manera de recordatorio que
paralelismo es el proceso de descomposición de una serie de instrucciones con el fin de
ejecutarlas de manera simultánea en distintos procesadores, por lo cual es sumamente
importante que estas instrucciones tengan concurrencia que se refiere a que las instrucciones
tienen dependencia y por lo tanto se pueden ejecutar en cualquier orden y a pesar de esto no
altere el resultado final.

Liga de Repositorio Github

https://github.com/normagl1/Computo_En_La_Nube/blob/main/SolucionParalelaTarea1.cpp

Capturas de pantalla de al menos dos ejecuciones del proyecto

Arreglo A, B y R

2
Arreglo a,b y c

3
Explicación del código y los resultados
Lo primero que se ejecuta en el código es la definición de las variables N, chunck y mostrar, en
donde N es la cantidad de elementos a manejar en los arreglos, chunk el tamaño que tendrán los
pedazos de los arreglos para que cada hilo creado se encargue de esta cantidad de elementos y
mostrar es la cantidad de datos a imprimir.

Después, se define la función imprimeArreglo, siendo esta creada para poder visualizar
correctamente los arreglos que serán creados y esta se define de tipo fload, para poder aceptar
tanto números enteros como números con decimales.

4
Posterior a esto, se realiza la creación de los arreglos, así como la asignación de los distintos
valores que tendrán los arreglos. Las instrucciones de #pragma omp parallel, es la parte
fundamente del código ya que es donde se establecen que se realizarán las instrucciones de
manera paralela por la librería OpenMP, así como los arreglos que están en los distintos hilos para
ejecutarse en la memoria compartida.

La serie de instrucciones
Al final de código, se establece los valores que irán dentro de la función imprimeArreglo, para que
esta muestre los arreglos creados previamente y poder evidenciar el funcionamiento del código.

Reflexión sobre la programación paralela


Derivado de las tendencias tecnológicas y sociales que tenemos actualmente, acerca de obtener la
información y/o resultados de forma inmediata, ha ocasionado que las implementaciones de
paralelismo tengan un mayor foco de atención, ya que el uso correcto de este permite la
reducción en los tiempos de procesamiento, dado que se realizan múltiples instrucciones de
manera simultánea permitiendo de esta manera obtener resultados con mayor inmediatez que
antes. Pero como se menciona en la sección de introducción, para poder realizar la ejecución del
paralelismo, se debe de evaluar si las instrucciones tienen la característica de concurrencia, esto
para que el resultado que se obtenga sea fiable independientemente del orden en que se
ejecutan las instrucciones.

Bibliografía
Programación Paralela: http://ferestrepoca.github.io/paradigmas-deprogramacion/
paralela/paralela_teoria/index.html, Fabián Bernal, Camilo Albarracín, Juan
Gaona, Luis Giraldo, Camilo Mosquera, Santiago Peña, YelianaTorres, Juan Ovalle, José
Nieto, Diego Chacón, Samael Salcedo, Antonio Suarez, Diego Cortés, Jose Pinzón, Pedro
Higuera, Cristian Baquero
• Paralelismo en C++, Luis Miguel Sánchez
• Laboratorio de paralelismo, Dr. Javier Muguerza y Dr. Agustin Arruabarrena

También podría gustarte