Richard Brooksby
44f80af1ec
Merging branch mps/branch/2016-03-13/without-reservation into master sources.
...
Copied from Perforce
Change: 190106
ServerID: perforce.ravenbrook.com
2016-03-15 13:19:27 +00:00
Richard Brooksby
d54be414d9
Merging branch/2016-03-12/pause into the master sources.
...
Copied from Perforce
Change: 190053
ServerID: perforce.ravenbrook.com
2016-03-15 06:31:08 +00:00
Gareth Rees
2a3c4e0590
Address points made by rb in review < https://info.ravenbrook.com/mail/2016/03/14/18-48-19/0/ >
...
Copied from Perforce
Change: 190031
ServerID: perforce.ravenbrook.com
2016-03-14 20:10:14 +00:00
Richard Brooksby
1025b28674
Eliminating withreservoirpermit and all its variants.
...
Copied from Perforce
Change: 190005
ServerID: perforce.ravenbrook.com
2016-03-13 21:04:01 +00:00
Richard Brooksby
cc6262ae66
Basic removal of the reservoir pool from code and design.
...
Copied from Perforce
Change: 190000
ServerID: perforce.ravenbrook.com
2016-03-13 20:32:24 +00:00
Gareth Rees
459a9f775d
Implement pause time control.
...
Copied from Perforce
Change: 189921
ServerID: perforce.ravenbrook.com
2016-03-12 22:08:26 +00:00
Gareth Rees
66e0d30340
Catch-up merge from branch/2015-08-25/tradeoff to branch/2016-03-12/pause (to pick up the morework value in arenapoll).
...
Copied from Perforce
Change: 189918
ServerID: perforce.ravenbrook.com
2016-03-12 20:32:41 +00:00
Gareth Rees
c05c8a5609
Documentation and interface for pause time control (no implementation yet).
...
Copied from Perforce
Change: 189915
ServerID: perforce.ravenbrook.com
2016-03-12 20:25:33 +00:00
Richard Brooksby
32d42e00cd
Catch-up merge from master sources to branch/2015-08-25/tradeoff.
...
Copied from Perforce
Change: 189891
ServerID: perforce.ravenbrook.com
2016-03-12 15:13:15 +00:00
Richard Brooksby
e3d69095db
Catch-up merge from master sources to branch/2016-03-01/closure-size.
...
Copied from Perforce
Change: 189728
ServerID: perforce.ravenbrook.com
2016-03-08 09:13:35 +00:00
Richard Brooksby
804f15dead
Removing the mostly unused size component of the closure convention.
...
Copied from Perforce
Change: 189503
ServerID: perforce.ravenbrook.com
2016-03-01 17:20:50 +00:00
Richard Brooksby
14774ccd06
Eliminating closure_size from area scanners and root registration functions, as it isn't all that useful.
...
Copied from Perforce
Change: 189491
ServerID: perforce.ravenbrook.com
2016-03-01 15:59:06 +00:00
Richard Brooksby
3804af1803
Catch-up merge from master sources to branch/2015-09-04/stack.
...
Copied from Perforce
Change: 189370
ServerID: perforce.ravenbrook.com
2016-02-27 00:54:00 +00:00
Richard Brooksby
078ac268d5
Catch-up merge from branch/2015-08-06/config to remove arenaconfigure.
...
Copied from Perforce
Change: 189335
ServerID: perforce.ravenbrook.com
2016-02-25 22:59:06 +00:00
Richard Brooksby
8d622806d0
Removing unused function arenascannable.
...
Reinstate when needed. See <https://info.ravenbrook.com/mail/2016/02/17/13-05-54/0/ >.
Copied from Perforce
Change: 189292
ServerID: perforce.ravenbrook.com
2016-02-25 17:09:09 +00:00
Richard Brooksby
b929dbbe4c
Moving scanning accounting to tracescanarea and creating analogous formatscan.
...
Copied from Perforce
Change: 189325
ServerID: perforce.ravenbrook.com
2016-02-19 12:11:50 +00:00
Richard Brooksby
6413f3bc27
Renaming "bottom" and "top" of stack to "cold" and "hot" end, to prevent confusion about descending stacks.
...
Correcting design documentation relating to stacks.
Referencing hot and cold end concepts from glossary entry for control stacks.
Copied from Perforce
Change: 189320
ServerID: perforce.ravenbrook.com
2016-02-18 23:49:58 +00:00
Richard Brooksby
4487895475
Detabifying code and restructuredtext files.
...
Copied from Perforce
Change: 189309
ServerID: perforce.ravenbrook.com
2016-02-18 19:58:13 +00:00
Richard Brooksby
f8341520c2
Catch-up merge from master sources.
...
Copied from Perforce
Change: 189265
ServerID: perforce.ravenbrook.com
2016-02-17 11:04:51 +00:00
Richard Brooksby
c1918bc79b
Creating general mps_root_create_thread and renaming mps_root_create_stack as a specialised version of it, mps_root_create_thread_tagged.
...
Copied from Perforce
Change: 189198
ServerID: perforce.ravenbrook.com
2016-02-15 19:12:59 +00:00
Richard Brooksby
b384334a32
Reimplementing mps_root_create_reg in terms of rootcreatethreadtagged and abolishing rootreg. yay!
...
Copied from Perforce
Change: 189197
ServerID: perforce.ravenbrook.com
2016-02-15 18:19:30 +00:00
Richard Brooksby
ab41d5c4f7
Renaming rootreg_masked to rootthread_tagged with corresponding changes to other identifiers.
...
Copied from Perforce
Change: 189196
ServerID: perforce.ravenbrook.com
2016-02-15 17:57:06 +00:00
Richard Brooksby
fe206feb2d
Lifting stack and register area scanner into mps interface to allow generalisation of stack format.
...
Copied from Perforce
Change: 189195
ServerID: perforce.ravenbrook.com
2016-02-15 17:46:45 +00:00
Richard Brooksby
7238921356
Generalising roottable to rootarea and using it to implement mps_root_create_table_* and mps_root_create_area.
...
Copied from Perforce
Change: 189193
ServerID: perforce.ravenbrook.com
2016-02-15 17:30:45 +00:00
Richard Brooksby
fb6c150ba2
Generalising roottable_masked to rootarea_tagged and lifting scanner assumption.
...
Copied from Perforce
Change: 189192
ServerID: perforce.ravenbrook.com
2016-02-15 16:56:42 +00:00
Richard Brooksby
7df6c140f8
Generalising tracescanarea to be a checking wrapper for all area scanners.
...
Copied from Perforce
Change: 189190
ServerID: perforce.ravenbrook.com
2016-02-15 15:44:57 +00:00
Richard Brooksby
31870a9b95
Renaming tracescanareamasked to tracescanareatagged
...
Copied from Perforce
Change: 189133
ServerID: perforce.ravenbrook.com
2016-02-11 20:39:57 +00:00
Richard Brooksby
b2bc211404
Adding mps_root_create_table_tagged as an interface to more generally tagged roots.
...
Deprecating the less general mps_root_create_table_masked.
Copied from Perforce
Change: 189131
ServerID: perforce.ravenbrook.com
2016-02-11 20:28:39 +00:00
Richard Brooksby
aff58a3f60
Catch up merge from master sources.
...
Copied from Perforce
Change: 189130
ServerID: perforce.ravenbrook.com
2016-02-10 21:10:25 +00:00
Richard Brooksby
a2f78d0df6
Catch-up merge from masters.
...
Copied from Perforce
Change: 188921
ServerID: perforce.ravenbrook.com
2016-01-19 16:22:39 +00:00
Gareth Rees
d2662a861e
Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
...
Copied from Perforce
Change: 188250
ServerID: perforce.ravenbrook.com
2015-09-04 19:13:28 +01:00
Gareth Rees
800aa3b250
Policycollectiontime is now local to policy.c.
...
Improve comment for policyCondemnChain (document the mortalityReturn parameter to; fix design reference).
Copied from Perforce
Change: 188240
ServerID: perforce.ravenbrook.com
2015-09-04 16:02:46 +01:00
Gareth Rees
db81205af5
Move policy for mps_arena_step to policy module.
...
Copied from Perforce
Change: 188238
ServerID: perforce.ravenbrook.com
2015-09-04 15:25:37 +01:00
Gareth Rees
5af0bf9f01
Correct type for rootcreateregmasked.
...
Copied from Perforce
Change: 188233
ServerID: perforce.ravenbrook.com
2015-09-04 12:28:49 +01:00
Gareth Rees
ea6250898a
New function mps_root_create_reg_masked applies a mask and pattern test to all words in registers and on the stack when scanning them. this supports tagged references in these locations.
...
Consistently use the type "Word *" for pointers into the stack or into saved registers.
Remove TraceScanAreaTagged.
Copied from Perforce
Change: 188231
ServerID: perforce.ravenbrook.com
2015-09-04 12:22:03 +01:00
Gareth Rees
0ff67113ae
Separate the values "more work to do?" and "amount of work done" in tracepoll. previously, the code used "amount of work done > 0" when it needed "more work to do?" but that's not right, because on the last two calls to traceadvance, no "work" is done (because reclaim work is not measured), but there may still be more work to do.
...
Copied from Perforce
Change: 188218
ServerID: perforce.ravenbrook.com
2015-09-03 15:51:37 +01:00
Gareth Rees
61bae42d43
Introduce new type work representing a measure of work done by the collector. use this systematically to make the code clearer.
...
Copied from Perforce
Change: 188210
ServerID: perforce.ravenbrook.com
2015-09-03 13:01:55 +01:00
Gareth Rees
85595290d3
Accumulate trace metrics in arenapark.
...
Copied from Perforce
Change: 188208
ServerID: perforce.ravenbrook.com
2015-09-03 11:50:28 +01:00
Gareth Rees
f1441b58d1
Don't start a trace unless there's work to do.
...
Copied from Perforce
Change: 188204
ServerID: perforce.ravenbrook.com
2015-09-02 21:55:24 +01:00
Gareth Rees
e7d735125f
Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
...
Copied from Perforce
Change: 188203
ServerID: perforce.ravenbrook.com
2015-09-02 21:23:23 +01:00
Gareth Rees
837818ccb4
Refactor tracequantum into tracepoll and traceadvance. (tracequantum was formerly called from arenapark, but that doesn't care about the quantum size.)
...
Copied from Perforce
Change: 188198
ServerID: perforce.ravenbrook.com
2015-09-02 10:50:00 +01:00
Gareth Rees
7cc5a2d8f6
Catch-up merge from branch/2015-08-11/policy to branch/2015-08-25/tradeoff.
...
Copied from Perforce
Change: 188176
ServerID: perforce.ravenbrook.com
2015-08-25 19:35:03 +01:00
Gareth Rees
dd676e2919
New functions policypoll and policypollagain.
...
Update design.strategy.
Copied from Perforce
Change: 188165
ServerID: perforce.ravenbrook.com
2015-08-25 13:27:17 +01:00
Gareth Rees
46280a07ab
New function policycollectiontime estimates the time needed to collect the arena. mysterious constants are given names and moved to config.h.
...
Copied from Perforce
Change: 188160
ServerID: perforce.ravenbrook.com
2015-08-21 15:27:14 +01:00
Gareth Rees
32acad85ea
New function policystarttrace decides whether to start a trace.
...
Copied from Perforce
Change: 188154
ServerID: perforce.ravenbrook.com
2015-08-20 16:57:33 +01:00
Gareth Rees
2097678a37
New module policy.c.
...
Copied from Perforce
Change: 188152
ServerID: perforce.ravenbrook.com
2015-08-19 15:03:47 +01:00
Gareth Rees
56e56e4ff4
Catch-up merge from branch/2015-08-10/arena-create to branch/2015-08-06/config.
...
Copied from Perforce
Change: 188104
ServerID: perforce.ravenbrook.com
2015-08-10 12:49:36 +01:00
Gareth Rees
84347b9bbe
Merge branch/2014-09-29/reserved into the master sources.
...
Copied from Perforce
Change: 188090
ServerID: perforce.ravenbrook.com
2015-08-07 16:33:43 +01:00
Gareth Rees
098b4da32d
New function mps_arena_configure provides keyword argument interface to changing the properties of an arena.
...
New keyword arguments MPS_KEY_ARENA_COMMIT_LIMIT and MPS_KEY_SPARE_ARENA_COMMIT_LIMIT can be passed to mps_arena_create_k or mps_arena_configure.
Deprecate mps_arena_commit_limit_set and mps_arena_spare_commit_limit_set.
Copied from Perforce
Change: 188085
ServerID: perforce.ravenbrook.com
2015-08-06 17:02:51 +01:00
Gareth Rees
497aaf7141
The "remember" parameters to arenaexposeremember is a boolean, not an integer.
...
Copied from Perforce
Change: 187467
ServerID: perforce.ravenbrook.com
2014-11-06 12:03:18 +00:00