199 Commits

Author SHA1 Message Date
zhangyi
d762634380 add impl of force_push for single-single-unicast; make test_circ works 2020-03-29 14:28:53 +08:00
zhangyi
0323f31b2b fix compiling error of vs2015 2020-03-17 21:15:53 +08:00
zhangyi
3eeeec88a0 fix bugs of force_push; set PTHREAD_MUTEX_ROBUST to mutex in linux 2020-03-17 20:58:54 +08:00
zhangyi
dbe6d6d3c6 fix bugs of large message buffer cache & recycle 2019-10-24 12:23:52 +08:00
zhangyi
d4bf94c2a3 use big message cache 2019-10-23 16:23:07 +08:00
zhangyi
a20a10c590 warning: comparison of integers of different 2019-10-08 09:45:14 +08:00
mutouyun
d3afbdedc6 revert async_pool_alloc 2019-10-07 12:32:12 +00:00
mutouyun
1fd8e27994 void automatic memory recovery 2019-10-07 12:18:26 +00:00
mutouyun
448a4883f6 optimize the memory allocator 2019-10-07 11:23:31 +00:00
mutouyun
56484c0c8f optimize the memory allocator 2019-10-05 03:48:24 +00:00
zhangyi
c8cedf11cf optimize memory allocator for big size memory 2019-07-05 18:53:30 +08:00
zhangyi
6b7c561496 fix tls bugs (win); modify data structure 2019-07-04 16:37:00 +08:00
mutouyun
b3ef1ed760 modify chunk size 2019-07-03 14:26:45 +00:00
zhangyi
a4a6a9ca66 fix some bugs; improve memory allocators 2019-07-03 18:41:46 +08:00
mutouyun
fbf3c622e8 fine-tune 2019-07-02 23:07:39 +08:00
zhangyi
15e71bd1a1 add IPC_CONSTEXPR_;
add variable_wrapper instead of fixed_alloc_policy
2019-07-01 17:28:02 +08:00
木头云
4aecd5b28b
disable mem test cases 2019-06-30 12:16:54 +08:00
mutouyun
36d85e4b41 modify test cases of mem;
sync_pool_alloc => async_pool_alloc, synchronized => async_wrapper; statical => static_wrapper;
optimize ipc::mem::allocator;
use std::hardware_destructive_interference_size for cache_line_size (TBD);
simplified codes.
2019-06-30 12:02:12 +08:00
zhangyi
89a4722b20 test 16 => 8 2019-06-18 13:10:43 +08:00
zhangyi
30fa347f56 use shm::id_t instead of shm::handle in conn_info_head 2019-06-18 11:53:43 +08:00
mutouyun
fe689c9208 optimize 2019-04-07 17:01:51 +08:00
mutouyun
557a849bdf update shm interfaces 2019-03-28 12:08:02 +08:00
zhangyi
731f61a3c1 optimize structure 2019-03-25 20:14:59 +08:00
mutouyun
d223e3abb8 fix bugs; modify shm interfaces 2019-03-25 16:25:14 +08:00
mutouyun
280cc81fa2 remove useless codes 2019-03-22 22:16:53 +08:00
mutouyun
4049e78c32 fix bugs; optimize (TBD); update performance.xlsx 2019-03-20 18:26:41 +08:00
mutouyun
46051733bb optimize 2019-03-12 11:16:33 +08:00
mutouyun
bffa8ae6b8 update performance data 2019-02-13 12:12:04 +08:00
mutouyun
cee63e5f81 fix bugs of windows-waiter 2019-02-13 06:45:41 +08:00
mutouyun
a6d88a1208 ReleaseSemaphore mayn't wake WaitForSingleObject up soon 2019-02-12 23:28:57 +08:00
mutouyun
f7f06ab052 give up multi-wait temporarily 2019-02-04 10:41:39 +08:00
mutouyun
e94318c9a6 fix bugs for waiter of linux (still has some bugs in win, multi-wait is TBD) 2019-01-31 14:57:42 +08:00
mutouyun
60276495b5 [TBD] add test-case; fix some bugs 2019-01-28 10:38:09 +08:00
mutouyun
e86d3e10e1 modify producer-consumer policy flag 2019-01-26 11:20:04 +08:00
mutouyun
617d18e1ce Wno-class-memaccess 2019-01-25 22:40:05 +08:00
mutouyun
99926581d1 add error log (TBD); use pthread api for waiter 2019-01-25 11:59:53 +08:00
mutouyun
b2e48fc138 printf failure-log 2019-01-24 23:05:52 +08:00
mutouyun
34ea7095d9 test... 2019-01-24 22:27:20 +08:00
mutouyun
64a0c1a5f2 test... 2019-01-24 22:20:34 +08:00
mutouyun
4bddccf523 test... 2019-01-24 22:13:38 +08:00
mutouyun
3713d46f3e remove clear_recv 2019-01-24 21:51:22 +08:00
mutouyun
38449a598d fix test error 2019-01-24 18:43:50 +08:00
mutouyun
5c9a8e0311 remove is_fixed (TBD) 2019-01-24 17:55:23 +08:00
mutouyun
949d338f31 prepare for elem_chan 2019-01-24 13:14:00 +08:00
mutouyun
12119f0f65 refactor 2019-01-24 12:13:13 +08:00
mutouyun
61cc1fd863 adjust test 2019-01-22 23:04:09 +08:00
mutouyun
429e92983a adjust test case 2019-01-21 12:28:29 +08:00
mutouyun
290b94902a define locked_pool_alloc 2019-01-21 12:02:38 +08:00
mutouyun
27d6b0c7f5 define spin_lock 2019-01-20 21:04:16 +08:00
mutouyun
88d9f8b225 try compatible with old compilers 2019-01-18 14:59:59 +08:00
mutouyun
e5a5b9f680 compatible with old compilers 2019-01-18 12:47:41 +08:00
mutouyun
be15b2377f fine-tune code 2019-01-17 17:34:33 +08:00
mutouyun
7e44b2dd4d shm would fail with multi-thread accessing 2019-01-16 13:56:25 +08:00
mutouyun
e3f963d2b4 circ_elem.h => elem_circ.h; organ => orgnz; elem_head => conn_head 2019-01-15 15:27:06 +08:00
mutouyun
b62d5a3946 circ_elem_array => circ_elem 2019-01-15 15:14:46 +08:00
mutouyun
0f6d8b3cd7 queue_t::array_t => queue_t::elems_t 2019-01-15 15:08:00 +08:00
mutouyun
b87e96b43c ipc::circ::prod_cons => ipc::prod_cons_circ; ipc::circ::queue => ipc::queue 2019-01-15 14:42:52 +08:00
mutouyun
612a59ae31 ipc::circ::relat => ipc::relat; ipc::circ::trans => ipc::trans 2019-01-14 23:10:27 +08:00
mutouyun
cfd175dbdc fix bugs; simplify codes 2019-01-08 22:37:34 +08:00
mutouyun
60d1a6d00c update file 2019-01-08 18:42:52 +08:00
mutouyun
148344b09b update files 2019-01-08 18:35:58 +08:00
mutouyun
79f6775324 use circ::prod_cons to implement route & channel 2019-01-08 18:02:34 +08:00
mutouyun
164402b21b add prod_cons<relat::multi, relat::multi, trans::broadcast> 2019-01-07 19:10:56 +08:00
mutouyun
0dfbfd3fbf adjust ipc::sleep 2019-01-07 15:25:03 +08:00
mutouyun
224ea72547 use elem_array<ipc::circ::prod_cons> 2019-01-06 22:30:55 +08:00
mutouyun
8e104ded0f add prod_cons<relat::multi, relat::multi, trans::unicast> 2019-01-05 16:09:56 +08:00
mutouyun
ea52920b7d msleep(1) 2019-01-05 14:35:25 +08:00
mutouyun
f388a0a360 fix compiling error; preparing to refactor 2019-01-04 22:11:19 +08:00
mutouyun
17621c1e83 preparing to refactor 2019-01-04 18:48:21 +08:00
mutouyun
eae565dfc8 adjust code 2019-01-02 12:37:18 +08:00
mutouyun
2e26176234 update performence data; add implementation of pool_alloc::clear 2019-01-02 11:58:55 +08:00
mutouyun
e1c3594ca5 using ipc::buffer instead of std::vector<byte_t> 2018-12-31 22:22:54 +08:00
mutouyun
2b0f39e96e test detail::pool_alloc 2018-12-30 20:45:32 +08:00
mutouyun
cba780e9dc make pool_alloc public 2018-12-30 20:34:00 +08:00
mutouyun
319bcdab2f add test for pool_alloc 2018-12-30 16:28:14 +08:00
mutouyun
812d4b3be5 optimize channel performance 2018-12-29 12:12:27 +08:00
mutouyun
02a5920697 try pool_alloc (TBD) 2018-12-29 00:51:31 +08:00
mutouyun
dc5cb05cbd eliminate warnings 2018-12-28 16:07:16 +08:00
mutouyun
c3f7abf2e1 update benchmark data 2018-12-28 15:59:13 +08:00
mutouyun
64fc26733e use tls::pointer instead of thread_local 2018-12-28 14:53:34 +08:00
mutouyun
4253c1341c fix some bugs; add performance data to README.md 2018-12-27 20:06:36 +08:00
mutouyun
0ea8e27446 still has some bugs 2018-12-26 18:22:34 +08:00
mutouyun
492d095332 noexcept; adjust memory order 2018-12-24 13:29:20 +08:00
mutouyun
b815a5e50f channel::send will wait for a while & return false if there is no receiver 2018-12-24 12:11:50 +08:00
mutouyun
0eb61b8745 adjust file naming; supplement test cases 2018-12-24 11:56:42 +08:00
mutouyun
e54e9898fc complete all functions of ipc::channel (TODO: ut, benchmark) 2018-12-20 16:31:38 +08:00
mutouyun
70e1ac6865 linux shm should clear itself when all handles pointed it are released 2018-12-20 11:38:40 +08:00
mutouyun
69449c0d4f fix clang-test crash 2018-12-19 11:37:31 +08:00
mutouyun
69bc556a52 redesigning & refactoring (TBD) 2018-12-18 20:09:31 +08:00
mutouyun
2e05a0260d remove test_performance... 2018-12-17 23:15:43 +08:00
mutouyun
c80fbb32ea remove test_prod_cons<1, 8>() 2018-12-17 22:58:01 +08:00
mutouyun
99beccd157 error: ‘unordered_map’ in namespace ‘std’ does not name a template type 2018-12-17 22:48:59 +08:00
mutouyun
cc19a4e941 eliminate warning 2018-12-17 22:45:32 +08:00
mutouyun
09c3c557ba fix some bugs; use thread_local 2018-12-17 22:44:37 +08:00
mutouyun
cca70b018c improve test cases (has bugs) 2018-12-17 19:07:18 +08:00
mutouyun
0b3a561c53 test_channel may fail unexpectedly 2018-12-17 14:17:43 +08:00
mutouyun
09ec67182a fix QCOMPARE link error 2018-12-17 13:58:29 +08:00
mutouyun
a5580b915e define QVERIFY_EXCEPTION_THROWN if it's not exist 2018-12-17 13:44:48 +08:00
mutouyun
3b5878902a modify test case 2018-12-17 12:23:35 +08:00
mutouyun
d61aa5e5df fix bugs; modify test case; add some helper using & functions 2018-12-17 11:49:13 +08:00