daan
f2f7c8d0e9
fix volatile declaration on function pointer
2019-09-07 09:18:29 -07:00
daan
47fc73d694
fix c++ compilation; make default output non-atomic
2019-09-06 11:51:22 -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
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