@@ -512,11 +512,18 @@ pub const mi_option_large_os_pages: mi_option_t = 6;
512512/// allocate just a little to take up space in the huge OS page area (which cannot be reset).
513513pub const mi_option_reserve_huge_os_pages: mi_option_t = 7 ;
514514
515- /// TODO: update later
516- pub const mi_option_reserve_os_memory: mi_option_t = 8 ;
515+ /// Option (experimental) reserve huge OS pages at a specific NUMA node
516+ ///
517+ /// The huge pages are usually allocated evenly among NUMA nodes.
518+ /// You can use mi_option_reserve_huge_os_pages_at=N where `N` is the numa node (starting at 0) to allocate all
519+ /// the huge pages at a specific numa node instead.
520+ pub const mi_option_reserve_huge_os_pages_at: mi_option_t = 8 ;
521+
522+ /// Option (experimental) reserve specified amount of OS memory at startup
523+ pub const mi_option_reserve_os_memory: mi_option_t = 9 ;
517524
518525/// Option (experimental) specifying number of segments per thread to keep cached.
519- pub const mi_option_segment_cache: mi_option_t = 9 ;
526+ pub const mi_option_segment_cache: mi_option_t = 10 ;
520527
521528/// Option (experimental) to reset page memory after mi_option_reset_delay milliseconds when it becomes free.
522529///
@@ -528,19 +535,19 @@ pub const mi_option_segment_cache: mi_option_t = 9;
528535/// off completely.
529536///
530537/// Default: 1 (true)
531- pub const mi_option_page_reset: mi_option_t = 10 ;
538+ pub const mi_option_page_reset: mi_option_t = 11 ;
532539
533540/// Experimental
534- pub const mi_option_abandoned_page_reset: mi_option_t = 11 ;
541+ pub const mi_option_abandoned_page_reset: mi_option_t = 12 ;
535542
536543/// Experimental
537- pub const mi_option_segment_reset: mi_option_t = 12 ;
544+ pub const mi_option_segment_reset: mi_option_t = 13 ;
538545
539546/// Experimental
540- pub const mi_option_eager_commit_delay: mi_option_t = 13 ;
547+ pub const mi_option_eager_commit_delay: mi_option_t = 14 ;
541548
542549/// Option (experimental) specifying delay in milli-seconds before resetting a page (100ms by default).
543- pub const mi_option_reset_delay: mi_option_t = 14 ;
550+ pub const mi_option_reset_delay: mi_option_t = 15 ;
544551
545552/// Option (experimental) to pretend there are at most N NUMA nodes.
546553///
@@ -549,19 +556,19 @@ pub const mi_option_reset_delay: mi_option_t = 14;
549556/// actual NUMA nodes is fine and will only cause threads to potentially allocate more
550557/// memory across actual NUMA nodes (but this can happen in any case as NUMA local
551558/// allocation is always a best effort but not guaranteed).
552- pub const mi_option_use_numa_nodes: mi_option_t = 15 ;
559+ pub const mi_option_use_numa_nodes: mi_option_t = 16 ;
553560
554561/// TODO: update later
555- pub const mi_option_limit_os_alloc: mi_option_t = 16 ;
562+ pub const mi_option_limit_os_alloc: mi_option_t = 17 ;
556563
557564/// Option (experimental) specifying OS tag to assign to mimalloc'd memory.
558- pub const mi_option_os_tag: mi_option_t = 17 ;
565+ pub const mi_option_os_tag: mi_option_t = 18 ;
559566
560567/// Experimental
561- pub const mi_option_max_errors: mi_option_t = 18 ;
568+ pub const mi_option_max_errors: mi_option_t = 19 ;
562569
563570/// Experimental
564- pub const mi_option_max_warnings: mi_option_t = 19 ;
571+ pub const mi_option_max_warnings: mi_option_t = 20 ;
565572
566573extern "C" {
567574 // Note: mi_option_{enable,disable} aren't exposed because they're redundant
0 commit comments