1043 Commits

Author SHA1 Message Date
daan
9bf9bcb9b9 Merge branch 'master' into dev 2019-10-12 10:42:54 -07:00
daan
7441aa4212 update redirection module to add additional checks 2019-10-12 10:42:34 -07:00
daan
480f7683a9 cleanup delayed output 2019-10-12 10:42:04 -07:00
Daan Leijen
5e9b37dc4e add delayed output buffer 2019-10-12 10:21:42 -07:00
Daan Leijen
7d018dc9e1 add delayed output buffer 2019-10-11 17:03:09 -07:00
Daan Leijen
e946d56ba0 Merge branch 'master' of https://github.com/microsoft/mimalloc 2019-10-07 12:13:51 -07:00
Daan Leijen
c9d474d298 update mimalloc build version 2019-10-07 12:13:40 -07:00
Daan
8830c7bccc
Update readme.md 2019-10-07 12:08:44 -07:00
Daan Leijen
114d05cd76 bump to version 1.1 v1.1.0 2019-10-07 09:54:23 -07:00
daan
46866330c1 Merge branch 'dev' into dev-win 2019-09-17 18:07:50 -07:00
daan
1de6c22b49 remove incorrect region_count comment 2019-09-17 18:07:32 -07:00
daan
8857f0a5ef merge from dev 2019-09-17 17:49:56 -07:00
daan
5744f90882 remove thread init/done verbose messages 2019-09-17 17:35:20 -07:00
daan
60efb62155 make secure a build option only 2019-09-17 17:31:42 -07:00
daan
d72b5350e3 fix error code on mprotect failure 2019-09-17 17:31:25 -07:00
daan
3a697abf1f set SONAME and use symbolic link at install (issue #9 and #58) 2019-09-15 20:26:30 -07:00
daan
33f4ec4ac6 put new-delete overrides in separate header file 2019-09-15 19:19:00 -07:00
daan
adf8e30eda ensure large page privileges are acquired on windows when calling reserve_huge_os_pages 2019-09-14 15:23:28 -07:00
daan
f280f14e31 roll back commit 3d8c331 and start region search from last idx per thread M3 2019-09-13 12:16:40 -07:00
daan
6896408ab1 fix definition of mi_recalloc_tp 2019-09-11 20:49:18 -07:00
daan
c977a1629d update documentation 2019-09-11 20:48:41 -07:00
daan
24777f6a91 limit aligned allocation to power-of-two alignment 2019-09-11 17:49:28 -07:00
daan
050e7cedf4 roll back commit 0aec6d93 on alignment >= size as it breaks assertions in tensorflow 2019-09-11 15:48:44 -07:00
Daan Leijen
1909cfb346 refine mi_os_good_alloc_size and use it for huge pages (to ensure realloc is bounded as in #153 2019-09-10 13:26:51 -07:00
Daan Leijen
d278c26c0e round huge page sizes into 12.5% increments (issue #153) 2019-09-10 07:54:31 -07:00
daan
e2202f6bbe update vs2019 projects 2019-09-09 12:56:15 -07:00
daan
8903d7a526 fix tests for aligned allocation 2019-09-09 08:21:35 -07:00
daan
ce81af1119 use mi_is_power_of_two when possible (pr #118) 2019-09-09 08:12:50 -07:00
daan
b104e434e4 fix volatile declaration on function 2019-09-09 08:07:35 -07:00
daan
efe083a548 Merge branch 'master' into dev 2019-09-09 08:06:35 -07:00
Daan
270e765454
Merge pull request #148 from pitrou/tls-local-dynamic
Fix #147: provide CMake option for alternate TLS mechanism
2019-09-09 08:05:22 -07:00
daan
23155c5d71 add recursion guard to deferred callback 2019-09-09 08:02:41 -07:00
daan
e227341f5b fix mi_collect being called with empty heap (issue #150) 2019-09-09 07:54:36 -07:00
daan
7b63bc4211 add alignment check to aligned_alloc for C11 compliance 2019-09-07 12:02:22 -07:00
daan
0aec6d9302 don't align to sizes greater than than the allocation size 2019-09-07 12:01:54 -07:00
daan
b241910810 don't allocate more than PTRDIFF_MAX on aligned allocations 2019-09-07 11:52:21 -07:00
daan
f2f7c8d0e9 fix volatile declaration on function pointer 2019-09-07 09:18:29 -07:00
daan
89858ab791 improve page_free_extend performance slightly; do not maintain expensive statistics in release mode 2019-09-06 16:48:48 -07:00
daan
47fc73d694 fix c++ compilation; make default output non-atomic 2019-09-06 11:51:22 -07:00
daan
f38fcf79eb ensure addresses of large aligned allocations are randomized 2019-09-06 09:19:26 -07:00
Jakub Szymanski
1a7b1783fa changed strategy to reduce contention for region search and vs2019 project fix 2019-09-05 08:13:52 -07:00
daan
2be3208734 add wrap-around for large aligned allocations on Windows and Linux 2019-09-04 21:03:00 -07:00
daan
e73982c4cf better alignment for large and huge pages inside a segment 2019-09-04 18:42:37 -07:00
daan
3bbc047ba6 reserve huge pages returns actual number of pages reserved 2019-09-04 12:26:02 -07:00
daan
e302737830 reserve huge pages returns actual number of pages reserved 2019-09-04 12:23:28 -07:00
daan
6c43ae2bde add later thread-done invokation; add mi_is_redirected call 2019-09-04 12:00:41 -07:00
Antoine Pitrou
b69a4b52c0 Fix #147: provide CMake option for alternate TLS mechanism
This allows use of dlopen() with mimalloc on Unix.
2019-09-04 12:02:16 +02:00
daan
b7e506ad9d fix for incorrect region count 2019-09-03 19:33:38 -07:00
daan
3c563816c0 read regions count on every loop iteration 2019-09-03 18:25:01 -07:00
daan
aea21486dd fix regions_count tracking in case of concurrent region allocations 2019-09-03 18:20:56 -07:00
daan
a6a956c589 add back zero initialized re-allocation 2019-09-03 10:57:39 -07:00
daan
7a91368108 pass page to block_zero_init and extend to block_size 2019-09-03 10:11:24 -07:00
daan
739d11313c fix commit zero on windows 2019-09-02 14:53:22 -07:00
daan
d1bd1644d5 support zero-initialized memory detection 2019-09-02 13:16:52 -07:00
Daan
216d75a222
Update readme.md 2019-09-02 10:48:49 -07:00
daan
21f7119920 Merge branch 'master' into dev 2019-09-02 10:24:23 -07:00
Daan
6e6e8ef800
Update readme.md 2019-09-02 10:22:52 -07:00
daan
31726c6554 fix type; fix comment v1.0.8 2019-09-02 10:18:34 -07:00
daan
d6e35ffd83 Merge branch 'dev' into dev-exp 2019-09-02 10:10:08 -07:00
daan
d7982f8733 make output name not depend on build type capitalization (issue #144) v1.0.7 2019-09-02 09:57:39 -07:00
daan
8ef8ddecc5 Merge branch 'master' into dev 2019-09-02 09:53:34 -07:00
daan
783ae72743 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2019-09-02 09:53:30 -07:00
Daan
f5be3f4aeb
Merge pull request #143 from devnexen/bsd_build_fix
FreeBSD (and possibly NetBSD) build fix.
2019-09-02 09:51:12 -07:00
Daan
7f6fd95308
Merge pull request #145 from pitrou/cmake-disable-tests
Add an option to disable building tests
2019-09-02 09:50:32 -07:00
Daan
683989a85c
Merge pull request #146 from carenas/master
use TLS guard OpenBSD
2019-09-02 09:49:35 -07:00
daan
e60174e836 add more targets for redirection 2019-09-02 08:51:31 -07:00
daan
136e120d51 update redirection modules 2019-09-01 17:21:58 -07:00
daan
e874844562 update redirection to include fixes for x86 2019-09-01 12:18:29 -07:00
Carlo Marcelo Arenas Belón
0e35ec3879 avoid deadlock with OpenBSD 2019-09-01 01:06:01 -07:00
daan
ab5af8fdad merge from dev 2019-08-30 14:38:28 -07:00
daan
9fc726619a guard against passing stdin/stderr as output 2019-08-30 14:37:04 -07:00
daan
86ee1722f5 in verbose mode, list all options at startup 2019-08-30 14:34:46 -07:00
daan
0aed30b387 update redirection modules; more robust and works on older windows versions 2019-08-29 23:37:51 -07:00
daan
f35f643508 merge from dev 2019-08-29 09:52:22 -07:00
daan
7bf12c7b5f make output function configurable; remove <stdio.h> from standard includes 2019-08-29 09:42:50 -07:00
daan
4819d3f78f expose mi_stats_merge function 2019-08-29 09:01:00 -07:00
daan
4b39c0b06e fix eager_delay test, and allow large OS pages even without eager commit enabled 2019-08-29 07:55:57 -07:00
daan
64c1d6de86 fix mi_likely branch that was marked as unlikely 2019-08-29 07:50:35 -07:00
daan
e8c7505853 only set has_aligned flag if really necessary 2019-08-29 07:49:40 -07:00
daan
154fd471a1 fix comparison warning 2019-08-29 07:48:15 -07:00
daan
d381fcd9fa rename lazy to eager_commit_delay 2019-08-28 12:09:23 -07:00
daan
9af51506a6 track commit and is_large status more precisely 2019-08-28 11:58:30 -07:00
Antoine Pitrou
cbc392434c Add an option to disable building tests 2019-08-28 17:26:56 +02:00
David Carlier
3903a10e93 FreeBSD (and possibly NetBSD) build fix. 2019-08-28 07:17:58 +00:00
daan
a551f3abc4 more precise commit statistics 2019-08-27 18:08:03 -07:00
daan
18e02c3766 try allocating non-eager segments in non-fixed memory 2019-08-27 17:02:56 -07:00
daan
23b5593af6 Merge branch 'dev' of https://github.com/microsoft/mimalloc into dev 2019-08-27 16:40:47 -07:00
Daan
afaf4924cb
Merge pull request #142 from jserv/clarify-ldpreload
Clarify LD_PRELOAD on dynamically-linked ELF
2019-08-27 16:40:21 -07:00
Daan
a7d0d19b07
Merge pull request #141 from devnexen/mac_os_anon_pg_option
macOS: anonymous page ID make it as env var.
2019-08-27 16:39:26 -07:00
Jim Huang
61e4b83f36 Clarify LD_PRELOAD on dynamically-linked ELF
LD_PRELOAD is an environment variable that can be set to load ELF
shared objects before all others. Linux and BSD are known to fit.
This change also unifies the use of command line, ensuring the prefix
"> " prompt.
2019-08-28 06:44:40 +08:00
David Carlier
b72a2d9659 macOS: anonymous page ID make it as env var. 2019-08-27 19:17:41 +01:00
daan
cf7bb70117 Merge branch 'master' into dev 2019-08-27 10:01:20 -07:00
Daan
f3c082462b
Merge pull request #137 from nmoinvaz/fixes/bool-perf-warning
Fixed compiler warning about converting from bool to BOOL
2019-08-27 09:58:29 -07:00
Daan
1b9c68667b
Merge pull request #140 from jserv/fix-rt-linkage
Link with -lrt for older glibc
2019-08-27 09:56:59 -07:00
daan
db8d443ae6 track more precisely if memory is fixed or committed 2019-08-26 22:45:26 -07:00
daan
eea093000a graceful fallback for huge page allocation on Linux 2019-08-26 13:47:52 -07:00
daan
f0a12699c2 remove atomic_iread 2019-08-26 12:42:25 -07:00
daan
3d8c331a1c search regions always from the lowest index 2019-08-26 12:41:59 -07:00
daan
8b06ab1e49 fix check on gigabyte alignment of huge os pages on windows 2019-08-26 12:41:35 -07:00
daan
a654732d99 merge from dev new atomics 2019-08-26 12:30:03 -07:00