@@ -337,6 +337,9 @@ pub const mi_option_eager_commit: mi_option_t = 3;
337
337
/// Option (experimental) specifying eagerly commit large (256MiB) memory regions (enabled by default, except on Windows).
338
338
pub const mi_option_eager_region_commit: mi_option_t = 4 ;
339
339
340
+ /// Experimental
341
+ pub const mi_option_reset_decommits: mi_option_t = 5 ;
342
+
340
343
/// Option (experimental) to use large OS pages (2MiB in size) if possible.
341
344
///
342
345
/// Use large OS pages (2MiB) when available; for some workloads this can
@@ -347,7 +350,7 @@ pub const mi_option_eager_region_commit: mi_option_t = 4;
347
350
/// use with care on systems that can have fragmented memory (for that
348
351
/// reason, we generally recommend to use mi_option_reserve_huge_os_pages
349
352
/// instead whenever possible).
350
- pub const mi_option_large_os_pages: mi_option_t = 5 ;
353
+ pub const mi_option_large_os_pages: mi_option_t = 6 ;
351
354
352
355
/// Option (experimental) specifying number of huge OS pages (1GiB in size) to reserve at the start of the program.
353
356
///
@@ -360,10 +363,10 @@ pub const mi_option_large_os_pages: mi_option_t = 5;
360
363
/// mi_option_eager_commit_delay=N (N is 1 by default) to delay the initial N segments (of 4MiB) of
361
364
/// a thread to not allocate in the huge OS pages; this prevents threads that are short lived and
362
365
/// allocate just a little to take up space in the huge OS page area (which cannot be reset).
363
- pub const mi_option_reserve_huge_os_pages: mi_option_t = 6 ;
366
+ pub const mi_option_reserve_huge_os_pages: mi_option_t = 7 ;
364
367
365
368
/// Option (experimental) specifying number of segments per thread to keep cached.
366
- pub const mi_option_segment_cache: mi_option_t = 7 ;
369
+ pub const mi_option_segment_cache: mi_option_t = 8 ;
367
370
368
371
/// Option (experimental) to reset page memory after mi_option_reset_delay milliseconds when it becomes free.
369
372
///
@@ -375,13 +378,19 @@ pub const mi_option_segment_cache: mi_option_t = 7;
375
378
/// off completely.
376
379
///
377
380
/// Default: 1 (true)
378
- pub const mi_option_page_reset: mi_option_t = 8 ;
381
+ pub const mi_option_page_reset: mi_option_t = 9 ;
382
+
383
+ /// Experimental
384
+ pub const mi_option_abandoned_page_reset: mi_option_t = 10 ;
385
+
386
+ /// Experimental
387
+ pub const mi_option_segment_reset: mi_option_t = 11 ;
379
388
380
389
/// Experimental
381
- pub const mi_option_segment_reset : mi_option_t = 9 ;
390
+ pub const mi_option_eager_commit_delay : mi_option_t = 12 ;
382
391
383
392
/// Option (experimental) specifying delay in milli-seconds before resetting a page (100ms by default).
384
- pub const mi_option_reset_delay: mi_option_t = 10 ;
393
+ pub const mi_option_reset_delay: mi_option_t = 13 ;
385
394
386
395
/// Option (experimental) to pretend there are at most N NUMA nodes.
387
396
///
@@ -390,16 +399,13 @@ pub const mi_option_reset_delay: mi_option_t = 10;
390
399
/// actual NUMA nodes is fine and will only cause threads to potentially allocate more
391
400
/// memory across actual NUMA nodes (but this can happen in any case as NUMA local
392
401
/// allocation is always a best effort but not guaranteed).
393
- pub const mi_option_use_numa_nodes: mi_option_t = 11 ;
402
+ pub const mi_option_use_numa_nodes: mi_option_t = 14 ;
394
403
395
- /// Experimental
396
- pub const mi_option_reset_decommits : mi_option_t = 12 ;
404
+ /// Option (experimental) specifying OS tag to assign to mimalloc'd memory.
405
+ pub const mi_option_os_tag : mi_option_t = 15 ;
397
406
398
407
/// Experimental
399
- pub const mi_option_eager_commit_delay: mi_option_t = 13 ;
400
-
401
- /// Option (experimental) specifying OS tag to assign to mimalloc'd memory.
402
- pub const mi_option_os_tag: mi_option_t = 14 ;
408
+ pub const mi_option_max_errors: mi_option_t = 16 ;
403
409
404
410
extern "C" {
405
411
// Note: mi_option_{enable,disable} aren't exposed because they're redundant
0 commit comments