- 23 Nov, 2009 1 commit
-
-
mattijs authored
-
- 20 Nov, 2009 1 commit
-
-
henry authored
-
- 12 Nov, 2009 1 commit
-
-
mattijs authored
-
- 04 Nov, 2009 2 commits
-
-
mattijs authored
-
Mark Olesen authored
- previous draft version was HashTbl - accidentally still had canonicalSize in templated code
-
- 03 Nov, 2009 4 commits
-
-
mattijs authored
-
mattijs authored
-
Mark Olesen authored
- don't let automatic resize into integer overflow - avoid possible overflow in increment() StaticHashTable - fix erase()/++ as per HashTbl - might still be worth dropping it, but at least it'll be in better condition when it gets chucked!
-
Mark Olesen authored
- the end iterators and canonicalSize are independent of the templated parameters, so move them to HashTblCore - this avoid allocating separate end iterator at all. end(), cend() return a iteratorEnd. iterator == iteratorEnd just checks for non-NULL pointer on iterator. The compiler should optimize most of it away.
-
- 31 Oct, 2009 2 commits
-
-
Mark Olesen authored
-
Mark Olesen authored
-
- 30 Oct, 2009 5 commits
-
-
Mark Olesen authored
- fix off by one error in erase/increment code
-
Mark Olesen authored
- iterators store pointers instead of references to the HashTbl. This lets us use the default bitwise copy/assignment - add empty constructor for iterators. It returns the equivalent to end(). This lets us do this: HashTbl<label>::iterator iter; // some time later iter = find(Value); - erase(const HashTbl<AnyType, Key, AnyHash>&) is now more generous. Only the Key type matters, not the hashing function.
-
Mark Olesen authored
- for the hashTableTest3, it seemed to slow things down a bit loop 0 - Erased 100000 elements (size 2900000 capacity 4194304) 0.31 s loop 1 - Erased 100000 elements (size 2800000 capacity 4194304) 0.01 s loop 2 - Erased 100000 elements (size 2700000 capacity 4194304) 0 s loop 3 - Erased 100000 elements (size 2600000 capacity 4194304) 0 s loop 4 - Erased 100000 elements (size 2500000 capacity 4194304) 0.01 s loop 5 - Erased 100000 elements (size 2400000 capacity 4194304) 0 s loop 6 - Erased 100000 elements (size 2300000 capacity 4194304) 0 s loop 7 - Erased 100000 elements (size 2200000 capacity 4194304) 0 s loop 8 - Erased 100000 elements (size 2100000 capacity 4194304) 0.01 s loop 9 - Erased 100000 elements (size 2000000 capacity 4194304) 0.44 s loop 10 - Erased 100000 elements (size 1900000 capacity 4194304) 0.44 s loop 11 - Erased 100000 elements (size 1800000 capacity 4194304) 0.39 s loop 12 - Erased 100000 elements (size 1700000 capacity 4194304) 0.4 s loop 13 - Erased 100000 elements (size 1600000 capacity 2097152) 0.15 s loop 14 - Erased 100000 elements (size 1500000 capacity 2097152) 0.01 s loop 15 - Erased 100000 elements (size 1400000 capacity 2097152) 0 s loop 16 - Erased 100000 elements (size 1300000 capacity 2097152) 0 s loop 17 - Erased 100000 elements (size 1200000 capacity 2097152) 0.01 s loop 18 - Erased 100000 elements (size 1100000 capacity 2097152) 0 s loop 19 - Erased 100000 elements (size 1000000 capacity 2097152) 0.27 s loop 20 - Erased 100000 elements (size 900000 capacity 2097152) 0.2 s loop 21 - Erased 100000 elements (size 800000 capacity 1048576) 0.1 s loop 22 - Erased 100000 elements (size 700000 capacity 1048576) 0 s loop 23 - Erased 100000 elements (size 600000 capacity 1048576) 0 s loop 24 - Erased 100000 elements (size 500000 capacity 1048576) 0.12 s loop 25 - Erased 100000 elements (size 400000 capacity 524288) 0.04 s loop 26 - Erased 100000 elements (size 300000 capacity 524288) 0.01 s loop 27 - Erased 100000 elements (size 200000 capacity 262144) 0.02 s loop 28 - Erased 100000 elements (size 100000 capacity 131072) 0.02 s loop 29 - Erased 100000 elements (size 0 capacity 2) 0 s
-
Mark Olesen authored
- The ideas as discussed in email - The speedup is really there. Before loop 0 - Erased 100000 elements: 3.82 s loop 1 - Erased 100000 elements: 11.45 s loop 2 - Erased 100000 elements: 19.46 s loop 3 - Erased 100000 elements: 27.73 s loop 4 - Erased 100000 elements: 38.74 s ^C After loop 0 - Erased 100000 elements (size 2900000 capacity 8388608) 0.01 s loop 1 - Erased 100000 elements (size 2800000 capacity 8388608) 0 s loop 2 - Erased 100000 elements (size 2700000 capacity 8388608) 0.01 s loop 3 - Erased 100000 elements (size 2600000 capacity 8388608) 0 s loop 4 - Erased 100000 elements (size 2500000 capacity 8388608) 0 s loop 5 - Erased 100000 elements (size 2400000 capacity 8388608) 0 s loop 6 - Erased 100000 elements (size 2300000 capacity 8388608) 0 s loop 7 - Erased 100000 elements (size 2200000 capacity 8388608) 0 s ...
-
Mark Olesen authored
- rename to HashTable later when it is considered stable
-
- 26 Oct, 2009 1 commit
-
-
mattijs authored
-
- 13 Aug, 2009 1 commit
-
-
mattijs authored
-
- 10 Aug, 2009 1 commit
-
-
Mark Olesen authored
- allow construct with Xfer container for the addressing - Replaced non-const addressing() method in BiIndirectList with resetAddressing() method as per IndirectList
-
- 06 Aug, 2009 1 commit
-
-
Andrew Heather authored
-
- 23 Jul, 2009 2 commits
-
-
Mark Olesen authored
- use shift-right instead of shift-left formulation to avoid wrong behaviour with non-optimized compilation when the packed items fit exactly in the available number of bits.
-
- use shift-right instead of shift-left formulation to avoid wrong behaviour with non-optimized compilation when the packed items fit exactly in the available number of bits.
-
- 25 Jun, 2009 1 commit
-
-
mattijs authored
-
- 23 Jun, 2009 1 commit
-
-
henry authored
-
- 22 Jun, 2009 2 commits
-
-
Henry Weller authored
-
mattijs authored
-
- 18 Jun, 2009 1 commit
-
-
mattijs authored
-
- 19 May, 2009 1 commit
-
-
Mark Olesen authored
- made const_iterator::operator* and const_iterator::operator() const only - added const versions of iterator::operator* and iterator::operator()
-
- 18 May, 2009 1 commit
-
-
Mark Olesen authored
- Read a bracket-delimited list, or handle a single value as list of size 1. Mostly useful for handling command-line arguments. eg, if (args.options().found("patches")) { patches = readList<word>(IStringStream(args.options()["patches"])()); } can handle both of these: -patches patch0 -patches \( patch1 patch2 patch3 \)
-
- 27 Apr, 2009 1 commit
-
-
Mark Olesen authored
- DynamicList gets append methods as per List - misc cosmetic changes
-
- 22 Apr, 2009 1 commit
-
-
Mark Olesen authored
-
- 21 Apr, 2009 1 commit
-
-
Mark Olesen authored
- PackedList comments - solution.C verbosity about new solver syntax on master only
-
- 16 Mar, 2009 2 commits
-
-
Mark Olesen authored
- TODO: binary output is still a bit silly
-
Mark Olesen authored
-
- 12 Mar, 2009 3 commits
- 10 Mar, 2009 1 commit
-
-
mattijs authored
-
- 04 Mar, 2009 2 commits
-
-
Mark Olesen authored
-
Mark Olesen authored
-