Anúncio
Anúncio

Mais conteúdo relacionado

Anúncio

Diseño de algoritmos paralelos

  1. D I S E Ñ O D E A L G O R I T M O S PA R A L E L O S Sustentado por: Javier Mordan Matricula: 22-0525 Dirigido a: Rina María Familia
  2. ¿ Q U È E S E L D I S E Ñ O D E A L G O R I T M O S PA R A L E L O S ? • El diseño de algoritmos paralelos es un área de la informática que se centra en el desarrollo de algoritmos que se ejecutan de manera simultánea en varios procesadores o núcleos de procesamiento.
  3. O B J E T I V O • El objetivo de los algoritmos paralelos es mejorar el rendimiento y la eficiencia de la computación al aprovechar el paralelismo inherente en las arquitecturas de hardware modernas.
  4. F O R M A S D E PA R A L E L I S M O
  5. PA R A L E L I S M O D E D AT O S • Este tipo de paralelismo se utiliza cuando una tarea se puede dividir en sub-tareas independientes que operan sobre diferentes conjuntos de datos. Cada sub-tarea se asigna a un procesador o núcleo de procesamiento diferente para su ejecución en paralelo. Ejemplos de algoritmos que aprovechan el paralelismo de datos son la clasificación, la multiplicación de matrices y la convolución.
  6. PA R A L E L I S M O D E TA R E A S • Este tipo de paralelismo se utiliza cuando una tarea se puede dividir en sub-tareas que no necesariamente operan sobre diferentes conjuntos de datos, pero que se pueden ejecutar simultáneamente para mejorar el rendimiento. Cada sub-tarea se asigna a un procesador o núcleo de procesamiento diferente para su ejecución en paralelo. Ejemplos de algoritmos que aprovechan el paralelismo de tareas son la búsqueda binaria, el ordenamiento por mezcla y la multiplicación de polinomios.
  7. PA R A L E L I S M O D E M E M O R I A C O M PA R T I D A • Este tipo de paralelismo se utiliza cuando varios procesadores o núcleos de procesamiento comparten una misma memoria. Los procesadores pueden acceder y modificar datos en la memoria compartida de forma simultánea, lo que puede resultar en una mejora de rendimiento en algoritmos que acceden frecuentemente a los mismos datos. Ejemplos de algoritmos que aprovechan el paralelismo de memoria compartida son la reducción, el cálculo de la media y la suma de vectores.
  8. PA R A L E L I S M O D E M E M O R I A D I S T R I B U I D A • Este tipo de paralelismo se utiliza cuando varios procesadores o núcleos de procesamiento tienen su propia memoria local y se comunican a través de una red. Cada procesador ejecuta una parte del algoritmo y se comunica con otros procesadores para compartir datos o realizar tareas en conjunto. Ejemplos de algoritmos que aprovechan el paralelismo de memoria distribuida son la resolución de sistemas lineales, el cálculo de valores propios y la simulación de sistemas físicos.
  9. • En general, la selección de la forma de paralelismo adecuada depende del algoritmo específico, la arquitectura de hardware y los recursos disponibles. Un buen diseño de algoritmos paralelos debe considerar cuidadosamente la forma de paralelismo más adecuada para la tarea a realizar.
  10. R E F E R E N C I A S B I B L I O G R À F I C A S • Introduction to Parallel Algorithms" por Joseph JaJa • Parallel Algorithm Design for Machine Learning" por Sebastian Raschka y Joshua Patterson • Parallel Algorithm Design for Network Science" por Mason A. Porter, Jukka-Pekka Onnela y Petter Holme • Parallel Algorithm Design" por Vivek Sarkar y Matthias Troyer
Anúncio