Commit Graph

62 Commits

Author SHA1 Message Date
Gregory Popovitch daaed8b1aa Merge pull request #23 from gtarcoder/master
Added dump&&load interface for trivially_copyable types
2019-08-25 09:15:07 -04:00
sunkaicheng 62a1674d94 remove mmap load and dump 2019-08-25 20:47:05 +08:00
sunkaicheng 3653f03683 fix typo 2019-08-25 20:12:14 +08:00
debugman 8fbc1526e1 Merge branch 'master' into mmap 2019-08-25 20:09:01 +08:00
sunkaicheng 34ecd92f63 added mmap load 2019-08-25 19:59:28 +08:00
sunkaicheng 61f1bdb037 use single file to store data for parallel hash 2019-08-23 10:22:41 +08:00
sunkaicheng 0866192922 use single file to store data for parallel hash 2019-08-21 09:09:12 +08:00
sunkaicheng 6ae6e2ee49 only support dump&load is_trivially_copyable types 2019-08-20 00:56:59 +08:00
greg bb885f1a9f throw exception for invalid operator[]() access as standard requires 2019-08-18 15:35:47 -04:00
sunkaicheng ba121d043f added tests 2019-08-18 22:50:47 +08:00
sunkaicheng dd9af7f8a5 refine code 2019-08-18 18:29:46 +08:00
sunkaicheng 5cd20dc4a6 added serialize compare and added parallel dump&load 2019-08-16 10:37:28 +08:00
sunkaicheng 5e5ade8c6e added load&dump interface 2019-08-14 23:09:22 +08:00
greg be8ec975b7 Merge branch 'master' of https://github.com/greg7mdp/parallel-hashmap 2019-07-31 12:20:30 -04:00
greg b45a4938ab fix warnings - issue #21 2019-07-31 12:20:28 -04:00
Force Charlie 6c56bb581e Avoid building failures on the Windows platform
When include <Windows.h> `min/max` macro definition conflicts with `std::min/std::max`
2019-07-29 16:35:21 +08:00
greg 20bcc22b70 Do nothing when calling clear() on empty hash_map. Cereal does call map.clear() when deserializing. Issue #19. 2019-07-27 15:11:58 -04:00
greg 1aeeff1b65 reserve and capacity not matching #18
reserve(), especially for parallel_*_hash_*, was reserving excessive sizes. Now the size is closer to the one requested, even though the "power-of-two" capacity requirement still creates a capacity() greater than what is asked in reserve().
2019-07-25 20:43:58 -04:00
greg 538f6ef31d Update some outdated comments 2019-07-21 20:00:52 -04:00
greg ac4572e26b remove some duplicated code 2019-07-09 23:15:17 -04:00
greg 7c921d7b09 Merge branch 'master' of https://github.com/greg7mdp/parallel-hashmap 2019-07-09 23:06:30 -04:00
greg 3b2852805d fix warning 2019-07-09 23:06:27 -04:00
Force Charlie c7146f61d0 Expand string types for heterogeneous lookups
In Windows, it's almost impossible to avoid using wchar_t, so
heterogeneous lookups that support std::wstring/std::wstring_view
are pretty good.
2019-07-02 14:46:03 +08:00
greg 5ce8509780 Fix build issue with Intel compiler (issue #9) 2019-05-12 19:46:25 -04:00
greg 2f49b79885 Fix build issue with Intel compiler (issue #9) 2019-05-12 19:30:36 -04:00
greg d516003350 Fix build issue with Intel compiler (issue #9) 2019-05-12 19:04:16 -04:00
greg 8aa960332d Fix build issue with Intel compiler (issue #9) 2019-05-12 18:59:57 -04:00
greg 6f772f0b00 Revert "Fix build issue with Intel compiler (issue #9)"
This reverts commit 2585ec964a.
2019-05-12 18:30:06 -04:00
greg 2585ec964a Fix build issue with Intel compiler (issue #9) 2019-05-12 17:45:40 -04:00
greg 27f872121b try fix for icc error " Error #3466 inheriting constructors must be inherited from a direct base class" 2019-05-10 20:35:54 -04:00
greg 470f0644c0 cleanup a couple of headers included twice 2019-04-29 22:20:27 -04:00
greg 3fb4990579 reorganize headers so that phmap_fwd_decl.h is more usable 2019-04-29 22:01:08 -04:00
greg 6f91dc7962 support the boost hash_value() method for providing hash value. 2019-04-29 17:12:20 -04:00
greg ff561f34db fix compilation warnings 2019-04-18 21:59:12 -04:00
greg e478a4fc85 Improve internal locking support - cleanup examples 2019-04-14 13:04:25 -04:00
greg 1a298f5ed9 Fix a couple small performance issues in erase() 2019-04-14 09:27:17 -04:00
greg 47d67d861a Improve lock support - issue #2 2019-04-07 18:12:32 -04:00
greg 38f81c15bc improve mutex support 2019-04-07 12:19:04 -04:00
greg 6493bd35f6 fix possible deadlock when using internal synchronization 2019-04-07 09:14:37 -04:00
greg c6b1328272 remove debugging code & update nexcept clauses. 2019-04-06 17:57:17 -04:00
greg 7cc2644fba Always "mix" hash values in case poor hash values are provided. 2019-04-05 21:12:24 -04:00
greg 2234bd037b The default hash does not like using pointers as keys. #4 2019-04-02 07:25:46 -04:00
greg e15f2bb959 fix multiply defined symbols 2019-04-01 13:13:20 -04:00
greg 0c53c040fd change variable name to respect standard reserved identifiers (issue #1) 2019-04-01 09:06:52 -04:00
greg d5bad0bb45 use faster hash mixing algo using intrinsics 128 bit multiplication 2019-03-31 19:07:53 -04:00
greg 80f29e9932 improve the hash "combine" support. 2019-03-31 10:59:35 -04:00
greg d0c2c9a2d2 remove some dead code 2019-03-30 20:35:52 -04:00
greg 2b41b843b3 add "void _erase(const_iterator cit)" APIs 2019-03-30 14:39:10 -04:00
greg 1e595ed7b5 update erase() to return an iterator, and README as well 2019-03-29 20:34:15 -04:00
greg 3c9776a74d make "forward declare" header and edit README 2019-03-28 20:27:25 -04:00