levlam
|
43ea7be0fb
|
Add fast-moved implementation for big HashSet nodes.
|
2022-04-19 02:33:12 +03:00 |
|
levlam
|
e8c3792776
|
Don't try to increase hash table if no new element inserted.
|
2022-04-18 21:27:38 +03:00 |
|
levlam
|
9b19e88c2a
|
Use file name instead of notification sound title if there is none.
|
2022-04-17 19:01:01 +03:00 |
|
levlam
|
7364334ebe
|
Add internalLinkTypeAttachMenuBot.
|
2022-04-01 14:00:34 +03:00 |
|
levlam
|
a7a6ee25cb
|
Add pq_add_mul static function.
|
2022-03-21 20:57:47 +03:00 |
|
levlam
|
2ae689f54f
|
Add another pq_factorize test.
|
2022-03-21 20:43:28 +03:00 |
|
levlam
|
93a2b9895d
|
Optimize GCD in pq_factorize.
|
2022-03-21 19:38:40 +03:00 |
|
levlam
|
6e86faaa0f
|
Improve factorization tests.
|
2022-03-20 00:01:07 +03:00 |
|
levlam
|
ccf2da2865
|
Move find_package(ABSL) under TD_WITH_ABSEIL.
|
2022-03-14 16:20:56 +03:00 |
|
levlam
|
cd21f58e7d
|
Optimize FlatHashTable::emplace.
|
2022-03-14 13:25:41 +03:00 |
|
levlam
|
057b2d1e05
|
Remove EndSentinel, not allowed in C++14.
|
2022-03-13 23:14:18 +03:00 |
|
levlam
|
daef14ade1
|
Return NodePointer instead of iterator in find/emplace.
|
2022-03-12 15:27:14 +03:00 |
|
levlam
|
62f463b421
|
Use a sentinel for FlatHashTable::end().
|
2022-03-12 13:26:03 +03:00 |
|
levlam
|
eb89f8b35f
|
Minor include fixes.
|
2022-03-12 00:50:04 +03:00 |
|
levlam
|
254f10b885
|
Fix include.
|
2022-03-11 21:49:58 +03:00 |
|
levlam
|
1f38124861
|
Use FlatHashSet.
|
2022-03-11 21:38:48 +03:00 |
|
levlam
|
3eda5b17ac
|
FlatHashTable: optimize find.
|
2022-03-11 14:10:10 +03:00 |
|
levlam
|
acf30d3700
|
Fix HashTable::operator->.
|
2022-03-11 13:34:36 +03:00 |
|
levlam
|
2413b3fd37
|
Add unordered_map<string, ...> benchmark.
|
2022-03-09 23:23:44 +03:00 |
|
levlam
|
7f7344c363
|
Add separate FlatHashSet.h.
|
2022-03-09 23:01:10 +03:00 |
|
levlam
|
eac8550ec6
|
Move non-template FlatHashTable functions to cpp.
|
2022-03-09 18:16:59 +03:00 |
|
levlam
|
07bb129653
|
Move FlatHashTable implementation to FlatHashTable.h.
|
2022-03-09 18:03:56 +03:00 |
|
levlam
|
15520c5ddd
|
Move static functions out of FlatHashTable.
|
2022-03-09 17:00:22 +03:00 |
|
levlam
|
44b844eeeb
|
Rename is_key_empty to is_hash_table_key_empty.
|
2022-03-09 16:40:50 +03:00 |
|
levlam
|
8b897c7c5f
|
Move MapNode and SetNode to separate classes.
|
2022-03-09 16:29:47 +03:00 |
|
levlam
|
ea52727c21
|
Add FlatHashTable::create_iterator private function.
|
2022-03-09 15:44:14 +03:00 |
|
levlam
|
d8071f458e
|
Remove now unneeded identity helper functions.
|
2022-03-09 15:34:56 +03:00 |
|
levlam
|
5cda813bd9
|
Move control block back to FlatHashTable itself to avoid cache line sharing between control blocks of all big tables.
|
2022-03-09 15:17:29 +03:00 |
|
levlam
|
a59e6b8ffe
|
Add static_assert that flag in STORE_FLAG/PARSE_FLAG is bool.
|
2022-03-01 21:39:24 +03:00 |
|
levlam
|
f993bebc2f
|
Disable FlatHashTable for release.
|
2022-03-01 15:16:57 +03:00 |
|
levlam
|
1f300c50e0
|
DownloadManager fixes.
|
2022-02-28 18:25:07 +03:00 |
|
levlam
|
21a71e6441
|
Minor improvements.
|
2022-02-25 16:18:23 +03:00 |
|
levlam
|
c631c8c356
|
Slightly optimize FlatHashTable::resize.
|
2022-02-25 14:30:02 +03:00 |
|
levlam
|
9590cdd8d0
|
Optimize erase_node, part 2.
|
2022-02-25 14:27:38 +03:00 |
|
levlam
|
03a994e198
|
Optimize erase_node, part 1.
|
2022-02-25 13:53:13 +03:00 |
|
levlam
|
ef14369058
|
Store bucket_count in FlatHashTableInner.
|
2022-02-25 04:04:29 +03:00 |
|
levlam
|
01b884858d
|
Return the same begin() if hashtable wasn't changed.
|
2022-02-25 00:24:27 +03:00 |
|
levlam
|
a657cf6458
|
Use random begin() in HashTable.
|
2022-02-25 00:04:32 +03:00 |
|
levlam
|
f298d71c08
|
HashTable bug fixes.
|
2022-02-24 22:04:21 +03:00 |
|
levlam
|
ecb14f1bdd
|
Minore fixes.
|
2022-02-24 21:38:57 +03:00 |
|
levlam
|
35cf57eed8
|
Consistently use uint32 in FlatHashTable.
|
2022-02-23 22:51:43 +03:00 |
|
levlam
|
fe06a1d4fc
|
Fix GCC warnings.
|
2022-02-23 22:46:32 +03:00 |
|
levlam
|
e1909b018e
|
Reduce size of an empty FlatHashTable.
|
2022-02-23 22:13:40 +03:00 |
|
levlam
|
3da16b4501
|
Use bucket_count() instead of nodes_.size().
|
2022-02-23 18:20:25 +03:00 |
|
Arseny Smirnov
|
e2c7601c2b
|
DownloadManager: draft
|
2022-02-23 19:34:26 +01:00 |
|
levlam
|
6f2a9270a3
|
Always try shrink after node erasure.
|
2022-02-23 18:05:56 +03:00 |
|
levlam
|
d090929249
|
Store end_ in iterator instead of map itself.
|
2022-02-23 17:41:11 +03:00 |
|
levlam
|
b307396628
|
Simplify FlatHashTable implementation.
|
2022-02-23 16:34:42 +03:00 |
|
levlam
|
73ade8cc43
|
Randomize hash value and optimize bucket calculation.
|
2022-02-23 16:27:19 +03:00 |
|
levlam
|
b3a784f4ba
|
Properly clear other hashmap after move.
|
2022-02-23 15:58:12 +03:00 |
|