Richard Brooksby
|
4fdddc36e0
|
Backing out zone set summary in the cbs. this isn't needed for speed now that there's a cbs per zone in the arena, and it will slow down all other cbss.
Copied from Perforce
Change: 184561
ServerID: perforce.ravenbrook.com
|
2014-02-26 14:24:34 +00:00 |
|
Richard Brooksby
|
65a00f5945
|
Minor documentation improvements to binary trees.
Copied from Perforce
Change: 184552
ServerID: perforce.ravenbrook.com
|
2014-02-26 13:23:31 +00:00 |
|
Richard Brooksby
|
dc4652b271
|
Minor tweaks to comments.
Copied from Perforce
Change: 184550
ServerID: perforce.ravenbrook.com
|
2014-02-26 13:00:07 +00:00 |
|
Gareth Rees
|
00898bf2e9
|
Fix the aver: need two slots in the array, not just one.
Copied from Perforce
Change: 184545
ServerID: perforce.ravenbrook.com
|
2014-02-26 12:51:30 +00:00 |
|
Gareth Rees
|
6971bee496
|
Make mps_args_done obsolete.
Copied from Perforce
Change: 184543
ServerID: perforce.ravenbrook.com
|
2014-02-26 12:47:27 +00:00 |
|
Gareth Rees
|
885d794e4e
|
No need for public interface to nailboardalignment.
Copied from Perforce
Change: 184536
ServerID: perforce.ravenbrook.com
|
2014-02-26 11:07:14 +00:00 |
|
Richard Brooksby
|
4ef9c96411
|
Moving and updating most of the usage documentation from the design document to the source code. design documentation should contain justification of design decisions, not a user manual.
Copied from Perforce
Change: 184547
ServerID: perforce.ravenbrook.com
|
2014-02-26 01:39:10 +00:00 |
|
Richard Brooksby
|
8f85caa56e
|
Fixing bug where cbs overwrites its own blockpool pointer with garbage.
Copied from Perforce
Change: 184532
ServerID: perforce.ravenbrook.com
|
2014-02-25 19:19:37 +00:00 |
|
Richard Brooksby
|
3da21234fd
|
Implementing arenafreecbsdelete that might work on chunks that have interesting patterns of zone allocation.
Further tidying up.
Copied from Perforce
Change: 184531
ServerID: perforce.ravenbrook.com
|
2014-02-25 19:19:09 +00:00 |
|
Richard Brooksby
|
d1b6ad25c7
|
Tidying up and wrapping arena cbs operations.
Copied from Perforce
Change: 184530
ServerID: perforce.ravenbrook.com
|
2014-02-25 16:58:23 +00:00 |
|
Richard Brooksby
|
460f988a46
|
Removing the freering allocation cache, which breaks the cbs abstraction and does not give any benefit once we’re allocating from zonecbss.
Copied from Perforce
Change: 184529
ServerID: perforce.ravenbrook.com
|
2014-02-25 11:35:18 +00:00 |
|
Richard Brooksby
|
5a03d625e2
|
Tidying up arena cbs mfs teardown.
Tidying up arena CBS initialisation and teardown.
Copied from Perforce
Change: 184523
ServerID: perforce.ravenbrook.com
|
2014-02-25 11:16:12 +00:00 |
|
Richard Brooksby
|
08a41a0ad9
|
Merging gcbench bug fix from master.
Copied from Perforce
Change: 184521
ServerID: perforce.ravenbrook.com
|
2014-02-25 11:15:52 +00:00 |
|
Richard Brooksby
|
8115dbd700
|
Quick hack at allocating from per-zone cbs. promising performance.
Copied from Perforce
Change: 184507
ServerID: perforce.ravenbrook.com
|
2014-02-25 01:51:27 +00:00 |
|
Richard Brooksby
|
3dcb5c3ea1
|
Merging bug fix for gcbench exit from development branch.
Copied from Perforce
Change: 184506
ServerID: perforce.ravenbrook.com
|
2014-02-25 01:49:49 +00:00 |
|
Richard Brooksby
|
f9051f09f6
|
Catch-up merge from master, mainly to pick up gcbench fixes.
Copied from Perforce
Change: 184504
ServerID: perforce.ravenbrook.com
|
2014-02-25 01:29:12 +00:00 |
|
Richard Brooksby
|
5ac2b0b14e
|
Bug fix. gcbench attempted to delete a nonexistent chain by default.
Copied from Perforce
Change: 184497
ServerID: perforce.ravenbrook.com
|
2014-02-24 23:03:10 +00:00 |
|
Richard Brooksby
|
5f9e072412
|
Bug fix. nonsensical case in cbsfindlargest when size is passed as zero.
Added RangeCopy.
Copied from Perforce
Change: 184496
ServerID: perforce.ravenbrook.com
|
2014-02-24 23:02:42 +00:00 |
|
Richard Brooksby
|
7db856f7b8
|
Fixed a bug in cbsfindlargest where it always deleted the entire range found even when finddeletelow or finddeletehigh were passed.
Copied from Perforce
Change: 184493
ServerID: perforce.ravenbrook.com
|
2014-02-24 22:48:48 +00:00 |
|
Richard Brooksby
|
a28fda3fc5
|
Making assertions in cbsupdatenode critical, since this is extremely hot in any cbs with fast find.
Copied from Perforce
Change: 184492
ServerID: perforce.ravenbrook.com
|
2014-02-24 22:27:16 +00:00 |
|
Richard Brooksby
|
dc38189d5c
|
Adding rangeisempty.
Copied from Perforce
Change: 184491
ServerID: perforce.ravenbrook.com
|
2014-02-24 22:26:22 +00:00 |
|
Richard Brooksby
|
018653d160
|
Fixing compiler warning.
Copied from Perforce
Change: 184490
ServerID: perforce.ravenbrook.com
|
2014-02-24 22:25:48 +00:00 |
|
Gareth Rees
|
c1ef37731a
|
Refactor the computation of the chunk size into its own function, thus avoiding an "unreachable code" error from clang.
Copied from Perforce
Change: 184482
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:32:22 +00:00 |
|
Richard Brooksby
|
4f73fc5afe
|
Initial hack at replacing the arena control pool with mvff.
Copied from Perforce
Change: 184489
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:41 +00:00 |
|
Richard Brooksby
|
b876c0ff82
|
Only finishing the cbs block pool when cbs created it. oops.
Copied from Perforce
Change: 184488
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:40 +00:00 |
|
Richard Brooksby
|
57c9c5aac8
|
Finishing the mvff block pool. oops.
Copied from Perforce
Change: 184487
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:40 +00:00 |
|
Richard Brooksby
|
5fc0d82d6a
|
Initialising a shared inline mfs for the cbss in mvff so that mvff can be used as the arena’s bootstrap and control pool.
Copied from Perforce
Change: 184486
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:40 +00:00 |
|
Richard Brooksby
|
bdd84a3a0f
|
Bug fix. ensuring cbsfinddeleterange returns oldrangereturn even if it doesn’t delete a block.
Copied from Perforce
Change: 184485
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:39 +00:00 |
|
Richard Brooksby
|
02fd3498d8
|
Catch-up merge from master, mainly to pick up gcbench fix.
Copied from Perforce
Change: 184480
ServerID: perforce.ravenbrook.com
|
2014-02-24 21:14:13 +00:00 |
|
Gareth Rees
|
09dd8e7027
|
Avoid use of unreachable code in protcatchthread on os x.
Copied from Perforce
Change: 184478
ServerID: perforce.ravenbrook.com
|
2014-02-24 18:07:14 +00:00 |
|
Richard Brooksby
|
05a2713826
|
Reforming mvff pool class to avoid using segments and to actually have a chance to return memory to the arena.
Copied from Perforce
Change: 184467
ServerID: perforce.ravenbrook.com
|
2014-02-23 21:00:53 +00:00 |
|
Richard Brooksby
|
a8720f2615
|
Adding cbssize and freelistsize functions to calculate the size of freelist contents.
Copied from Perforce
Change: 184466
ServerID: perforce.ravenbrook.com
|
2014-02-23 20:59:44 +00:00 |
|
Richard Brooksby
|
f47100fd09
|
Permitting tree traversals to abort early.
Copied from Perforce
Change: 184511
ServerID: perforce.ravenbrook.com
|
2014-02-23 15:36:27 +00:00 |
|
Richard Brooksby
|
59334b5e4f
|
Updating copyright dates.
Copied from Perforce
Change: 184510
ServerID: perforce.ravenbrook.com
|
2014-02-23 13:54:07 +00:00 |
|
David Lovemore
|
c34562d0d4
|
Add pin-leaf option to gcbench.
Remove default chain from gcbench.
Copied from Perforce
Change: 184454
ServerID: perforce.ravenbrook.com
|
2014-02-23 13:44:54 +00:00 |
|
Richard Brooksby
|
8eb1c7b647
|
Making splaysplit and splayassemble general so that they can be used easily.
Copied from Perforce
Change: 184452
ServerID: perforce.ravenbrook.com
|
2014-02-23 12:18:18 +00:00 |
|
Richard Brooksby
|
bcdce5b35d
|
Returning the results of splitting in a structure so that it’s easier to pass them on to assemble.
Copied from Perforce
Change: 184451
ServerID: perforce.ravenbrook.com
|
2014-02-23 12:10:52 +00:00 |
|
Richard Brooksby
|
42a8ffbe6a
|
Removing unnecessary case of splaying empty trees.
Copied from Perforce
Change: 184450
ServerID: perforce.ravenbrook.com
|
2014-02-23 11:52:21 +00:00 |
|
Richard Brooksby
|
1ac9877082
|
Adding a signature to splay tree structure. miscellaneous documentation and naming clean-up.
Copied from Perforce
Change: 184448
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
29cba255f2
|
Pointer-reversing splay and assemble to avoid double traversal of side tree spines in the update case.
Copied from Perforce
Change: 184447
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
96be04cb42
|
Lifting zig and zag cases into common prefix to shorten splaysplit. a few percent faster.
Copied from Perforce
Change: 184446
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
660c0821d6
|
Moving downward splay updates to after side tree linkage, allowing the optimiser to do a better job. produces about 10% speedup: xc/release/djbench -x 1234 --sshift 8 mvff
Copied from Perforce
Change: 184445
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
a52bb1d3ea
|
Implementing pointer-reversing tree traversal that does not disturb the tree shape, unlike the splay tree traversal, which flattens the tree into a list. replacing cbsiterate with this, knocking about 25% off the runtime of the test case: xc/release/djbench -x 1234 --sshift 8 mvff
Copied from Perforce
Change: 184444
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
4e1d9e6a96
|
Optimising splaytreeneighbours by observing that once one neighbour is found, the other neighbour is already in our hand in one of the side trees. this reduces the number of splays when coalescing.
Copied from Perforce
Change: 184443
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
d48028902e
|
Specialising left and right splay tree searches where no comparisons are necessary.
Copied from Perforce
Change: 184442
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
17b72c3052
|
Adding tree integrity check debugging function.
Copied from Perforce
Change: 184441
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
fee5ac310e
|
Eliminating redundant passing of tree keys by adding a method to extract the key from a tree node.
Copied from Perforce
Change: 184440
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
2bb859f62b
|
Avoid dropping children of found node in non-update case. oops.
Copied from Perforce
Change: 184439
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
f951709e99
|
Lifting out pointer-reversed updates.
Copied from Perforce
Change: 184438
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|
Richard Brooksby
|
93a0ffe8ee
|
Generalising pointer reversal of tree spines.
Copied from Perforce
Change: 184437
ServerID: perforce.ravenbrook.com
|
2014-02-23 10:41:15 +00:00 |
|