aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC)
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Outros Autores: | , |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFRJ |
Texto Completo: | http://hdl.handle.net/11422/14716 |
Resumo: | A crescente adoção da arquitetura de microsserviços e a necessidade de comunicação entre linguagens distintas estimulou o desenvolvimento de novas soluções para a chamada de procedimento remoto (RPC). A diversidade de necessidades e propósitos resultou em uma variedade de implementações de RPC: algumas com foco na ergonomia de software; outras na abrangência de linguagens e funcionalidades; e, finalmente, uma parcela visando a eficiência em computação de alto desempenho (HPC). Nesse sentido, é apresentado neste trabalho um framework de RPC, de nome antena RPC (aRPC), com ênfase tanto no desempenho como na ergonomia de software, inspirado no framework gRPC, e que faz uso de novos serializadores e do protocolo de transporte QUIC para comunicação. Nas avaliações efetuadas, o aRPC obteve desempenho superior ao gRPC nos casos com grande quantidades de elementos nas estruturas de dados e quando os dados são mais heterogêneos e menos sintéticos. O framework proposto consegue ser até 7% mais rápido em relação ao gRPC, desde que as premissas descritas sejam respeitadas. Em situações com perda frequente de pacotes ou em redes de baixa qualidade, o aRPC possui desempenho muito superior ao gRPC, sendo até três vezes melhor no teste de vazão. Os resultados do aRPC abrem um campo de aplicação em sistemas de computação de alto desempenho e a resiliência apresentada faz com que seja uma opção interessante nos ambientes de IoT. Em termos gerais, o aRPC é competitivo quando comparado ao gRPC no contexto de HPC. Entretanto, o protocolo gRPC apresenta melhor desempenho para estruturas de dados mais simples e menos heterogêneas e para volumes de dados reduzidos. |
id |
UFRJ_d0731dad10e60508ecc88ecb1a1ed44d |
---|---|
oai_identifier_str |
oai:pantheon.ufrj.br:11422/14716 |
network_acronym_str |
UFRJ |
network_name_str |
Repositório Institucional da UFRJ |
repository_id_str |
|
spelling |
Soares, Ericson José da SilvaAlmeida, Raphael de CarvalhoVasconcellos, Vitor Augusto da Silvahttp://lattes.cnpq.br/8636301961155552http://lattes.cnpq.br/5257123607770167Menasché, Daniel Sadochttp://lattes.cnpq.br/9931198850020140Marcelino, Carolina Gilhttp://lattes.cnpq.br/3289676418940953Silva, Gabriel Pereira da2021-08-04T17:58:42Z2023-11-30T03:04:22Z2021-07-21http://hdl.handle.net/11422/14716Submitted by Elaine Almeida (elaine.almeida@nce.ufrj.br) on 2021-08-04T17:58:42Z No. of bitstreams: 1 EJSSoares.pdf: 1862255 bytes, checksum: f2729f849cfd960251ce03e1b3ad1d8e (MD5)Made available in DSpace on 2021-08-04T17:58:42Z (GMT). No. of bitstreams: 1 EJSSoares.pdf: 1862255 bytes, checksum: f2729f849cfd960251ce03e1b3ad1d8e (MD5) Previous issue date: 2021-07-21A crescente adoção da arquitetura de microsserviços e a necessidade de comunicação entre linguagens distintas estimulou o desenvolvimento de novas soluções para a chamada de procedimento remoto (RPC). A diversidade de necessidades e propósitos resultou em uma variedade de implementações de RPC: algumas com foco na ergonomia de software; outras na abrangência de linguagens e funcionalidades; e, finalmente, uma parcela visando a eficiência em computação de alto desempenho (HPC). Nesse sentido, é apresentado neste trabalho um framework de RPC, de nome antena RPC (aRPC), com ênfase tanto no desempenho como na ergonomia de software, inspirado no framework gRPC, e que faz uso de novos serializadores e do protocolo de transporte QUIC para comunicação. Nas avaliações efetuadas, o aRPC obteve desempenho superior ao gRPC nos casos com grande quantidades de elementos nas estruturas de dados e quando os dados são mais heterogêneos e menos sintéticos. O framework proposto consegue ser até 7% mais rápido em relação ao gRPC, desde que as premissas descritas sejam respeitadas. Em situações com perda frequente de pacotes ou em redes de baixa qualidade, o aRPC possui desempenho muito superior ao gRPC, sendo até três vezes melhor no teste de vazão. Os resultados do aRPC abrem um campo de aplicação em sistemas de computação de alto desempenho e a resiliência apresentada faz com que seja uma opção interessante nos ambientes de IoT. Em termos gerais, o aRPC é competitivo quando comparado ao gRPC no contexto de HPC. Entretanto, o protocolo gRPC apresenta melhor desempenho para estruturas de dados mais simples e menos heterogêneas e para volumes de dados reduzidos.porUniversidade Federal do Rio de JaneiroUFRJBrasilInstituto de ComputaçãoCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAOProcessamento eletrônico de dadosComputação de alto desempenhoSistemas distribuídosaRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC)info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisabertoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRJinstname:Universidade Federal do Rio de Janeiro (UFRJ)instacron:UFRJLICENSElicense.txtlicense.txttext/plain; charset=utf-81853http://pantheon.ufrj.br:80/bitstream/11422/14716/2/license.txtdd32849f2bfb22da963c3aac6e26e255MD52ORIGINALEJSSoares.pdfEJSSoares.pdfapplication/pdf1862255http://pantheon.ufrj.br:80/bitstream/11422/14716/1/EJSSoares.pdff2729f849cfd960251ce03e1b3ad1d8eMD5111422/147162023-11-30 00:04:22.201oai:pantheon.ufrj.br:11422/14716TElDRU7Dh0EgTsODTy1FWENMVVNJVkEgREUgRElTVFJJQlVJw4fDg08KCkFvIGFzc2luYXIgZSBlbnRyZWdhciBlc3RhIGxpY2Vuw6dhLCB2b2PDqihzKSBvKHMpIGF1dG9yKGVzKSBvdSBwcm9wcmlldMOhcmlvKHMpIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBjb25jZWRlKG0pIGFvIFJlcG9zaXTDs3JpbyBQYW50aGVvbiBkYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkbyBSaW8gZGUgSmFuZWlybyAoVUZSSikgbyBkaXJlaXRvIG7Do28gLSBleGNsdXNpdm8gZGUgcmVwcm9kdXppciwgY29udmVydGVyIChjb21vIGRlZmluaWRvIGFiYWl4byksIGUvb3UgZGlzdHJpYnVpciBvIGRvY3VtZW50byBlbnRyZWd1ZSAoaW5jbHVpbmRvIG8gcmVzdW1vKSBlbSB0b2RvIG8gbXVuZG8sIGVtIGZvcm1hdG8gZWxldHLDtG5pY28gZSBlbSBxdWFscXVlciBtZWlvLCBpbmNsdWluZG8sIG1hcyBuw6NvIGxpbWl0YWRvIGEgw6F1ZGlvIGUvb3UgdsOtZGVvLgoKVm9jw6ogY29uY29yZGEgcXVlIGEgVUZSSiBwb2RlLCBzZW0gYWx0ZXJhciBvIGNvbnRlw7pkbywgdHJhZHV6aXIgYSBhcHJlc2VudGHDp8OjbyBkZSBxdWFscXVlciBtZWlvIG91IGZvcm1hdG8gY29tIGEgZmluYWxpZGFkZSBkZSBwcmVzZXJ2YcOnw6NvLgoKVm9jw6ogdGFtYsOpbSBjb25jb3JkYSBxdWUgYSBVRlJKIHBvZGUgbWFudGVyIG1haXMgZGUgdW1hIGPDs3BpYSBkZXNzYSBzdWJtaXNzw6NvIHBhcmEgZmlucyBkZSBzZWd1cmFuw6dhLCBiYWNrLXVwIGUgcHJlc2VydmHDp8OjbyBkaWdpdGFsLgoKRGVjbGFyYSBxdWUgbyBkb2N1bWVudG8gZW50cmVndWUgw6kgc2V1IHRyYWJhbGhvIG9yaWdpbmFsLCBlIHF1ZSB2b2PDqiB0ZW0gbyBkaXJlaXRvIGRlIGNvbmNlZGVyIG9zIGRpcmVpdG9zIGNvbnRpZG9zIG5lc3RhIGxpY2Vuw6dhLiBWb2PDqiB0YW1iw6ltIGRlY2xhcmEgcXVlIGEgc3VhIGFwcmVzZW50YcOnw6NvLCBjb20gbyBtZWxob3IgZGUgc2V1cyBjb25oZWNpbWVudG9zLCBuw6NvIGluZnJpbmdpIGRpcmVpdG9zIGF1dG9yYWlzIGRlIHRlcmNlaXJvcy4KClNlIG8gZG9jdW1lbnRvIGVudHJlZ3VlIGNvbnTDqW0gbWF0ZXJpYWwgZG8gcXVhbCB2b2PDqiBuw6NvIHRlbSBkaXJlaXRvcyBkZSBhdXRvciwgZGVjbGFyYSBxdWUgb2J0ZXZlIGEgcGVybWlzc8OjbyBpcnJlc3RyaXRhIGRvIGRldGVudG9yIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBlIGNvbmNlZGUgYSBVRlJKIG9zIGRpcmVpdG9zIHJlcXVlcmlkb3MgcG9yIGVzdGEgbGljZW7Dp2EsIGUgcXVlIGVzc2UgbWF0ZXJpYWwgZGUgcHJvcHJpZWRhZGUgZGUgdGVyY2Vpcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIGUgcmVjb25oZWNpZG8gbm8gdGV4dG8gb3UgY29udGXDumRvIGRhIHN1Ym1pc3PDo28uCgpTZSBvIGRvY3VtZW50byBlbnRyZWd1ZSDDqSBiYXNlYWRvIGVtIHRyYWJhbGhvIHF1ZSBmb2ksIG91IHRlbSBzaWRvIHBhdHJvY2luYWRvIG91IGFwb2lhZG8gcG9yIHVtYSBhZ8OqbmNpYSBvdSBvdXRybyhzKSBvcmdhbmlzbW8ocykgcXVlIG7Do28gYSBVRlJKLCB2b2PDqiBkZWNsYXJhIHF1ZSBjdW1wcml1IHF1YWxxdWVyIGRpcmVpdG8gZGUgUkVWSVPDg08gb3UgZGUgb3V0cmFzIG9icmlnYcOnw7VlcyByZXF1ZXJpZGFzIHBvciBjb250cmF0byBvdSBhY29yZG8uCgpBIFVGUkogaXLDoSBpZGVudGlmaWNhciBjbGFyYW1lbnRlIG8ocykgc2V1KHMpIG5vbWUocykgY29tbyBhdXRvcihlcykgb3UgcHJvcHJpZXTDoXJpbyhzKSBkYSBzdWJtaXNzw6NvLCBlIG7Do28gZmFyw6EgcXVhbHF1ZXIgYWx0ZXJhw6fDo28sIHBhcmEgYWzDqW0gZGFzIHBlcm1pdGlkYXMgcG9yIGVzdGEgbGljZW7Dp2EsIG5vIGF0byBkZSBzdWJtaXNzw6NvLgo=Repositório de PublicaçõesPUBhttp://www.pantheon.ufrj.br/oai/requestopendoar:2023-11-30T03:04:22Repositório Institucional da UFRJ - Universidade Federal do Rio de Janeiro (UFRJ)false |
dc.title.pt_BR.fl_str_mv |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
title |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
spellingShingle |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) Soares, Ericson José da Silva CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO Processamento eletrônico de dados Computação de alto desempenho Sistemas distribuídos |
title_short |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
title_full |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
title_fullStr |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
title_full_unstemmed |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
title_sort |
aRPC (Antenna RPC): um framework de chamada de procedimento remoto (RPC) para uso em computação de alto desempenho (HPC) |
author |
Soares, Ericson José da Silva |
author_facet |
Soares, Ericson José da Silva Almeida, Raphael de Carvalho Vasconcellos, Vitor Augusto da Silva |
author_role |
author |
author2 |
Almeida, Raphael de Carvalho Vasconcellos, Vitor Augusto da Silva |
author2_role |
author author |
dc.contributor.advisorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/8636301961155552 |
dc.contributor.authorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/5257123607770167 |
dc.contributor.author.fl_str_mv |
Soares, Ericson José da Silva Almeida, Raphael de Carvalho Vasconcellos, Vitor Augusto da Silva |
dc.contributor.referee1.fl_str_mv |
Menasché, Daniel Sadoc |
dc.contributor.referee1Lattes.fl_str_mv |
http://lattes.cnpq.br/9931198850020140 |
dc.contributor.referee2.fl_str_mv |
Marcelino, Carolina Gil |
dc.contributor.referee2Lattes.fl_str_mv |
http://lattes.cnpq.br/3289676418940953 |
dc.contributor.advisor1.fl_str_mv |
Silva, Gabriel Pereira da |
contributor_str_mv |
Menasché, Daniel Sadoc Marcelino, Carolina Gil Silva, Gabriel Pereira da |
dc.subject.cnpq.fl_str_mv |
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
topic |
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO Processamento eletrônico de dados Computação de alto desempenho Sistemas distribuídos |
dc.subject.por.fl_str_mv |
Processamento eletrônico de dados Computação de alto desempenho Sistemas distribuídos |
description |
A crescente adoção da arquitetura de microsserviços e a necessidade de comunicação entre linguagens distintas estimulou o desenvolvimento de novas soluções para a chamada de procedimento remoto (RPC). A diversidade de necessidades e propósitos resultou em uma variedade de implementações de RPC: algumas com foco na ergonomia de software; outras na abrangência de linguagens e funcionalidades; e, finalmente, uma parcela visando a eficiência em computação de alto desempenho (HPC). Nesse sentido, é apresentado neste trabalho um framework de RPC, de nome antena RPC (aRPC), com ênfase tanto no desempenho como na ergonomia de software, inspirado no framework gRPC, e que faz uso de novos serializadores e do protocolo de transporte QUIC para comunicação. Nas avaliações efetuadas, o aRPC obteve desempenho superior ao gRPC nos casos com grande quantidades de elementos nas estruturas de dados e quando os dados são mais heterogêneos e menos sintéticos. O framework proposto consegue ser até 7% mais rápido em relação ao gRPC, desde que as premissas descritas sejam respeitadas. Em situações com perda frequente de pacotes ou em redes de baixa qualidade, o aRPC possui desempenho muito superior ao gRPC, sendo até três vezes melhor no teste de vazão. Os resultados do aRPC abrem um campo de aplicação em sistemas de computação de alto desempenho e a resiliência apresentada faz com que seja uma opção interessante nos ambientes de IoT. Em termos gerais, o aRPC é competitivo quando comparado ao gRPC no contexto de HPC. Entretanto, o protocolo gRPC apresenta melhor desempenho para estruturas de dados mais simples e menos heterogêneas e para volumes de dados reduzidos. |
publishDate |
2021 |
dc.date.accessioned.fl_str_mv |
2021-08-04T17:58:42Z |
dc.date.issued.fl_str_mv |
2021-07-21 |
dc.date.available.fl_str_mv |
2023-11-30T03:04:22Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/11422/14716 |
url |
http://hdl.handle.net/11422/14716 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal do Rio de Janeiro |
dc.publisher.initials.fl_str_mv |
UFRJ |
dc.publisher.country.fl_str_mv |
Brasil |
dc.publisher.department.fl_str_mv |
Instituto de Computação |
publisher.none.fl_str_mv |
Universidade Federal do Rio de Janeiro |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRJ instname:Universidade Federal do Rio de Janeiro (UFRJ) instacron:UFRJ |
instname_str |
Universidade Federal do Rio de Janeiro (UFRJ) |
instacron_str |
UFRJ |
institution |
UFRJ |
reponame_str |
Repositório Institucional da UFRJ |
collection |
Repositório Institucional da UFRJ |
bitstream.url.fl_str_mv |
http://pantheon.ufrj.br:80/bitstream/11422/14716/2/license.txt http://pantheon.ufrj.br:80/bitstream/11422/14716/1/EJSSoares.pdf |
bitstream.checksum.fl_str_mv |
dd32849f2bfb22da963c3aac6e26e255 f2729f849cfd960251ce03e1b3ad1d8e |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRJ - Universidade Federal do Rio de Janeiro (UFRJ) |
repository.mail.fl_str_mv |
|
_version_ |
1784097211478441984 |