Towards Multi-Threaded Local Tabling Using a Common Table Space

dc.contributor.author Miguel Gonçalves Areias en
dc.contributor.author Ricardo Rocha en
dc.date.accessioned 2017-11-16T14:22:01Z
dc.date.available 2017-11-16T14:22:01Z
dc.date.issued 2012 en
dc.description.abstract Multi-threading is currently supported by several well-known Prolog systems providing a highly portable solution for applications that can benefit from concurrency. When multi-threading is combined with tabling, we can exploit the power of higher procedural control and declarative semantics. However, despite the availability of both threads and tabling in some Prolog systems, the implementation of these two features implies complex ties to each other and to the underlying engine. Until now, XSB was the only Prolog system combining multi-threading with tabling. In XSB, tables may be either private or shared between threads. While thread-private tables are easier to implement, shared tables have all the associated issues of locking, synchronization and potential deadlocks. In this paper, we propose an alternative view to XSB's approach. In our proposal, each thread views its tables as private but, at the engine level, we use a common table space where tables are shared among all threads. en
dc.identifier.uri http://repositorio.inesctec.pt/handle/123456789/2967
dc.identifier.uri http://dx.doi.org/10.1017/S1471068412000117 en
dc.language eng en
dc.relation 5128 en
dc.relation 5509 en
dc.rights info:eu-repo/semantics/openAccess en
dc.title Towards Multi-Threaded Local Tabling Using a Common Table Space en
dc.type article en
dc.type Publication en
Files