On the specification and verification of the PCR parallel programming pattern in TLA+
Resumen:
Las limitaciones físicas en el diseño de procesadores han hecho que la industria informática desde 2005 pasara de mejorar la velocidad de un solo procesador a aumentar el número de unidades de proceso. Un diseño de software que explote la potencia de procesamiento paralelo de forma correcta y efectiva es una tarea desafiante que requiere un alto grado de experiencia. En 2017, Pérez y Yovine propusieron una herramienta basada en patrones de diseño para facilitar el desarrollo de software paralelo. En particular, la herramienta está basada en un patrón de programación paralela, agnóstico de la plataforma, denominado PCR, que describe las computaciones realizadas en forma concurrente por Productores, Consumidores y Reductores que se comunican entre sí. Este combina en un único patrón componible varios conceptos como operaciones colectivas, programación basada en flujos, iteración no acotada y recursividad. En la presente tesis se formaliza la semántica del patrón PCR en términos de TLA+. De esta manera, se puede aprovechar las herramientas asociadas a TLA+ para demostrar las propiedades de diseños de PCR de alto nivel, tales como su corrección funcional y refinamientos entre diferentes diseños de PCR. TLA+ es un lenguaje de especificación formal para sistemas concurrentes que se está utilizando en lugares como Intel, Amazon y Microsoft. Se contribuye al estado del arte en los refinamientos de programas paralelos a partir de modelos abstractos, especialmente utilizando una caracterización alternativa del patrón PCR general y el framework TLA+. La investigación que da origen a los resultados presentados en la presente tesis, recibió fondos de la Agencia Nacional de Investigación e Innovación bajo el código POS NAC 2018 1 152201.
2021 | |
PROYECTOS-MI DESARROLLO DE SOFTWARE ALGORITMO PARALELO SOFTWARE-DESARROLLO MÉTODOS FORMALES TLA+ DISEÑO DE PATRONES |
|
Inglés | |
Universidad ORT Uruguay | |
RAD | |
http://hdl.handle.net/20.500.11968/4555 | |
Acceso abierto |
_version_ | 1807261360866721792 |
---|---|
author | Solsona Giossa, José Eduardo |
author_facet | Solsona Giossa, José Eduardo |
author_role | author |
bitstream.checksum.fl_str_mv | 0e43340276437e8cccfaa0c5240b6aac 3bc0cc52137251713c15bec452d8699b |
bitstream.checksumAlgorithm.fl_str_mv | MD5 MD5 |
bitstream.url.fl_str_mv | https://rad.ort.edu.uy/bitstreams/c860c3d8-5ddd-4541-b912-bd6ef44d35e3/download https://rad.ort.edu.uy/bitstreams/07df6dcc-0a59-49a5-b6f7-354dddd20fc0/download |
collection | RAD |
dc.contributor.advisor.none.fl_str_mv | Tasistro Souto, Álvaro Daniel Yovine, Sergio Fabián |
dc.contributor.tribunal.none.fl_str_mv | Schneider, Gerardo Copello Gigirey, Ernesto Sebastián |
dc.creator.none.fl_str_mv | Solsona Giossa, José Eduardo |
dc.date.issued.none.fl_str_mv | 2021 |
dc.description.abstract.none.fl_txt_mv | Las limitaciones físicas en el diseño de procesadores han hecho que la industria informática desde 2005 pasara de mejorar la velocidad de un solo procesador a aumentar el número de unidades de proceso. Un diseño de software que explote la potencia de procesamiento paralelo de forma correcta y efectiva es una tarea desafiante que requiere un alto grado de experiencia. En 2017, Pérez y Yovine propusieron una herramienta basada en patrones de diseño para facilitar el desarrollo de software paralelo. En particular, la herramienta está basada en un patrón de programación paralela, agnóstico de la plataforma, denominado PCR, que describe las computaciones realizadas en forma concurrente por Productores, Consumidores y Reductores que se comunican entre sí. Este combina en un único patrón componible varios conceptos como operaciones colectivas, programación basada en flujos, iteración no acotada y recursividad. En la presente tesis se formaliza la semántica del patrón PCR en términos de TLA+. De esta manera, se puede aprovechar las herramientas asociadas a TLA+ para demostrar las propiedades de diseños de PCR de alto nivel, tales como su corrección funcional y refinamientos entre diferentes diseños de PCR. TLA+ es un lenguaje de especificación formal para sistemas concurrentes que se está utilizando en lugares como Intel, Amazon y Microsoft. Se contribuye al estado del arte en los refinamientos de programas paralelos a partir de modelos abstractos, especialmente utilizando una caracterización alternativa del patrón PCR general y el framework TLA+. La investigación que da origen a los resultados presentados en la presente tesis, recibió fondos de la Agencia Nacional de Investigación e Innovación bajo el código POS NAC 2018 1 152201. |
dc.description.none.fl_txt_mv | Incluye bibliografía y anexos. |
dc.format.extent.none.fl_str_mv | 352 p. tbls., diagrs., grafs. |
dc.identifier.citation.none.fl_str_mv | Solsona Giossa, J. E. (2021). On the specification and verification of the PCR parallel programming pattern in TLA+ (Desarrollo de Tesis). Universidad ORT Uruguay, Facultad de Ingeniería. |
dc.identifier.uri.none.fl_str_mv | http://hdl.handle.net/20.500.11968/4555 |
dc.language.iso.none.fl_str_mv | Inglés. eng |
dc.publisher.none.fl_str_mv | Universidad ORT Uruguay |
dc.relation.other.none.fl_str_mv | https://sisbibliotecas.ort.edu.uy/bib/91974 |
dc.rights.none.fl_str_mv | info:eu-repo/semantics/openAccess |
dc.source.none.fl_str_mv | reponame:RAD instname:Universidad ORT Uruguay instacron:Universidad ORT |
dc.subject.none.fl_str_mv | PROYECTOS-MI DESARROLLO DE SOFTWARE ALGORITMO PARALELO SOFTWARE-DESARROLLO MÉTODOS FORMALES TLA+ DISEÑO DE PATRONES |
dc.title.none.fl_str_mv | On the specification and verification of the PCR parallel programming pattern in TLA+ |
dc.type.none.fl_str_mv | Trabajo final de carrera info:eu-repo/semantics/bachelorThesis |
dc.type.version.none.fl_str_mv | info:eu-repo/semantics/publishedVersion |
description | Incluye bibliografía y anexos. |
eu_rights_str_mv | openAccess |
format | bachelorThesis |
id | RAD_512e26fcc727811f1bc39f8a93175d97 |
identifier_str_mv | Solsona Giossa, J. E. (2021). On the specification and verification of the PCR parallel programming pattern in TLA+ (Desarrollo de Tesis). Universidad ORT Uruguay, Facultad de Ingeniería. |
instacron_str | Universidad ORT |
institution | Universidad ORT |
instname_str | Universidad ORT Uruguay |
language | eng |
language_invalid_str_mv | Inglés. |
network_acronym_str | RAD |
network_name_str | RAD |
oai_identifier_str | oai:rad.ort.edu.uy:20.500.11968/4555 |
publishDate | 2021 |
publisher.none.fl_str_mv | Universidad ORT Uruguay |
reponame_str | RAD |
repository.mail.fl_str_mv | rodriguez_v@ort.edu.uy |
repository.name.fl_str_mv | RAD - Universidad ORT Uruguay |
repository_id_str | 3927 |
spelling | Tasistro Souto, Álvaro DanielYovine, Sergio FabiánSchneider, GerardoCopello Gigirey, Ernesto SebastiánSolsona Giossa, José Eduardo2021Incluye bibliografía y anexos.Las limitaciones físicas en el diseño de procesadores han hecho que la industria informática desde 2005 pasara de mejorar la velocidad de un solo procesador a aumentar el número de unidades de proceso. Un diseño de software que explote la potencia de procesamiento paralelo de forma correcta y efectiva es una tarea desafiante que requiere un alto grado de experiencia. En 2017, Pérez y Yovine propusieron una herramienta basada en patrones de diseño para facilitar el desarrollo de software paralelo. En particular, la herramienta está basada en un patrón de programación paralela, agnóstico de la plataforma, denominado PCR, que describe las computaciones realizadas en forma concurrente por Productores, Consumidores y Reductores que se comunican entre sí. Este combina en un único patrón componible varios conceptos como operaciones colectivas, programación basada en flujos, iteración no acotada y recursividad. En la presente tesis se formaliza la semántica del patrón PCR en términos de TLA+. De esta manera, se puede aprovechar las herramientas asociadas a TLA+ para demostrar las propiedades de diseños de PCR de alto nivel, tales como su corrección funcional y refinamientos entre diferentes diseños de PCR. TLA+ es un lenguaje de especificación formal para sistemas concurrentes que se está utilizando en lugares como Intel, Amazon y Microsoft. Se contribuye al estado del arte en los refinamientos de programas paralelos a partir de modelos abstractos, especialmente utilizando una caracterización alternativa del patrón PCR general y el framework TLA+. La investigación que da origen a los resultados presentados en la presente tesis, recibió fondos de la Agencia Nacional de Investigación e Innovación bajo el código POS NAC 2018 1 152201.352 p. tbls., diagrs., grafs.Solsona Giossa, J. E. (2021). On the specification and verification of the PCR parallel programming pattern in TLA+ (Desarrollo de Tesis). Universidad ORT Uruguay, Facultad de Ingeniería.http://hdl.handle.net/20.500.11968/4555Inglés.engUniversidad ORT Uruguayhttps://sisbibliotecas.ort.edu.uy/bib/91974PROYECTOS-MIDESARROLLO DE SOFTWAREALGORITMO PARALELOSOFTWARE-DESARROLLOMÉTODOS FORMALESTLA+DISEÑO DE PATRONESOn the specification and verification of the PCR parallel programming pattern in TLA+Trabajo final de carrerainfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionreponame:RADinstname:Universidad ORT Uruguayinstacron:Universidad ORTinfo:eu-repo/semantics/openAccessFI - Master en Ingeniería - MIFacultad de IngenieríaMasterMaster en IngenieríaDesarrollo de TesisDesarrollo de Tesis (Master). Universidad ORT Uruguay, Facultad de IngenieríaTHUMBNAILMaterial completo.pdf.jpgMaterial completo.pdf.jpgGenerated Thumbnailimage/jpeg3494https://rad.ort.edu.uy/bitstreams/c860c3d8-5ddd-4541-b912-bd6ef44d35e3/download0e43340276437e8cccfaa0c5240b6aacMD53ORIGINALMaterial completo.pdfMaterial completo.pdfdescriptionapplication/pdf3102326https://rad.ort.edu.uy/bitstreams/07df6dcc-0a59-49a5-b6f7-354dddd20fc0/download3bc0cc52137251713c15bec452d8699bMD5120.500.11968/45552024-07-22 16:08:29.359oai:rad.ort.edu.uy:20.500.11968/4555https://rad.ort.edu.uyUniversidadhttps://www.ort.edu.uy/https://rad.ort.edu.uy/server/oai/requestrodriguez_v@ort.edu.uyUruguayopendoar:39272024-07-22T16:08:29RAD - Universidad ORT Uruguayfalse |
spellingShingle | On the specification and verification of the PCR parallel programming pattern in TLA+ Solsona Giossa, José Eduardo PROYECTOS-MI DESARROLLO DE SOFTWARE ALGORITMO PARALELO SOFTWARE-DESARROLLO MÉTODOS FORMALES TLA+ DISEÑO DE PATRONES |
status_str | publishedVersion |
title | On the specification and verification of the PCR parallel programming pattern in TLA+ |
title_full | On the specification and verification of the PCR parallel programming pattern in TLA+ |
title_fullStr | On the specification and verification of the PCR parallel programming pattern in TLA+ |
title_full_unstemmed | On the specification and verification of the PCR parallel programming pattern in TLA+ |
title_short | On the specification and verification of the PCR parallel programming pattern in TLA+ |
title_sort | On the specification and verification of the PCR parallel programming pattern in TLA+ |
topic | PROYECTOS-MI DESARROLLO DE SOFTWARE ALGORITMO PARALELO SOFTWARE-DESARROLLO MÉTODOS FORMALES TLA+ DISEÑO DE PATRONES |
url | http://hdl.handle.net/20.500.11968/4555 |