A programming language for parallel event-driven development

Detalhes bibliográficos
Autor(a) principal: Rafael, João Pedro Maia
Data de Publicação: 2013
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10316/35550
Resumo: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia da Universidade de Coimbra
id RCAP_f761714b1914e583dfe2dfce453c3d4d
oai_identifier_str oai:estudogeral.uc.pt:10316/35550
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling A programming language for parallel event-driven developmentparallel languagesevent-driven programmingshared memoryruntime systemsDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia da Universidade de CoimbraRecently, event-oriented programming frameworks have surfaced as a solution to highly scalable network applications. This model as been adopted under many languages resulting in frameworks such as Node.js, Gevent and EventMachine. These frameworks are capable of handling many concurrent requests by using asynchronous IO. However, in order to make use all available cores, parallelism is exploited by creating multiple instances of the same application. Under this solution instances don’t share memory making synchronization mechanisms required. The same problem applies when using the actor model for concurrency. The EVE framework provides support for event-oriented programming under a shared-memory model. It encompasses the EVE language definition, its compiler and a runtime system capable of executing the resulting applications. Using our model, the programmer divides the application logic into tasks and each task indicates what variables it can access. The runtime schedules compatible tasks to multiple cores using a work-stealing algorithm for load balancing. In this work, we present a formal description of the language and it’s runtime, including their operational semantics. Our benchmarks indicate that our solution delivers the best performance on IO heavy problems when compared to existing of-the-shelf solutions and performance comparable to the state-of-the-art architectures for CPU-bounded applications.2013-09-11info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/35550http://hdl.handle.net/10316/35550TID:201539225engRafael, João Pedro Maiainfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2022-05-25T04:31:30Zoai:estudogeral.uc.pt:10316/35550Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T20:54:23.245332Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv A programming language for parallel event-driven development
title A programming language for parallel event-driven development
spellingShingle A programming language for parallel event-driven development
Rafael, João Pedro Maia
parallel languages
event-driven programming
shared memory
runtime systems
title_short A programming language for parallel event-driven development
title_full A programming language for parallel event-driven development
title_fullStr A programming language for parallel event-driven development
title_full_unstemmed A programming language for parallel event-driven development
title_sort A programming language for parallel event-driven development
author Rafael, João Pedro Maia
author_facet Rafael, João Pedro Maia
author_role author
dc.contributor.author.fl_str_mv Rafael, João Pedro Maia
dc.subject.por.fl_str_mv parallel languages
event-driven programming
shared memory
runtime systems
topic parallel languages
event-driven programming
shared memory
runtime systems
description Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia da Universidade de Coimbra
publishDate 2013
dc.date.none.fl_str_mv 2013-09-11
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10316/35550
http://hdl.handle.net/10316/35550
TID:201539225
url http://hdl.handle.net/10316/35550
identifier_str_mv TID:201539225
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799133831055278080