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
e85854c1bb
fix invalid answers for mode directed tabling
2011-11-11 18:05:24 +00:00
Ricardo Rocha
f06489ffe5
show_table support for mode directed tabling
2011-11-09 15:13:22 +00:00
Ricardo Rocha
2905fc8114
fix mode directed tabling
2011-11-09 14:24:08 +00:00
Joao
1e7fc1afce
fix mode directed tabling.
2011-11-09 12:03:09 +00:00
Ricardo Rocha
dab7c00e60
extra space in macro definition
2011-11-09 11:02:05 +00:00
Ricardo Rocha
88760aa0b1
mode directed tabling
2011-11-09 11:00:31 +00:00
Vítor Santos Costa
fa9d8008a4
bug fixes.
2011-10-27 12:37:41 +02:00
Vítor Santos Costa
22b0bcac14
mode directed tabling.
2011-10-22 16:49:13 +01:00
Vitor Santos Costa
8ff513b58a
fix thor to back up to intermediate node.
2011-10-12 23:51:12 +01:00
Joao
64ae3cdf52
fix YAPOR incremental copy.
2011-09-15 15:40:47 +01:00
Ricardo Rocha
efc59cf8d6
DepFr_cons field initialization for threads
2011-07-26 16:49:49 +01:00
Ricardo Rocha
31b3eeaae6
fix output stream usage
2011-07-26 15:26:01 +01:00
Ricardo Rocha
22d8e33a5f
fix cut support for or-parallelism
2011-07-13 17:36:26 +01:00
Ricardo Rocha
f2072e14b3
removing printf
2011-06-21 15:49:38 +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
Vítor Santos Costa
23a1a3fe39
use UInt not long.
2011-06-20 10:40:18 +01:00
Ricardo Rocha
3cd4f399c5
move opt.memory.c to or.memory.c
2011-06-02 17:05:58 +01:00
Ricardo Rocha
d601ba9caf
fix yapor memory allocation
2011-06-02 17:01:00 +01:00
Ricardo Rocha
dfe0e1854f
init_yapor_workers -> Yap_init_yapor_workers
2011-06-01 18:51:12 +01:00
Joao
e319b2fbf9
fix YAPOR THREADS. fix threads + tabling.
2011-05-27 17:21:03 +01:00
Ricardo Rocha
e63cba963e
new local predicates for tabling with threads
2011-05-25 20:08:04 +01:00
Ricardo Rocha
f7b9c74948
sync with repository
2011-05-25 18:50:54 +01:00
Ricardo Rocha
1d4fdd53c0
use SWI's IOSTREAM for output
2011-05-25 18:38:46 +01:00
Joao
971ad94311
moved several global variables to misc/GLOBALS
2011-05-25 16:40:36 +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
ab63cd190b
LOCALS and GLOBALS are now generated by misc/buildlocalglobal.
2011-05-11 18:22:58 +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
026616963c
remove FOREIGN_ macros and use REMOTE_ instead
2011-05-09 20:19:49 +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
dc3c54c164
change LOCALS macros.
2011-05-04 10:11:41 +01:00
Joao
719b04fee3
fix abolish_table/1 ans abolish_all_tables/0 built-in predicates
2011-04-29 17:29:02 +01:00
Joao
affaeb4092
Merge branch 'master' of ssh://yap.git.sourceforge.net/gitroot/yap/yap-6.3
...
Conflicts:
H/dlocals.h
H/hlocals.h
H/ilocals.h
H/rlocals.h
2011-04-29 16:44:59 +01:00
Joao
c27f79eeb1
fix YapOr threads.
2011-04-29 14:59:17 +01:00
Joao
d4825159ee
fix configure file. change memory management in YapOr.
2011-04-28 09:48:42 +01:00
Vitor Santos Costa
d3ff70096b
fix purge_tries.
2011-04-26 22:15:54 +01:00
Joao
274de7652f
fix error messages in configure file.
2011-04-18 14:59:17 +01:00
Joao
b6e0a64e56
fix memory allocation for YapOR
2011-04-14 19:19:13 +01:00
Joao
47f7ff0ad7
change Yap_init_optyap_global to Yap_init_optyap_data.
2011-04-07 16:37:41 +01:00
Joao
de8518cf15
change optyap_global_data to global_optyap_data
2011-04-07 16:30:56 +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
b4a00d1fef
rename function Yap_init_global to Yap_init_optyap_global.
2011-04-01 11:13:48 +01:00
Joao
27d3399768
rename YAPOR files in OPTYAP
2011-03-31 14:50:47 +01:00
Joao
662658986a
chnage define ACOW to YAPOR_COW
2011-03-30 16:39:09 +01:00
Joao
3e148c3541
change define SBA to YAPOR_SBA
2011-03-30 15:32:59 +01:00
Joao
810c96416b
change define ENV_COPY to YAPOR_COPY
2011-03-30 14:35:10 +01:00
Joao
f890a11377
change macros GLOBAL to Yap
2011-03-29 18:19:18 +01:00
Joao
3664bc64d4
fix yapor+tabling
2011-03-29 15:52:44 +01:00
Joao
1cede1f4d6
change struct worker_share to global_data
...
change struct global_data to optyap_global_data
chnage field global in struct worker_share to optyap_global
2011-03-25 18:01:17 +00: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
da1df3d851
more cleanups.
2011-03-02 23:19:39 +00:00
Vítor Santos Costa
b9a7cce232
fix aliasing warning.
2011-02-15 18:40:34 +00:00
Vitor Santos Costa
2db6020e80
remove debugging message.
2010-11-28 11:52:56 +00:00
Vitor Santos Costa
4aee4df719
single initialization for top frame.
2010-11-28 11:51:31 +00:00
vsc
312d82816e
fix memory allocation (MMAP) for shared LOCAL and GLOBAL in ENV_COPY
2010-10-15 02:06:37 +01:00
vsc
bd502a39ac
fix RW_locks for x86 (code from Erlang).
2010-10-15 01:13:49 +01:00
Vítor Santos Costa
bfa7285041
fix interface with Thor
2010-07-28 17:14:29 +01:00
Vitor Santos Costa
86af6ff3f6
add THOR to threads version.
2010-07-28 00:30:02 +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
7eee5a5b56
new built-in predicates to access OPTYap statistics related to memory
...
usage.
2010-04-20 03:59:48 +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
467dd91b32
new built-in predicate global_trie_statistics/0.
2010-04-16 03:07:37 +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
Vítor Santos Costa II
8efec0b26e
put ThOr back in shape.
2010-04-09 11:56:07 +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
9c3bb73bab
common global trie (version GT-ST: global trie for subterms)
2010-04-05 03:31:12 +01:00
Ricardo Rocha
6c222b8e87
use a macro (stack_terms_limit) to delimit the top of the auxiliary term
...
stack
2010-04-03 16:05:38 +01:00
Ricardo Rocha
b3e2c562a2
misplaced #endif declaration
2010-04-03 06:31:34 +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
55855d8d90
fix abolish_table/1 abolish_all_tables/0 for predicates with arity 0
2010-03-29 15:41:59 +01:00
Ricardo Rocha
3742f09c10
missing brackets in condition using macro new_dependency_frame()
2010-03-15 14:21:16 +00: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 Santos Costa
500d6ac453
fix LOCAL with tabling only.
2010-02-12 16:25:57 +00:00
Vítor Santos Costa
5937a72b76
try to get rid of a warning.
2010-02-12 16:25:43 +00:00
Vitor Santos Costa
95e596a8a1
make LOCAL a register
2010-02-10 09:22:20 +00:00
Vitor Santos Costa
0e85839517
remove debugging info.
2010-02-10 09:21:04 +00:00
vsc
c95c89cfe3
oops...
2010-02-04 00:00:33 +00:00
vsc
eb6ac94e45
use mapfield in current directory, not in /
2010-02-03 22:54:24 +00:00
vsc
9c100ae09d
fix INCREMENTAL_COPY
...
delay P until Q has copied trailed bindings (should not be needed, but hey!)
don't trust TR when copying bindings.
2010-02-03 22:52:45 +00:00
Vitor Santos Costa
9c85f67eee
fix one more CP field to offset.
2010-02-02 23:42:15 +00:00
Vítor Manuel de Morais Santos Costa
9d1f0cd361
incremental copying with or-threads.
2010-02-01 20:05:01 +00:00
Vítor Manuel de Morais Santos Costa
d0fdcba231
make it compile
...
support non-incremental copy.
2010-01-29 12:28:23 +00:00
Vítor Manuel de Morais Santos Costa
4b8d655437
cut cps are different from everyone else?
2010-01-28 15:44:31 +00:00
Vítor Manuel de Morais Santos Costa
5b47d00cbc
replace by macros wherever possible.
2010-01-28 15:43:52 +00: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
Vitor Santos Costa
d2bf8c717d
make sure it compiles under YAPOR alone.
2010-01-22 22:30:11 +00:00
Vitor Santos Costa
6da35f6e7b
count the number of alternatives left plus the actual choicepoint!!
2010-01-22 22:29:40 +00:00
Vitor Santos Costa
44a418bd04
small orp fixes.
2010-01-15 12:04:01 +00:00
Vitor Santos Costa
70c762c162
fix undefined predicate (made Logtalk loop).
2010-01-15 01:03:34 +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
Vitor Santos Costa
5f0f91208d
fix compilation of threads+tabling
2009-12-18 00:19:49 -02:00
Vitor Santos Costa
d9016fa650
init_local should be called Yap_init_local to avoid clashesh.
2009-11-19 08:24:38 +00:00
Vitor Santos Costa
0179998d60
change Heap.h to YapHeap.h
...
rename $live to prolog/0 (for SWI compatibility).
2009-10-23 14:22:17 +01: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
7120e79dd6
include the library shm.h only when needed
2009-09-29 00:56:58 +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
Costa Vitor
1e16a9c339
modern machines do not guarantee sequential consistency.
2009-09-07 20:42:19 -05:00
Costa Vitor
f877e78785
make YAP compile with --enable-or-parallelism
2009-08-19 21:53:49 -05:00
Ricardo Rocha
9dc0618a12
make the support for compact lists the default configuration for the tabling engine
2009-08-12 14:32:12 +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
4f6676e5af
fix garbage collector for deterministic tabling (still very
...
experimental)
2009-08-08 05:02:27 +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
cc2c6dbe71
make the parallel and sequential code to check/insert nodes in the
...
trie more consistent
2009-08-07 06:27:34 +01:00
Ricardo Rocha
375f3b7bc6
fix debugging procedures for tabling
2009-08-07 04:46:45 +01:00
Ricardo Rocha
981bee74f0
fix garbage collector for dealing with float/longint trie instructions
2009-08-07 04:34:48 +01:00
Ricardo Rocha
b4a71ad43a
empty --> EMPTY
2009-08-06 18:34:21 +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
02e82d7719
disable the support for trie compact lists in YapTab's default
...
configuration.
2009-07-05 05:29:53 +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
Ricardo Rocha
c666f74532
support for deterministic tabled calls and answers
2009-07-03 00:54:39 +01:00
Ricardo Rocha
7413d0f898
bug fix in built-in predicate tabling_statistics/0.
2009-06-25 13:00:13 +01:00
Ricardo Rocha
5b60209db3
bug fix in function free_subgoal_trie_branch()
2009-06-25 12:37:07 +01:00
Ricardo Rocha
eeb62b63b4
support for trie compact lists
2009-06-24 20:04:16 +01:00
Ricardo Rocha
3ccad9aff2
redefine MAX_DEPTH as MAX_BRANCH_DEPTH to avoid conflits with yap2swi
...
library
2009-06-24 20:00:51 +01:00
Ricardo Rocha
1351bd11a2
- bug fixes in show_table/1.
...
- new built-in predicate show_all_tables/0.
2009-06-17 17:14:16 +01:00
Vitor Santos Costa
f209796c3b
fix bad overflow handling
2009-05-01 12:46:34 -05:00
Vitor Santos Costa
8275f2232c
fix handling of multiassignment variables with tabling;
...
fix bad overflow handling when copying terms from tries.
2009-05-01 11:53:59 -05:00
Vitor Santos Costa
fb8648d7df
remove early completion code.
2008-09-26 18:50:09 +01:00
Vítor Santos Costa
6747cb21de
do not allow backtracking to a frozen CP.
2008-09-24 00:12:32 +01:00
Vitor Santos Costa
02893cc83f
Ricardo Rocha's code for user managed suspension.
...
changed code from absmi.c to tab.macros.h
2008-09-18 17:35:21 +01:00
Vitor Santos Costa
e35af2a352
experiments with early completion.
2008-09-15 04:29:26 +01:00
Vítor Santos Costa
d70cb39c1d
fix answer_trie compilation and execution:
...
- YapOpcodes.h should have do/trust/try/trust: force this order in
tab.tries.insts.i
- retry and trust instructions should not trust YENV
2008-09-05 18:34: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
da7a287e49
YapTab: init_subgoal_frame()
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2231 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-05 17:17:35 +00:00
ricroc
508c48d385
YapTab: load_answer_trie()
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2230 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-05 17:09:37 +00:00
ricroc
ddcd80d2a9
*** empty log message ***
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2215 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-11 16:30:28 +00:00
vsc
b2274186bd
make or-parallelism compile again
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2164 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 16:45:53 +00:00
vsc
3beda27d14
fixes to support threads and assert correctly, even if inefficiently.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2030 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-11-26 23:43:10 +00:00
ricroc
f92d494e8e
show_table for tabled predicates with arity 0.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1871 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-04-26 19:02:46 +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
ricroc
676e2774c9
new built-in predicate: show_tabled_predicates/0
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1620 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-29 15:52:22 +00:00
ricroc
1ce0cdee55
subgoal_search: remove subgoal frame from list of inactive subgoals when a repeated call appears.
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1594 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-12 14:57:59 +00:00
vsc
30318bb60d
Lots of fixes (check logfile for details
...
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1585 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2006-04-05 00:16:55 +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
4c0865ca37
more tabling fixes
...
use malloc when AllocCodeSpace fails
use snprintf when available.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1458 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2005-11-16 01:55:03 +00:00