Commit Graph

56 Commits

Author SHA1 Message Date
Ricardo Rocha c594d321ef Miguel's support for multi-threaded tabling 2011-12-22 16:50:20 +00:00
Ricardo Rocha 038c1854d0 fix compilation for tabling with threads 2011-12-05 16:54:22 +00:00
Ricardo Rocha a88fcec0c2 fix mode directed tabling with yapor 2011-11-16 12:47:43 +00:00
Ricardo Rocha ec0fa8a2a3 tries locking scheme is now independent for the answer, subgoal and global trie 2011-11-15 16:57:51 +00:00
Ricardo Rocha 8f7983b6c4 minor changes for mode directed tabling 2011-11-11 19:17:55 +00:00
Ricardo Rocha 88760aa0b1 mode directed tabling 2011-11-09 11:00:31 +00:00
Vítor Santos Costa 22b0bcac14 mode directed tabling. 2011-10-22 16:49:13 +01:00
Ricardo Rocha 8116aac432 parallel execution is now explicit using one of the new built-in
predicates: parallel/1, parallel_findall/3 or parallel_once/1.
2011-06-21 15:19:07 +01:00
Ricardo Rocha 1d4fdd53c0 use SWI's IOSTREAM for output 2011-05-25 18:38:46 +01:00
Joao ebd0e8a7c0 change global_optyap_data macros to GLOBAL_. 2011-05-10 11:47:18 +01:00
Joao 274de7652f fix error messages in configure file. 2011-04-18 14:59:17 +01:00
Joao 056ef59d4b fix tabling. change Yap_timestamp to Yap_ma_timestamp. change Yap_time_stamp to Yap_timestamp. 2011-04-07 16:00:26 +01:00
Joao f890a11377 change macros GLOBAL to Yap 2011-03-29 18:19:18 +01:00
Ricardo Rocha 73d210c991 reducing the number of macros for error checking in the OPTYap files 2010-04-18 04:59:11 +01:00
Ricardo Rocha e122f2ca8d Global trie support: atomic terms (vars, integers and atoms) are now stored
in the local tries (and not in the global trie). This required major changes
to the trie instructions in order to unify the use of the auxiliary stack
organization for the terms in the local tries and in the global trie.
2010-04-15 01:09:59 +01:00
Ricardo Rocha 52a2b49263 new support for the common global trie (version GT-ST: global trie for subterms) 2010-04-03 05:58:14 +01:00
Vitor Santos Costa 995e8f6dc7 fix cut handling with threads
do not compile or.threadengine unless yapor on.
2010-01-27 11:01:28 +00:00
Vítor Manuel de Morais Santos Costa a498dc1265 icompile table+orp 2010-01-14 17:38:39 +00:00
Vítor Manuel de Morais Santos Costa 5ef31fbfd2 experiment in or-parallel threads. 2010-01-14 15:58:19 +00:00
Ricardo Rocha 7d841065e9 support for the common global trie (version GT-T: global trie for terms) 2009-09-27 02:31:31 +01:00
Ricardo Rocha 23d44f959d include cp_h field in deterministic choice points, otherwise we get in trouble 2009-08-09 03:38:07 +01:00
Ricardo Rocha 4bdf8bf991 if the current generator choice point is the topmost choice point and
the current call is deterministic then the current answer is
deterministic and we can perform an early completion and remove the
current generator choice point
2009-08-08 03:53:51 +01:00
Ricardo Rocha fc31e7066e improve the support for deterministic tabling (still experimental,
problems mainly with the garbage collector)
2009-08-07 17:29:53 +01:00
Ricardo Rocha 375f3b7bc6 fix debugging procedures for tabling 2009-08-07 04:46:45 +01:00
Ricardo Rocha 36e6925776 make the support for early completion optional (macro TABLING_EARLY_COMPLETION) 2009-08-06 02:27:59 +01:00
Ricardo Rocha c666f74532 support for deterministic tabled calls and answers 2009-07-03 00:54:39 +01:00
Vitor Santos Costa fb8648d7df remove early completion code. 2008-09-26 18:50:09 +01:00
Vitor Santos Costa e35af2a352 experiments with early completion. 2008-09-15 04:29:26 +01:00
Vítor Santos Costa fdf762e326 push changes to make tabling work: don't ignore tabling and yapor fields
in optype.
2008-09-05 05:22:19 +01:00
Vítor Santos Costa f499115573 redo lost updates 2008-08-21 13:38:25 +01:00
ricroc 501e3d7c30 YapTab: support for early completion
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2246 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-23 18:28:58 +00:00
ricroc 9a841991ea YapTab: support for early completion
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2239 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-20 18:25:37 +00:00
ricroc 9bb854ab62 tabling support for 64 bits
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1870 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-26 14:13:21 +00:00
ricroc ec5891574e incomplete tabling: remove subgoal frame from list of inactive subgoals when a repeated call appears.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1624 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-05-02 08:01:27 +00:00
vsc 9618c90255 YENV may be an HW register (breaks some tabling code)
All YAAM instructions are now brackedted, so Op introduced an { and EndOp introduces an }. This is because Ricardo assumes that.
Fix attvars when COROUTING is undefined.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1516 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-01-17 14:10:42 +00:00
vsc 5680364300 fixes for stack expansion and garbage collection under tabling.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1456 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-15 00:50:49 +00:00
vsc ab97812ec7 first steps to allow mavars with tabling
fix trailing for tabling with multiple get_cons


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1356 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-05 14:55:03 +00:00
ricroc 34b2a0df4f TABLING NEW: support to limit the table space size
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1355 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-04 15:45:56 +00:00
ricroc dda96dc613 TABLING FIXED: opcode test in instruction table_try_answer
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1353 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-01 18:26:28 +00:00
ricroc b36b836820 TABLING NEW: better support for incomplete tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1351 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-08-01 15:40:39 +00:00
ricroc 3a93e0e079 TABLING: answers for completed calls can now be obtained by loading (new option) or executing (default) them from the trie data structure.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1342 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-07-06 19:34:12 +00:00
ricroc 9a85c9c0ff store tabling_mode info in the table_entry data structure
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1329 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-04 08:05:27 +00:00
ricroc 08eaaa570d float support for tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1323 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-06-03 08:19:18 +00:00
ricroc b8546491fc copyright header in OPTYap files
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1315 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-31 08:24:24 +00:00
ricroc f1db3d3b69 remove abort_yapor, abort_yaptab, ...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1309 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-31 00:49:49 +00:00
vsc bb9077d5cc fix tabling
allow atom gc again for now.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1300 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-05-30 05:26:50 +00:00
ricroc de17f5cca4 Adding tabling support for mixed strategy evaluation (batched and local scheduling)
UPDATE: compilation flags -DTABLING_BATCHED_SCHEDULING and -DTABLING_LOCAL_SCHEDULING removed. To support tabling use -DTABLING in the Makefile or --enable-tabling in configure.
  NEW: yap_flag(tabling_mode,MODE) changes the tabling execution mode of all tabled predicates to MODE (batched, local or default).
  NEW: tabling_mode(PRED,MODE) changes the default tabling execution mode of predicate PRED to MODE (batched or local).


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1268 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-04-07 17:56:58 +00:00
ricroc 4c972ca825 bug fixes for YapTab support
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1259 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-03-04 20:30:14 +00:00
vsc 221665bab8 support for tabling
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@951 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-12-18 16:38:40 +00:00
ricroc 80be9121af My first attempt to synchronize OPTYap with CVS
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@916 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2003-11-05 16:12:25 +00:00