Exploiting type analysis for unification in a distributed environment
E. Lamma ; P. Mello ; C. Stefanelli ; P. van Hentenryck
Computing and Informatics, Tome 28 (2012) no. 1, / Harvested from Computing and Informatics
Unification, in distributed implementations of logic programming, involves sending and receiving messages to access data structures spread among different nodes.  In traditional implementations, processes access remote data structures by exchanging messages which carry either the overall data structures or only remote references to them. Intermediate but fixed solutions are also possible.  These fixed policies can be far from optimal on various classes of programs and may induce substantial overhead. This paper presents an implementation scheme for distributed logic programming which consists of tailoring the copying level for each procedure argument. The scheme is based on a consumption specification which describes the way each procedure "consumes" its arguments locally. Consumption specification avoids unnecessary copying and allows to request data structures globally. The consumption specification (or an approximation of it) can be obtained through a static analysis inspired by traditional type analyses. The paper presents two implementations which exploit the consumption specification. The low-level implementation extends the Warren Abstract Machine with instructions and data structures for exploiting the consumption specification during code compilation. The high-level implementation is based on attributed variables in order to capture and implement, at a higher-level, distributed unification. Experimental results of the high-level implementation on a network of workstations show the potential of the approach.
Publié le : 2012-01-26
Classification: 
@article{cai588,
     author = {E. Lamma and P. Mello and C. Stefanelli and P. van Hentenryck},
     title = {Exploiting type analysis for unification in a distributed environment},
     journal = {Computing and Informatics},
     volume = {28},
     number = {1},
     year = {2012},
     language = {en},
     url = {http://dml.mathdoc.fr/item/cai588}
}
E. Lamma; P. Mello; C. Stefanelli; P. van Hentenryck. Exploiting type analysis for unification in a distributed environment. Computing and Informatics, Tome 28 (2012) no. 1, . http://gdmltest.u-ga.fr/item/cai588/