Commit Graph

2122 Commits

Author SHA1 Message Date
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
25dca38ef9 merge from dev-win 2019-08-26 12:47:16 -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
daan
2c19388bcf initialize mimalloc options at process load 2019-08-26 11:44:41 -07:00
daan
7ce9c02fd4 make cas weak use release memory order; improve free assembly 2019-08-26 08:20:26 -07:00
daan
5c7c106d62 strengthen some atomic operations for weak memory models 2019-08-26 08:11:58 -07:00
daan
2159c22415 fix atomic declaration on windows 2019-08-25 23:06:18 -07:00
daan
baabc77503 use proper atomic initialization macros 2019-08-25 23:02:41 -07:00
daan
e8664001f7 Use standard _Atomic declarations and clean up atomic operations 2019-08-25 22:59:12 -07:00
daan
6e360d34ee fix 1GB huge page flag on Linux 2019-08-25 13:15:26 -07:00
daan
b0e38d5697 merge from dev-win 2019-08-25 13:12:57 -07:00
daan
23c35f4aba merge from dev 2019-08-25 13:07:07 -07:00
daan
b86c851cca put segment cache behind an option and disable by default 2019-08-25 12:35:14 -07:00
daan
038e8fd7d6 reduce retire size 2019-08-25 12:10:18 -07:00
daan
c3c6401633 merge from master; fix windows environment reading 2019-08-25 11:36:34 -07:00
daan
7972b64a82 resolve race on option initialization 2019-08-25 11:18:16 -07:00
daan
a431d80fc3 better object sizes for large objects 2019-08-25 10:20:03 -07:00
daan
80a36f1d7c reduce page retire words to 32 2019-08-24 17:02:32 -07:00
daan
19f473e49a merge from dev; free huge objects directly and keep them abandoned 2019-08-24 16:16:09 -07:00
daan
23812cc0ac do not keep a queue of huge pages and free them directly 2019-08-24 15:45:14 -07:00
daan
6f5492cef8 enable initial lazy commit and optional decommit to reduce commit charge with many threads 2019-08-24 15:00:55 -07:00
daan
612b2cc9b7 clean up segment slice handling 2019-08-24 12:20:32 -07:00
daan
cce38bc147 more conservative setting to avoid internal fragmentation 2019-08-24 07:32:23 -07:00
Jim Huang
99e071cf2c Link with -lrt for older glibc
Quoted from Linux Programmer's Manual (2017-09-15):
    #include <time.h>
    int clock_gettime(clockid_t clk_id, struct timespec *tp);
    Link with -lrt (only for glibc versions before 2.17).

This patch adds additional checks for librt availability and append
target_link_libraries accordingly. librt is absent on macOS.

Fixed #139
2019-08-24 21:24:56 +08:00
daan
082f012a91 merge from dev-win 2019-08-23 21:56:28 -07:00
daan
d04d379f66 fix merge conflicts 2019-08-23 21:44:07 -07:00
daan
d3224d0bba Merge branch 'dev' into dev-win 2019-08-23 21:42:32 -07:00
daan
6c6fcad242 remove threadid from pages and keep page flags separate (cherry picked) 2019-08-23 21:42:24 -07:00
daan
15552eba79 ensure volatile declaration for abandoned_next field 2019-08-23 21:39:27 -07:00
daan
25ea9cf142 on windows use 4TiB area for aligned allocation 2019-08-23 21:38:45 -07:00
daan
acde83543f remove threadid from pages and keep page flags separate 2019-08-23 14:08:00 -07:00
daan
b511309709 ensure volatile declaration for abandoned_next field 2019-08-23 13:44:43 -07:00
daan
a1c5218ff5 use 4TiB area on windows 64-bit for aligned allocation 2019-08-23 11:33:06 -07:00
daan
5d3bf1c844 don't commit or reset in huge OS pages 2019-08-23 11:22:35 -07:00
Nathan Moinvaziri
4c9213887b Fixed compiler warning about converting from bool to BOOL (performance warning) 2019-08-22 14:47:08 -07:00
Daan
7f29dec44a
Merge pull request #134 from kile0/kile/vs2019
Add VS solutions that can leverage the MSVC 2019 runtime
2019-08-21 16:00:03 -07:00
daan
3e01eac105 Merge branch 'dev-win' into dev-win-exp 2019-08-21 14:38:58 -07:00
daan
5c912f16d4 merge from remote 2019-08-21 11:35:09 -07:00
daan
a3c4b1c95b merge from dev-win 2019-08-21 11:18:05 -07:00
daan
71121a7457 Merge branch 'dev-win' into dev-exp 2019-08-21 11:12:25 -07:00
daan
e7bd8c5d14 merge with dev-win 2019-08-21 11:11:40 -07:00
Jakub Szymanski
ee475fd8cd add warning when no avaiable mem 2019-08-21 11:11:36 -07:00