SlideShare uma empresa Scribd logo
1 de 11
Diseño de
Algoritmos
Paralelos
Pedro L. Rosario Dominguez
22-0972
Introducción
• Los algoritmos paralelos son algoritmos diseñados para
ejecutarse en sistemas paralelos, como
supercomputadoras, clústeres de computadoras y sistemas
de multiprocesamiento. Estos algoritmos se utilizan en
aplicaciones que requieren grandes cantidades de cómputo
y son importantes porque permiten que las aplicaciones se
ejecuten más rápido y manejen mayores cargas de trabajo.
Ejemplos de aplicaciones que se benefician de los
algoritmos paralelos incluyen simulaciones físicas,
procesamiento de imágenes y video, y análisis de big data.
Tipos de arquitecturas de computación
paralela
Existen dos tipos principales de arquitecturas de
computación paralela:
• Memoria compartida, todos los procesadores
comparten una sola memoria, lo que facilita el
intercambio de datos.
• Memoria distribuida, cada procesador tiene su propia
memoria, lo que significa que los procesadores deben
comunicarse explícitamente para intercambiar datos.
Ventajas y Desventajas
de cada tipo
Cada tipo de arquitectura tiene
ventajas y desventajas:
Las arquitecturas de memoria
compartida son más fáciles de
programar y manejar, pero pueden
ser menos escalables que las
arquitecturas de memoria
distribuida. Las arquitecturas de
memoria distribuida son más
escalables, pero pueden requerir
más trabajo para programar y
pueden tener un mayor costo de
comunicación.
Diseño de algoritmos
paralelos
El diseño de algoritmos paralelos implica la
identificación de oportunidades para la paralelización
y la creación de algoritmos que aprovechen esas
oportunidades. Las técnicas comunes de diseño son:
• División Y Conquista
• La Descomposición De Datos
• La Programación Dinámica Paralela
División Y Conquista
• La división y conquista implica dividir el
problema en subproblemas más pequeños
que pueden resolverse de forma
independiente
La Descomposición
De Datos
• La descomposición de datos implica
dividir los datos de entrada en partes
que se pueden procesar de forma
independiente.
La Programación
Dinámica
Paralela
• La programación dinámica
paralela implica la
aplicación de técnicas de
programación dinámica a
algoritmos paralelos.
Implementación de
algoritmos paralelos
La implementación de algoritmos
paralelos presenta desafíos únicos
debido a la necesidad de coordinar y
comunicar datos entre
procesadores. Las técnicas de
programación utilizadas para la
implementación de algoritmos
paralelos incluyen:
• La paralelización de bucles
• La asignación de tareas
• La sincronización de procesos.
Conclusión
El diseño de algoritmos paralelos es importante para la
computación de alto rendimiento y la mejora del rendimiento
de las aplicaciones. Los algoritmos paralelos aprovechan los
sistemas paralelos para permitir que las aplicaciones se
ejecuten más rápido y manejen mayores cargas de trabajo.
Las técnicas comunes de diseño y programación de
algoritmos paralelos incluyen la división y conquista, la
descomposición de datos y la programación dinámica
paralela. La implementación de algoritmos paralelos presenta
desafíos únicos debido a la necesidad de coordinar y
comunicar datos entre procesadores. Los ejemplos de
algoritmos paralelos incluyen la multiplicación de matrices, el
ordenamiento rápido y otras aplicaciones que requieren un
alto grado de paralelismo. En general, los algoritmos
paralelos ofrecen mejoras significativas en el rendimiento en
comparación con los algoritmos secuenciales y son esenciales
para muchas aplicaciones de alto rendimiento y gran escala.
Referencias
1. Grama, A., Gupta, A., Karypis, G., & Kumar, V. (2003). Introduction to parallel
computing (2nd ed.). Addison-Wesley.
2. Malek, M. A., & Fouda, M. M. (2018). Parallel algorithms: Principles and practice. CRC
Press.
3. Wilkinson, B., & Allen, M. (2017). Parallel programming: Techniques and applications
using networked workstations and parallel computers (2nd ed.). Pearson Education.
4. Kshemkalyani, A. D., & Singhal, M. (2011). Distributed computing: Principles,
algorithms, and systems. Cambridge University Press.
5. Solihin, Y. (2018). Fundamentals of parallel computer architecture: Multichip and
multicore systems. Cambridge University Press.

Mais conteúdo relacionado

Semelhante a Diseño de Algoritmos Paralelos-220972.pptx

Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....
Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....
Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....JhoanJavierDeLosSant
 
Presentacion Algoritmos Paralelos (2).pptx
Presentacion Algoritmos Paralelos (2).pptxPresentacion Algoritmos Paralelos (2).pptx
Presentacion Algoritmos Paralelos (2).pptxLaurialicValerio
 
Actividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosActividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosCarlosHung9
 
Categorias sistemas operativos
Categorias sistemas operativosCategorias sistemas operativos
Categorias sistemas operativosPATRICIOSANTIAGO
 
Diseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdfDiseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdfMarti44678
 
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.LaurialicValerio
 
exposicio_modelos _de _arquitectura.pptx
exposicio_modelos _de _arquitectura.pptxexposicio_modelos _de _arquitectura.pptx
exposicio_modelos _de _arquitectura.pptxmotocel013
 
Procesamiento Paralelo en programacion - Presentacion
Procesamiento Paralelo en programacion - PresentacionProcesamiento Paralelo en programacion - Presentacion
Procesamiento Paralelo en programacion - Presentaciondlagrupoproyecto
 
Clase De Fds22
Clase De Fds22Clase De Fds22
Clase De Fds22masa832
 
Diseño de algoritmos paralelos
Diseño de algoritmos paralelosDiseño de algoritmos paralelos
Diseño de algoritmos paralelosjm113
 
Diseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptxDiseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptxemilioSanchez89
 
DI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxDI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxEilynPrez
 
DI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxDI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxEilynPrez
 

Semelhante a Diseño de Algoritmos Paralelos-220972.pptx (20)

Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....
Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....
Actividad 14. Diseño de Algoritmos Paralelos - Jhoan De Los Santos (22-1005)....
 
Presentacion Algoritmos Paralelos (2).pptx
Presentacion Algoritmos Paralelos (2).pptxPresentacion Algoritmos Paralelos (2).pptx
Presentacion Algoritmos Paralelos (2).pptx
 
Actividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosActividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos Paralelos
 
Categorias sistemas operativos
Categorias sistemas operativosCategorias sistemas operativos
Categorias sistemas operativos
 
Presentación1
Presentación1Presentación1
Presentación1
 
Majitop
MajitopMajitop
Majitop
 
Majitop
MajitopMajitop
Majitop
 
Unidad 1 equipo 4
Unidad 1 equipo 4Unidad 1 equipo 4
Unidad 1 equipo 4
 
Diseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdfDiseño de Algoritmos Paralelos.pdf
Diseño de Algoritmos Paralelos.pdf
 
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.
Análisis y Diseño de Algoritmos - Presentacion Algoritmos Paralelos.
 
Base expo
Base expoBase expo
Base expo
 
exposicio_modelos _de _arquitectura.pptx
exposicio_modelos _de _arquitectura.pptxexposicio_modelos _de _arquitectura.pptx
exposicio_modelos _de _arquitectura.pptx
 
Procesamiento Paralelo en programacion - Presentacion
Procesamiento Paralelo en programacion - PresentacionProcesamiento Paralelo en programacion - Presentacion
Procesamiento Paralelo en programacion - Presentacion
 
Clase De Fds22
Clase De Fds22Clase De Fds22
Clase De Fds22
 
Diseño de algoritmos paralelos
Diseño de algoritmos paralelosDiseño de algoritmos paralelos
Diseño de algoritmos paralelos
 
Diseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptxDiseño de Algoritmos Paralelos.pptx
Diseño de Algoritmos Paralelos.pptx
 
Sensores paralelos
Sensores paralelosSensores paralelos
Sensores paralelos
 
3 unidad so2
3 unidad so23 unidad so2
3 unidad so2
 
DI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxDI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptx
 
DI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptxDI. Algoritmo Paralelos.pptx
DI. Algoritmo Paralelos.pptx
 

Último

Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidaddanik1023m
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2montoyagabriela340
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...OLGAMILENAMONTAEZNIO
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfangelinebocanegra1
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfcastrodanna185
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxPaolaCarolinaCarvaja
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.marianarodriguezc797
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....Aaron Betancourt
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfOBr.global
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfalejandrogomezescoto
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfodalistar77
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...RaymondCode
 
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSLincangoKevin
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx Emialexsolar
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfJoseAlejandroPerezBa
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETGermán Küber
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosLCristinaForchue
 

Último (19)

Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidad
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdf
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdf
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docx
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.
 
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier FolchBEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdf
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
 
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura SilvaBEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
 
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx E
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
 

Diseño de Algoritmos Paralelos-220972.pptx

  • 1. Diseño de Algoritmos Paralelos Pedro L. Rosario Dominguez 22-0972
  • 2. Introducción • Los algoritmos paralelos son algoritmos diseñados para ejecutarse en sistemas paralelos, como supercomputadoras, clústeres de computadoras y sistemas de multiprocesamiento. Estos algoritmos se utilizan en aplicaciones que requieren grandes cantidades de cómputo y son importantes porque permiten que las aplicaciones se ejecuten más rápido y manejen mayores cargas de trabajo. Ejemplos de aplicaciones que se benefician de los algoritmos paralelos incluyen simulaciones físicas, procesamiento de imágenes y video, y análisis de big data.
  • 3. Tipos de arquitecturas de computación paralela Existen dos tipos principales de arquitecturas de computación paralela: • Memoria compartida, todos los procesadores comparten una sola memoria, lo que facilita el intercambio de datos. • Memoria distribuida, cada procesador tiene su propia memoria, lo que significa que los procesadores deben comunicarse explícitamente para intercambiar datos.
  • 4. Ventajas y Desventajas de cada tipo Cada tipo de arquitectura tiene ventajas y desventajas: Las arquitecturas de memoria compartida son más fáciles de programar y manejar, pero pueden ser menos escalables que las arquitecturas de memoria distribuida. Las arquitecturas de memoria distribuida son más escalables, pero pueden requerir más trabajo para programar y pueden tener un mayor costo de comunicación.
  • 5. Diseño de algoritmos paralelos El diseño de algoritmos paralelos implica la identificación de oportunidades para la paralelización y la creación de algoritmos que aprovechen esas oportunidades. Las técnicas comunes de diseño son: • División Y Conquista • La Descomposición De Datos • La Programación Dinámica Paralela
  • 6. División Y Conquista • La división y conquista implica dividir el problema en subproblemas más pequeños que pueden resolverse de forma independiente
  • 7. La Descomposición De Datos • La descomposición de datos implica dividir los datos de entrada en partes que se pueden procesar de forma independiente.
  • 8. La Programación Dinámica Paralela • La programación dinámica paralela implica la aplicación de técnicas de programación dinámica a algoritmos paralelos.
  • 9. Implementación de algoritmos paralelos La implementación de algoritmos paralelos presenta desafíos únicos debido a la necesidad de coordinar y comunicar datos entre procesadores. Las técnicas de programación utilizadas para la implementación de algoritmos paralelos incluyen: • La paralelización de bucles • La asignación de tareas • La sincronización de procesos.
  • 10. Conclusión El diseño de algoritmos paralelos es importante para la computación de alto rendimiento y la mejora del rendimiento de las aplicaciones. Los algoritmos paralelos aprovechan los sistemas paralelos para permitir que las aplicaciones se ejecuten más rápido y manejen mayores cargas de trabajo. Las técnicas comunes de diseño y programación de algoritmos paralelos incluyen la división y conquista, la descomposición de datos y la programación dinámica paralela. La implementación de algoritmos paralelos presenta desafíos únicos debido a la necesidad de coordinar y comunicar datos entre procesadores. Los ejemplos de algoritmos paralelos incluyen la multiplicación de matrices, el ordenamiento rápido y otras aplicaciones que requieren un alto grado de paralelismo. En general, los algoritmos paralelos ofrecen mejoras significativas en el rendimiento en comparación con los algoritmos secuenciales y son esenciales para muchas aplicaciones de alto rendimiento y gran escala.
  • 11. Referencias 1. Grama, A., Gupta, A., Karypis, G., & Kumar, V. (2003). Introduction to parallel computing (2nd ed.). Addison-Wesley. 2. Malek, M. A., & Fouda, M. M. (2018). Parallel algorithms: Principles and practice. CRC Press. 3. Wilkinson, B., & Allen, M. (2017). Parallel programming: Techniques and applications using networked workstations and parallel computers (2nd ed.). Pearson Education. 4. Kshemkalyani, A. D., & Singhal, M. (2011). Distributed computing: Principles, algorithms, and systems. Cambridge University Press. 5. Solihin, Y. (2018). Fundamentals of parallel computer architecture: Multichip and multicore systems. Cambridge University Press.