{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,3,28]],"date-time":"2024-03-28T06:15:08Z","timestamp":1711606508237},"reference-count":27,"publisher":"Cambridge University Press (CUP)","issue":"4-6","license":[{"start":{"date-parts":[[2010,7,9]],"date-time":"2010-07-09T00:00:00Z","timestamp":1278633600000},"content-version":"unspecified","delay-in-days":8,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Theory and Practice of Logic Programming"],"published-print":{"date-parts":[[2010,7]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>One of the main advantages of Logic Programming (LP) is that it provides an excellent framework for the parallel execution of programs. In this work we investigate novel techniques to efficiently exploit parallelism from real-world applications in low cost multi-core architectures. To achieve these goals, we revive and redesign the YapOr system to exploit or-parallelism based on a multi-threaded implementation. Our new approach takes full advantage of the state-of-the-art fast and optimized YAP Prolog engine and shares the underlying execution environment, scheduler and most of the data structures used to support YapOr's model. Initial experiments with our new approach consistently achieve almost linear speedups for most of the applications, proving itself as a good alternative for exploiting implicit parallelism in the currently available low cost multi-core architectures.<\/jats:p>","DOI":"10.1017\/s1471068410000190","type":"journal-article","created":{"date-parts":[[2010,7,9]],"date-time":"2010-07-09T12:44:40Z","timestamp":1278679480000},"page":"417-432","source":"Crossref","is-referenced-by-count":6,"title":["Threads and or-parallelism unified"],"prefix":"10.1017","volume":"10","author":[{"given":"V\u00edTOR","family":"SANTOS COSTA","sequence":"first","affiliation":[]},{"given":"IN\u00caS","family":"DUTRA","sequence":"additional","affiliation":[]},{"given":"RICARDO","family":"ROCHA","sequence":"additional","affiliation":[]}],"member":"56","published-online":{"date-parts":[[2010,7,9]]},"reference":[{"key":"S1471068410000190_ref25","volume-title":"Advanced Programming in the UNIX Environment","author":"Stevens","year":"1992"},{"key":"S1471068410000190_ref12","unstructured":"Kovcs L. 1992. An incremental prolog system development for the floor plan design by dissecting. In Proceedings of the International Conference on Practical Application of Prolog, vol. 1. 1\u201318."},{"key":"S1471068410000190_ref26","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4613-2017-3"},{"key":"S1471068410000190_ref1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01414554"},{"key":"S1471068410000190_ref22","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-44520-X_102"},{"key":"S1471068410000190_ref11","doi-asserted-by":"publisher","DOI":"10.1007\/BF03037164"},{"key":"S1471068410000190_ref5","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-89982-2_53"},{"key":"S1471068410000190_ref27","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24599-5_23"},{"key":"S1471068410000190_ref14","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-11503-5_22"},{"key":"S1471068410000190_ref24","first-page":"717","volume-title":"Joint International Conference and Symposium on Logic Programming","author":"Shen","year":"1992"},{"key":"S1471068410000190_ref2","doi-asserted-by":"publisher","DOI":"10.1007\/BF01397627"},{"key":"S1471068410000190_ref21","unstructured":"Santos Costa V. 2008. On supporting parallelism in a logic programming system. In Workshop on Declarative Aspects of Multicore Programming. 77\u201391."},{"key":"S1471068410000190_ref18","doi-asserted-by":"publisher","DOI":"10.1016\/j.jpdc.2006.05.002"},{"key":"S1471068410000190_ref20","first-page":"720","volume-title":"International Parallel Processing Symposium, Held Jointly with the Symposium on Parallel and Distributed Processing","author":"Santos Costa","year":"1999"},{"key":"S1471068410000190_ref6","first-page":"117","volume-title":"International Logic Programming Symposium","author":"Correia","year":"1997"},{"key":"S1471068410000190_ref4","first-page":"320","volume-title":"International Conference on Logic Programming","author":"Carro","year":"1999"},{"key":"S1471068410000190_ref16","first-page":"107","volume-title":"International Symposium on Practical Aspects of Declarative Languages","author":"Moura","year":"2009"},{"key":"S1471068410000190_ref3","doi-asserted-by":"publisher","DOI":"10.1007\/BF01407834"},{"key":"S1471068410000190_ref7","unstructured":"Demoen B. , de la Banda M. G. , Mariott K. , Schachte P. , and Stuckey P. 1998. Global Variables in HAL, a Logic Implementation. Technical report cw271, Department of Computer Science, K. U. Leuven."},{"key":"S1471068410000190_ref19","first-page":"178","volume-title":"Portuguese Conference on Artificial Intelligence","author":"Rocha","year":"1999"},{"key":"S1471068410000190_ref8","doi-asserted-by":"publisher","DOI":"10.1007\/s10994-008-5094-2"},{"key":"S1471068410000190_ref13","unstructured":"Lusk E. , Butler R. , Disz T. , Olson R. , Overbeek R. , Stevens R. , Warren D. H. D. , Calderwood A. , Szeredi P. , Haridi S. , Brand P. , Carlsson M. , Ciepielewski A. , and Hausman B. 1988. The Aurora or-parallel prolog system. In International Conference on Fifth Generation Computer Systems. Institute for New Generation Computer Technology, 819\u2013830."},{"key":"S1471068410000190_ref15","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-77442-6_18"},{"key":"S1471068410000190_ref23","first-page":"83","volume-title":"ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming","author":"Santos Costa","year":"1991"},{"key":"S1471068410000190_ref17","doi-asserted-by":"crossref","first-page":"123","DOI":"10.7551\/mitpress\/4299.003.0015","volume-title":"International Conference on Logic Programming","author":"Pontelli","year":"1997"},{"key":"S1471068410000190_ref10","doi-asserted-by":"publisher","DOI":"10.1145\/504083.504085"},{"key":"S1471068410000190_ref9","first-page":"290","volume-title":"International Conference on Logic Programming","author":"Gupta","year":"1999"}],"container-title":["Theory and Practice of Logic Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S1471068410000190","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,3,28]],"date-time":"2024-03-28T05:37:45Z","timestamp":1711604265000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S1471068410000190\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010,7]]},"references-count":27,"journal-issue":{"issue":"4-6","published-print":{"date-parts":[[2010,7]]}},"alternative-id":["S1471068410000190"],"URL":"https:\/\/doi.org\/10.1017\/s1471068410000190","relation":{},"ISSN":["1471-0684","1475-3081"],"issn-type":[{"value":"1471-0684","type":"print"},{"value":"1475-3081","type":"electronic"}],"subject":[],"published":{"date-parts":[[2010,7]]}}}