Commit graph

111 commits

Author SHA1 Message Date
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
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
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
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
David Carlier
b72a2d9659 macOS: anonymous page ID make it as env var. 2019-08-27 19:17:41 +01:00
daan
db8d443ae6 track more precisely if memory is fixed or committed 2019-08-26 22:45:26 -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
e8664001f7 Use standard _Atomic declarations and clean up atomic operations 2019-08-25 22:59:12 -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
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
e7bd8c5d14 merge with dev-win 2019-08-21 11:11:40 -07:00
daan
86d4ded831 Merge branch 'dev' into dev-exp 2019-08-20 08:27:46 -07:00
daan
a5071eb510 Merge branch 'dev' into dev-win 2019-08-20 07:50:03 -07:00
daan
03d994648a better option interface: option_enable, option_disable, and option_set_enabled 2019-08-20 07:47:50 -07:00
daan
7a2e0df5ea merge from dev 2019-08-20 07:37:46 -07:00
daan
d52e4039b6 remove the reset_discards option 2019-08-20 07:06:11 -07:00
daan
79487dbedf add checks for right option order 2019-08-20 06:58:51 -07:00
daan
0e639addb0 add environment option to reserve huge pages upfront 2019-08-19 14:14:50 -07:00
daan
42dedb00ec initial implementation of mi_os_reserve_huge_pages 2019-08-19 11:10:06 -07:00
daan
f35c2c5201 improve message printing from redirection module 2019-08-11 16:38:58 -07:00
daan
74a5c17178 update order of options; make eager_region_commit 0 on windows by default 2019-08-10 15:44:55 -07:00
daan
2fee6f98d7 Merge branch 'master' into dev 2019-08-10 15:23:43 -07:00
daan
78a70ada2e Fix option reading even when preloading on Windows 2019-08-10 15:17:40 -07:00
daan
095a87be2e add recursion guard for overriding in windows 2019-07-23 17:57:27 -07:00
daan
7555260759 Merge branch 'jserv-include-what-you-use' into dev 2019-07-22 10:07:03 -07:00
daan
959d9289b1 merge and improve to upper case in options 2019-07-22 10:06:45 -07:00
Daan
80400c9946
Merge pull request #111 from jserv/avoid-strlen-in-loop
Avoid using strlen function in loop
2019-07-22 09:51:02 -07:00
Jim Huang
1e27cef873 Enforce strict include-what-you-use policy
The include-what-you-use (IWYU) policy is beneficial to faster
compilation and fewer recompilations. Many build tools, such as GNU make,
provide a mechanism for automatically figuring out what .h files a .cc
file depends on. These mechanisms typically look at #include lines. When
unnecessary #includes are listed, the build system is more likely to
recompile in cases where it is not necessary.

With the enforcement, header file <include/mimalloc.h> no longer
includes <stdlib.h>.

Reference:
https://github.com/include-what-you-use/include-what-you-use/blob/master/docs/WhyIWYU.md
2019-07-22 04:54:14 +08:00
Jim Huang
c382c72cf2 Avoid using strlen function in loop 2019-07-21 22:30:42 +08:00
Jim Huang
1ffa48cc61 Add branch prediction hint for mi_option_get
mi_option_get is called frequently in stress tests, and the patch adds
extra hint to the compiler to emit instructions that will cause branch
prediction to favour the "likely" side of a jump instruction.
2019-07-21 21:42:00 +08:00
daan
fcd0253ac9 limit number of error messages to 10 2019-07-19 09:27:14 -07:00
daan
fd6fd23470 make eager-region-commit false by default on windows 2019-07-18 21:48:58 -07:00
daan
93c8a5b693 full overriding api supported 2019-07-18 21:12:40 -07:00
daan
c228ecefd8 update for new dynamic direction on windows 64-bit 2019-07-18 18:59:32 -07:00
daan
08e0f14c2a document experimental options 2019-07-15 14:32:54 -07:00
daan
ea9dbd1036 set better default options for performance 2019-07-15 13:19:26 -07:00
daan
8a6b474fa0 merge from dev 2019-07-11 16:32:11 -07:00
daan
a932e43650 experiment with larger small pages 2019-07-11 15:44:37 -07:00
daan
b80b0837ab Merge branch 'dev-win' into dev-exp 2019-07-10 07:50:26 -07:00
daan
5b6f4ecc12 fix compilation warning 2019-07-10 07:50:04 -07:00
daan
224951695a enable non eager commit 2019-07-10 07:24:56 -07:00
daan
46a9e51f74 enable non eager-commit flag 2019-07-10 07:17:21 -07:00