Commit Graph

280 Commits

Author SHA1 Message Date
levlam
9bf5d57851 Add TD_HAVE_THREAD_AFFINITY macros. 2022-09-17 21:58:00 +03:00
levlam
9d5c151a3f Use DWORD as thread::id on Windows. 2022-09-17 13:21:04 +03:00
levlam
0eddd8d405 Add thread::set_affinity_mask/get_affinity_mask. 2022-09-14 14:38:14 +03:00
levlam
59a5f15a41 Add WaitFreeHashSet. 2022-08-20 16:19:58 +03:00
levlam
88b52f1535 Use variable step in unicode_simple_category_jump_pos. 2022-08-19 18:56:36 +03:00
levlam
5c9d306208 Optimize get_unicode_simple_category with jump table. 2022-08-19 17:56:47 +03:00
levlam
96cca84a60 Remove source from next_utf8_unsafe. 2022-08-19 16:37:44 +03:00
levlam
9e4ae8997b Fix WaitFreeHashMap::get_pointer. 2022-08-04 22:40:22 +03:00
levlam
6f46b50b4b Add WaitFreeHashMap::foreach. 2022-08-04 15:08:18 +03:00
levlam
08dbc7d9f2 Add operator[] to WaitFreeHashMap. 2022-08-04 00:38:13 +03:00
levlam
2d705004a3 Add WaitFreeVector. 2022-08-02 14:27:18 +03:00
levlam
36a57c3584 Remove unneeded FlatHashTable copy constructors. 2022-07-23 11:13:17 +03:00
levlam
ac8af37872 Add size() and empty() to WaitFreeHashMap. 2022-07-20 13:35:32 +03:00
levlam
0bdd15fe9f Fix warning. 2022-07-15 00:06:41 +03:00
levlam
abc9ed2cd9 Minor fixes. 2022-07-14 18:38:48 +03:00
Arseny Smirnov
f4c97b25ec add Mutex wrapper around std::mutex and use it instead of SpinLock 2022-07-14 16:27:06 +04:00
levlam
33d1dfec0e Add LargeFiles test. 2022-05-11 19:03:03 +03:00
levlam
5fda16c89e Add WaitFreeHashMap. 2022-05-19 19:22:33 +03:00
levlam
e4bff687cf Add td::remove_emoji_selectors test. 2022-05-12 19:18:14 +03:00
levlam
805e4d4a25 Add get_fitzpatrick_modifier test. 2022-05-12 19:11:17 +03:00
levlam
e6738efa3f Add test for remove_emoji_modifiers. 2022-05-12 19:04:37 +03:00
levlam
6377a15d02 Move is_emoji test to separate file. 2022-05-12 18:45:25 +03:00
levlam
bb0908504b Fix clean_filename test. 2022-05-12 13:10:19 +03:00
levlam
2ae689f54f Add another pq_factorize test. 2022-03-21 20:43:28 +03:00
levlam
6e86faaa0f Improve factorization tests. 2022-03-20 00:01:07 +03:00
levlam
eb89f8b35f Minor include fixes. 2022-03-12 00:50:04 +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
07bb129653 Move FlatHashTable implementation to FlatHashTable.h. 2022-03-09 18:03:56 +03:00
levlam
8b897c7c5f Move MapNode and SetNode to separate classes. 2022-03-09 16:29:47 +03:00
levlam
f993bebc2f Disable FlatHashTable for release. 2022-03-01 15:16:57 +03:00
levlam
a657cf6458 Use random begin() in HashTable. 2022-02-25 00:04:32 +03:00
levlam
ecb14f1bdd Minore fixes. 2022-02-24 21:38:57 +03:00
levlam
fe06a1d4fc Fix GCC warnings. 2022-02-23 22:46:32 +03:00
levlam
b3a784f4ba Properly clear other hashmap after move. 2022-02-23 15:58:12 +03:00
levlam
f0a2ccd0fb Remove value_type from SetNode. 2022-02-21 02:22:01 +03:00
levlam
9e8b2489bd Keep the first value from initializer_list. 2022-02-21 00:33:19 +03:00
levlam
77ccc13181 Add Map/SetNode::copy_from. 2022-02-20 23:03:34 +03:00
levlam
983cc2c45c Various hash table improvements. 2022-02-19 11:34:43 +03:00
levlam
94289c0c9e Fix SCOPE_EXIT redefinition. 2022-02-18 23:25:23 +03:00
levlam
ae3854d97c Various fixes. 2022-02-18 23:04:25 +03:00
Arseny Smirnov
952ac3ed7c FlatHashMap: add MaskSse2 to benchmark 2022-02-18 00:48:33 +01:00
Arseny Smirnov
a356cc7e3d FlatHashMap: optimizations 2022-02-18 00:30:14 +01:00
Arseny Smirnov
5ff92065bf FlatHashMap: fixes for portability 2022-02-17 20:22:46 +01:00
Arseny Smirnov
34a69e3133 FlatHashMap: add implementation with chunks 2022-02-17 19:40:18 +01:00
levlam
512c0cd3c2 Fix formatting. 2022-02-12 00:48:35 +03:00
Arseny Smirnov
ecceb51881 FlatHashSet 2022-02-11 17:41:40 +01:00
levlam
15f27455c5 Move other big classes inside FlatHashMap to unique_ptr. 2022-02-11 19:27:32 +03:00
levlam
5b4bea1fef Add HashMap build time benchmark. 2022-02-11 14:46:30 +03:00