pub struct MemoryBindingSupport(/* private fields */);
Expand description

Support for getting and setting thread/process NUMA node bindings

A flag may be set even if the feature isn’t supported in all cases (e.g. binding to random sets of non-contiguous objects).

Implementations§

source§

impl MemoryBindingSupport

source

pub fn set_current_process(&self) -> bool

Binding the whole current process is supported

source

pub fn get_current_process(&self) -> bool

Getting the binding of the whole current process is supported

source

pub fn set_process(&self) -> bool

Binding a whole given process is supported

source

pub fn get_process(&self) -> bool

Getting the binding of a whole given process is supported

source

pub fn set_current_thread(&self) -> bool

Binding the current thread only is supported

source

pub fn get_current_thread(&self) -> bool

Getting the binding of the current thread only is supported

source

pub fn set_area(&self) -> bool

Binding a given memory area is supported

source

pub fn get_area(&self) -> bool

Getting the binding of a given memory area is supported

source

pub fn get_area_memory_location(&self) -> bool

Getting the last NUMA nodes where a memory area was allocated is supported

source

pub fn allocate_bound(&self) -> bool

Allocating a bound memory area is supported

source

pub fn first_touch_policy(&self) -> bool

First-touch policy is supported

source

pub fn bind_policy(&self) -> bool

Bind policy is supported

source

pub fn interleave_policy(&self) -> bool

Interleave policy is supported

source

pub fn next_touch_policy(&self) -> bool

Next-touch migration policy is supported

source

pub fn migrate_flag(&self) -> bool

Migration flag is supported

Trait Implementations§

source§

impl Arbitrary for MemoryBindingSupport

Available on crate feature proptest only.
§

type Parameters = ()

The type of parameters that arbitrary_with accepts for configuration of the generated Strategy. Parameters must implement Default.
§

type Strategy = Map<[TupleUnion<((u32, Arc<Map<Any, fn(_: bool) -> u8>>), (u32, Arc<RangeInclusive<u8>>))>; 15], fn(_: [u8; 15]) -> MemoryBindingSupport>

The type of Strategy used to generate values of type Self.
source§

fn arbitrary_with(args: Self::Parameters) -> Self::Strategy

Generates a Strategy for producing arbitrary values of type the implementing type (Self). The strategy is passed the arguments given in args. Read more
source§

fn arbitrary() -> Self::Strategy

Generates a Strategy for producing arbitrary values of type the implementing type (Self). Read more
source§

impl Clone for MemoryBindingSupport

source§

fn clone(&self) -> MemoryBindingSupport

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for MemoryBindingSupport

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for MemoryBindingSupport

source§

fn default() -> MemoryBindingSupport

Returns the “default value” for a type. Read more
source§

impl Hash for MemoryBindingSupport

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for MemoryBindingSupport

source§

fn eq(&self, other: &MemoryBindingSupport) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for MemoryBindingSupport

source§

impl Eq for MemoryBindingSupport

source§

impl StructuralPartialEq for MemoryBindingSupport

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V