Commit Graph

79 Commits

Author SHA1 Message Date
Vitor Santos Costa
6b2e1973ab Windows fixes, mainly H -> HB 2014-01-19 21:15:05 +00:00
Vítor Santos Costa
ccccf71ae1 support for tabling of bignums and strings 2014-01-17 09:39:29 +00:00
Vitor Santos Costa
633a56647e thread stuff should be thread efficient :) 2013-03-26 16:11:19 -05:00
Ricardo Rocha
7e667c1038 fix multithreading with mode-directed tabling 2012-06-04 19:47:45 +01:00
Ricardo Rocha
d540354c30 adding sum mode operator + fix multithreading compatibility 2012-06-04 19:27:31 +01:00
Ricardo Rocha
1dcc8bd393 adptation of the memory allocator based on pages to work with threads 2012-05-14 19:11:58 +01:00
U-WIN-UA9ACS5GS9N\vitor
19807d46f7 WIN32 and CYGWIN fixes. 2012-04-18 14:14:56 -05:00
Ricardo Rocha
72f79b8c4f fix compilation errors for multi-threaded tabling 2012-01-05 11:41:46 +00:00
Ricardo Rocha
c594d321ef Miguel's support for multi-threaded tabling 2011-12-22 16:50:20 +00:00
Ricardo Rocha
ab32e8f14e fix expand hash tables with TRIE_LOCK_AT_WRITE_LEVEL schemes 2011-12-12 17:24:58 +00:00
Ricardo Rocha
6bb26f4764 fix support for local pages with threads 2011-12-09 16:06:17 +00:00
Ricardo Rocha
ea337366fe fix compilation for or-parallelism 2011-12-05 17:02:06 +00:00
Ricardo Rocha
038c1854d0 fix compilation for tabling with threads 2011-12-05 16:54:22 +00:00
Ricardo Rocha
65b73a8a09 data structures for multithreading tabling 2011-11-22 17:09:29 +00:00
Ricardo Rocha
e993c2473b the trie locking data structure (node field or global lock array) is now defined explicitly 2011-11-16 11:42:04 +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
e85854c1bb fix invalid answers for mode directed tabling 2011-11-11 18:05:24 +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
Joao
e319b2fbf9 fix YAPOR THREADS. fix threads + tabling. 2011-05-27 17:21:03 +01:00
Joao
8170f6d3cb Some global variables(Yap_thread_gl) in C/init.c are now declared in misc/LOCALS 2011-05-23 16:19:47 +01:00
Joao
d6fc76faf1 Remove GLOBAL_AGcLastCall. Fix GLOBAL_check_sg_fr. 2011-05-10 12:20:22 +01:00
Joao
ebd0e8a7c0 change global_optyap_data macros to GLOBAL_. 2011-05-10 11:47:18 +01:00
Ricardo Rocha
a532b6cff3 struct local_optyap_data is now part of struct worker_local (generated from the file LOCALS) 2011-05-09 19:36:51 +01:00
Joao
c27f79eeb1 fix YapOr threads. 2011-04-29 14:59:17 +01:00
Joao
b6e0a64e56 fix memory allocation for YapOR 2011-04-14 19:19:13 +01:00
Joao
f890a11377 change macros GLOBAL to Yap 2011-03-29 18:19:18 +01:00
Vítor Santos Costa
90d93fdbdd cache abstra machine register in threaded mode. 2011-03-07 16:02:55 +00:00
Vítor Santos Costa
bfa7285041 fix interface with Thor 2010-07-28 17:14:29 +01:00
Vitor Santos Costa
af056dd605 fix tabling to compile with threads+ or-parallelism. 2010-07-27 23:09:17 +01:00
Ricardo Rocha
4df6ed1394 extra built-in predicate for frozen choice point support 2010-05-18 17:34:52 +01:00
Vítor Santos Costa
be2a3a635e L constants are evil in 64 bits 2010-05-11 12:25:49 +01:00
Ricardo Rocha
16c1056a01 tabling support for the common global trie is now available by default
(macro GLOBAL_TRIE was removed). Use 'yap_flag(tabling_mode,MODE)' to
set the storing mode for all tabled predicates to MODE ('local_trie' or
'global_trie). Alternatively, use 'tabling_mode(PRED,MODE)' to set the
default tabling mode of predicate PRED to MODE ('local_trie' or
'global_trie'). The default mode for all tabled predicates is 'local_trie'.
2010-04-23 04:22:10 +01:00
Ricardo Rocha
c221c2ff85 renaming some OPTYap files in order to have a more consistent name organization 2010-04-19 02:34:08 +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
ddb1cd8604 adding two new modes to the yap_flag/2 and tabling_mode/2 built-in
predicates: 'local_trie' mode and 'global_trie' mode.
2010-04-16 02:08:06 +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
ab8fee4e08 common global trie for subtems (seems to be working correctly !) 2010-04-05 03:34:02 +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
Ricardo Rocha
ee0022bb47 checking for frozen segments in the trail stack in now done using the
macro IN_BETWEEN(Yap_TrailBase, ref, Yap_TrailTop)
2010-03-12 20:02:32 +00:00
Ricardo Rocha
6dbc6f09fa new built-in predicate abolish_all_frozen_choice_points/0 2010-03-09 14:48:20 +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
Vítor Manuel de Morais Santos Costa
d810cbd41d we're moving down, not up, in both cases! 2009-10-19 16:39:40 +01: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
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
36e6925776 make the support for early completion optional (macro TABLING_EARLY_COMPLETION) 2009-08-06 02:27:59 +01:00
Ricardo Rocha
cf5d68edda fix recursive functions that manipulate tries 2009-08-05 05:48:00 +01:00
Ricardo Rocha
5e4d7078ab support for trie compact lists (version 2): this new version uses
different marks to distinguish the lists ending with the empty list
from the lists ending with a non-empty list term.
2009-07-05 05:14:08 +01:00