Repository logo
 
Publication

Efficient data exchange between WebAssembly modules

dc.contributor.authorSilva, Lucas
dc.contributor.authorMetrôlho, J.C.M.M
dc.contributor.authorRibeiro, Fernando Reinaldo
dc.date.accessioned2024-10-11T15:28:39Z
dc.date.available2024-10-11T15:28:39Z
dc.date.issued2024
dc.description.abstractIn the past two decades, there has been a noticeable decoupling of machines and operating systems. In this context, WebAssembly has emerged as a promising alternative to traditional virtual machines. Originally designed for execution in web browsers, it has expanded to executing code in restricted and secure environments, and it stands out for its rapid startup, small footprint, and porta- bility. However, WebAssembly presents significant challenges in data transfer and the management of interactions with the module. Its specification requires each module to have its own memory, re- sulting in a “share-nothing” architecture. This restriction, combined with the limitations of importing and exporting functions that only handle numerical values, and the absence of an application binary interface (ABI) for sharing more complex data structures, leads to efficiency problems; these are exacerbated by the variety of programming languages that can be compiled and executed in the same environment. To address this inefficiency, the Karmem was designed and developed. It includes a new interface description language (IDL) aimed at facilitating the definition of data, functions, and relationships between modules. Additionally, a proprietary protocol—an optimized ABI for efficient data reading and minimal decoding cost—was created. A code generator capable of producing code for various programming languages was also conceived, ensuring harmonious interaction with the ABI and the foreign function interface. Finally, the compact runtime of Karmem, built atop a WebAssembly runtime, enables communication between modules and shared memory. Results of the experiments conducted show that Karmem represents an innovation in data communication for WASM in multiple environments and demonstrates the ability to overcome challenges of efficiency and interoperability.pt_PT
dc.description.sponsorshipThis work was funded by National Funds through the Foundation for Science and Technology (FCT), I.P., within the scope of the project UIDB/05583/2020 and DOI identifier https://doi.org/10.54499/UIDB/05583/2020. Furthermore, we would like to thank the Research Centre in Digital Services (CISeD) and the Instituto Politécnico de Viseu for their support.pt_PT
dc.description.versioninfo:eu-repo/semantics/publishedVersionpt_PT
dc.identifier.citationSILVA, Lucas ; METRÔLHO, José ; Fernando Ribeiro (2024) - "Efficient data exchange between WebAssembly modules". Future Internet. 16:9, p. 341. DOI: https://doi.org/10.3390/fi16090341pt_PT
dc.identifier.doi10.3390/fi16090341pt_PT
dc.identifier.issn1999-5903
dc.identifier.urihttp://hdl.handle.net/10400.11/9182
dc.language.isoengpt_PT
dc.peerreviewedyespt_PT
dc.publisherMDPIpt_PT
dc.relation.publisherversionhttps://www.mdpi.com/1999-5903/16/9/341pt_PT
dc.rights.urihttp://creativecommons.org/licenses/by/4.0/pt_PT
dc.subjectData-oriented designpt_PT
dc.subjectInter-process communicationpt_PT
dc.subjectPerformance optimizationpt_PT
dc.subjectSerializationpt_PT
dc.subjectWebAssemblypt_PT
dc.titleEfficient data exchange between WebAssembly modulespt_PT
dc.typejournal article
dspace.entity.typePublication
oaire.citation.issue9pt_PT
oaire.citation.startPage341pt_PT
oaire.citation.titleFuture Internetpt_PT
oaire.citation.volume16pt_PT
person.familyNameMetrôlho
person.familyNameReinaldo Silva Garcia Ribeiro
person.givenNameJosé Carlos
person.givenNameFernando
person.identifier1688084
person.identifier.ciencia-id4B17-3AF4-7DD4
person.identifier.ciencia-id7B1C-D761-291D
person.identifier.orcid0000-0002-7327-2109
person.identifier.orcid0000-0002-1225-3844
person.identifier.scopus-author-id6507997502
rcaap.rightsopenAccesspt_PT
rcaap.typearticlept_PT
relation.isAuthorOfPublication195ac9ea-6661-4217-addf-ac4bc5225f90
relation.isAuthorOfPublication165761b1-f958-4c13-b53f-ef0a4dde1d97
relation.isAuthorOfPublication.latestForDiscovery165761b1-f958-4c13-b53f-ef0a4dde1d97

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
futureinternet-16-00341.pdf
Size:
6.53 MB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
2.02 KB
Format:
Item-specific license agreed upon to submission
Description: