Design and Implementation of a Multithreaded Virtual Machine for Executing Linear Logic Programs

dc.contributor.author Flávio Fernandes Cruz en
dc.contributor.author Ricardo Rocha en
dc.contributor.author Goldstein,SC en
dc.date.accessioned 2018-01-04T16:10:30Z
dc.date.available 2018-01-04T16:10:30Z
dc.date.issued 2014 en
dc.description.abstract Linear Meld is a concurrent forward-chaining linear logic programming language where logical facts can be asserted and retracted in a structured way. In Linear Meld, a program is seen as a database of logical facts and a set of derivation rules. The database of facts is partitioned by the nodes of a graph structure which leads to parallelism when nodes are executed simultaneously. Due to the foundations on linear logic, rules can retract facts in a declarative and structured fashion, leading to more expressive programs. We present the design and implementation of the virtual machine that we implemented to run Linear Meld on multicores, with particular focus on thread management, code organization, fact indexing, rule execution, and database organization for efficient fact insertion, lookup and deletion. Our results show that the virtual machine is capable of scaling programs with up to 16 threads and also exhibits interesting scalar performance results due to our indexing optimizations. en
dc.identifier.uri http://repositorio.inesctec.pt/handle/123456789/5457
dc.identifier.uri http://dx.doi.org/10.1145/2643135.2643150 en
dc.language eng en
dc.relation 5510 en
dc.relation 5128 en
dc.rights info:eu-repo/semantics/openAccess en
dc.title Design and Implementation of a Multithreaded Virtual Machine for Executing Linear Logic Programs en
dc.type conferenceObject en
dc.type Publication en
Files
Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
Name:
P-00G-T0S.pdf
Size:
482.4 KB
Format:
Adobe Portable Document Format
Description: