-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Labels
enhancementNew feature or requestNew feature or request
Description
CTL - setting global namespace
Rationale
Intention of this issue is to discuss and summarize the implementation for default part of the CTL.
This issue is a part of: #1036
Description
The CTL for global namespace is the way to set default values for pool, providers etc.
API Changes
API to be added:
umf_result_t umfCtlSet(const char *name, ...);
umf_result_t umfCtlGet(const char *name, ...);
umf_result_t umfCtlExec(const char *name, ...);
Examples of use
umfCtlSet("umf.pool.default.disjoint.SlabMinSize", &value);
Implementation details
The implementation should be split into 2 parts, first is the main CTL tree:
umf
├── pool
| └── default
| └── SUB_TREE (aka NAME)
└── provider
└── default
└── SUB_TREE (aka NAME)
After encountering SUB_TREE there should be located a proper CTL tree, appropriate for the mentioned type:
disjoint sub-tree
├── SlabMinSize (size_t)
├── MaxPoolableSize (size_t)
├── Capacity (size_t)
├── MinBucketSize (size_t)
├── CurPoolSize (size_t)
├── PoolTrace (int)
└── Name (char *)
Meta
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request