Commit Graph

  • 6b8f6c7f80 Returning rehashing to 100 times per second. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-29 01:17:49 +0100
  • a19203a9b3 Works on MSVC again. Fixed bug with failing to reset debug allocator. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-29 01:15:10 +0100
  • e33b0da4a6 Looks to be working yay! Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-28 19:58:35 +0100
  • 0a93b3b6b8 Added hanging onto old buckets after rehash. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-27 20:59:03 +0100
  • 12431cc7a2 Added a unit test for concurrent rehashing. It very much fails right now. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-25 19:59:18 +0100
  • d6eeb7055c Added test of at() Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-23 02:22:12 +0100
  • 0f0c603914 Try only restoring mapped type on exception throw. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-23 02:09:36 +0100
  • ebfc955367 Added make_node_ptrs unit test. Fixed quite a few bugs. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-23 01:56:05 +0100
  • a5388d6c0e Made operator[] rehash safe. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-23 00:49:08 +0100
  • e6a6d9f90e Disabled known failing unit test. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 02:48:14 +0100
  • b006d27205 Fixed many more bugs. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 02:44:30 +0100
  • c00c4d3442 Needed more iterator allocators. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 01:54:21 +0100
  • e396f8dfef Typo Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 01:52:39 +0100
  • 01aa4f739e Was missing allocator for iterator. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 01:51:25 +0100
  • cdf16ef825 Added missing operator== Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 01:49:11 +0100
  • bf70660040 Exception safety tests should now work. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-22 01:45:09 +0100
  • eaae257e6c Broke out Boost simulation into own headers. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-21 19:33:59 +0100
  • 7774a2b22c Added unit testing for noalloc inserts. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-20 20:02:00 +0100
  • 0a20e0b154 Added testing of extract/erase node_ptr. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-20 02:12:15 +0100
  • 263d423c2a Turned off optimisation for gcov. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-20 02:02:11 +0100
  • 1aff3d1bf6 Returned STM to use relaxed transactions. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-20 01:55:39 +0100
  • 762ab13edc Fixed a very silly bug in find(). Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-20 01:48:48 +0100
  • 7bed518a6f Added unit test for operator[]. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-19 19:49:48 +0100
  • 4b03cc1ad7 Add valgrind pass. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-17 01:35:57 +0100
  • 9bfdc2b6dc Seems I had disabled builds ... Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-17 01:19:09 +0100
  • 44bb16f864 Fixed the bug in merge() failing the unit tests. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-17 01:17:49 +0100
  • 994877f342 Added more unit tests. Added missing unordered_concurrent_map constructors. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-16 21:41:43 +0100
  • 9ab5635ed1 Implemented insert_ct() Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-16 20:59:13 +0100
  • c50412d8e6 Try reverting to GCC 4.8 to prevent STM segfault. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:59:51 +0100
  • aea2b672b9 Renamed project. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:52:11 +0100
  • 4176deb032 Reenabled unit tests. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:48:17 +0100
  • 3a72942d14 Fixed bad git branch Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:40:00 +0100
  • 863cbab9f3 Fixed silly mistake. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:26:11 +0100
  • 613645b7a0 Print json head. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:23:17 +0100
  • 67593a8d4b Fixed bad substitution. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 22:21:12 +0100
  • 104ffaaeda Print environment. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 21:52:38 +0100
  • 393bb66037 Fixed breakage. Coveralls might actually work this time. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 21:47:31 +0100
  • c52bc44b8e Realised features weren't actually finished ... Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-15 19:19:56 +0100
  • ca1840d7e5 Fixed earlier compile errors. Made a start on coveralls.io reporting. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-14 19:36:44 +0100
  • 01cb505705 Theoretically it is now feature complete, albeit not compiling yet. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-08-14 02:06:06 +0100
  • ad080f858d Iterators were completely wrong ... added a test that the map works at all. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-31 19:34:56 +0100
  • dd3844e4e1 Make transactions completely atomic. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-31 18:36:41 +0100
  • a9620a8c6b Use atomic instead relaxed transactions. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-31 00:57:40 +0100
  • e14dfafefd Fixed bad code in transaction. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-31 00:46:29 +0100
  • f793f6b10b The old trick of using pointers instead of array offsets ... Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-31 00:42:55 +0100
  • daa57374cd Erases now happen from end backwards. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 23:46:51 +0100
  • efcb545511 Move constructor for spinlock no longer copies. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 23:39:05 +0100
  • e029830733 Try gcc 4.9. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 22:51:07 +0100
  • a169bd97d5 Fixed. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 22:49:31 +0100
  • 8795283777 Turned back on searching during insert Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 21:42:21 +0100
  • 7b3fdf370f Replace shared_ptr with manual management of pointer. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 21:17:17 +0100
  • b947a6a027 Added missing item_type copy constructor. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 20:06:59 +0100
  • e5eb8e7473 Added a rehash() implementation and made references stable across inserts/erases. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 20:04:42 +0100
  • 94ce5b1846 Removed 64 byte bucket padding. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-30 18:30:05 +0100
  • bbe9c49b1c Reset max load factor to 1. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:17:57 +0100
  • 790cec539f Changed it again. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:16:02 +0100
  • 5f817e88fa Changed max load factor calc again Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:14:17 +0100
  • e324a849a0 rehash wasn't implemented. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:11:59 +0100
  • f4bb5f706a Adjusted default max load factor. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:05:50 +0100
  • 27ce41b896 Try again. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 20:00:07 +0100
  • b541422309 Fixes for GCC. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 19:58:26 +0100
  • ce62e08c65 Fixed up shadowed type Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 19:56:34 +0100
  • 7ab0f4b596 Filled out concurrent_unordered_map with lots more implementation. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-29 19:54:47 +0100
  • 2fdb7353bd Fixes for GCC. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-28 20:30:23 +0100
  • 6a5116b3ca First attempt at a final concurrent_unordered_map Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-28 20:26:50 +0100
  • 64ccde1662 Now outputs both single and multi threaded tests. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-18 19:59:56 +0100
  • 335a342a3a Only fall back to non-HLE if the lock is unlocked. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-18 19:54:34 +0100
  • 6e5da5f522 No longer use waiting around normal locks Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-18 19:48:34 +0100
  • 8fcb28b2d5 Added elision of lock iff multiple threads entering lock. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-18 19:42:08 +0100
  • 2b9b2c8814 Fixed up MSVC compatibility. Interestingly MSVC's concurrent_unordered_map can do 54m finds per sec while mine can do about 36m. On a dual core, non-TSX CPU. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-18 01:06:48 +0100
  • 72a7af2754 Now transacts for finds only, locks for everything else. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 22:11:50 +0100
  • b3da1b140d Insert is back to a single lock now. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 22:05:55 +0100
  • d6630f41a3 Returned to max performance non-TSX Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:56:39 +0100
  • 373e107d35 Typo Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:34:59 +0100
  • 4bc4b0a2c4 Restore predicate choosing HLE or normal spin lock. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:33:39 +0100
  • d6319177bc Replaced RTM with straight HLE. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:26:37 +0100
  • 1254f6920f Added memory ordering to all atomics. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:14:46 +0100
  • dfa1211de8 Reverted lack of spin precheck. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:05:48 +0100
  • b90a5ff535 Removed spinlock precheck. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 21:00:38 +0100
  • 3938dbba36 Made TSX lock HLE, normal spinlock not. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 20:54:49 +0100
  • 2681851331 Tried turning off preread. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 20:23:11 +0100
  • 468a7eb7e0 Tried adding HLE release to spinlock too. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 20:08:20 +0100
  • c6998d1064 Tried turning on HLE to see what happens. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 19:46:06 +0100
  • a9367a4931 Added test for spinlocked read. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 19:32:24 +0100
  • 58f46a9f6c Padded buckets to 64 bytes each Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 18:39:02 +0100
  • 9a27698592 Inserts now split transactions across find duplicates and insert. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-17 18:29:41 +0100
  • 8e2242390a Played around with settings to see if I could optimise RTM performance. ned Productions Jenkins build bot 2014-07-16 19:56:52 +0100
  • 9a0d8e005e Try OpenMP off. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-15 23:16:05 +0100
  • 55b493cc5b Hopefully working now? Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-15 20:29:14 +0100
  • cab3508e00 Typo Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-15 20:07:51 +0100
  • b3716fce7c Hopefully bug fixed. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-15 20:06:20 +0100
  • 881b50d812 Turned OpenMP back on. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:24:53 +0100
  • b57966994c Disable asserts for GCC. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:18:06 +0100
  • 5d23801408 Fix for GCC. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:14:22 +0100
  • 1888f7b43f Might just work now. MSVC performance (without TSX) is identical to spinlocked std. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:12:05 +0100
  • 9f57f01383 Repeat. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:03:09 +0100
  • 1b1a0b85b2 Stupid MSVC barely prints error messages anymore :( Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-14 20:00:30 +0100
  • b02f1e08f5 Fixed assignment to const problem. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-11 22:22:14 +0100
  • 5d50ac80a6 Fixed more typos. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-11 20:02:02 +0100
  • f2d3e4c805 Fixed silly typos. Niall Douglas (s [underscore] sourceforge {at} nedprod [dot] com) 2014-07-11 19:54:31 +0100