pub struct IfdsCsrLayout {Show 19 fields
pub empty: bool,
pub num_procs: u32,
pub blocks_per_proc: u32,
pub facts_per_proc: u32,
pub intra_count: u32,
pub inter_count: u32,
pub gen_count: u32,
pub kill_count: u32,
pub intra_storage_words: usize,
pub inter_storage_words: usize,
pub gen_storage_words: usize,
pub kill_storage_words: usize,
pub slots_per_proc: u32,
pub total_nodes: u32,
pub row_words: usize,
pub row_cursor_words: usize,
pub killed_words: usize,
pub max_col_count: u32,
pub col_buffer_words: usize,
}Expand description
Checked dispatch layout for an exploded IFDS CSR build.
Fields§
§empty: boolWhether the declared IFDS domain is empty and should not dispatch.
num_procs: u32Number of procedures in the exploded domain.
blocks_per_proc: u32Number of blocks per procedure.
facts_per_proc: u32Number of facts per procedure.
intra_count: u32Number of intra-procedural control-flow edges.
inter_count: u32Number of inter-procedural call/return edges.
gen_count: u32Number of GEN rules.
kill_count: u32Number of KILL rules.
intra_storage_words: usizeNumber of u32 words required by each intra edge field buffer.
inter_storage_words: usizeNumber of u32 words required by each inter edge field buffer.
gen_storage_words: usizeNumber of u32 words required by each GEN rule field buffer.
kill_storage_words: usizeNumber of u32 words required by each KILL rule field buffer.
slots_per_proc: u32Dense nodes per procedure.
total_nodes: u32Total dense node count.
row_words: usizeNumber of u32 words in row_ptr.
row_cursor_words: usizeNumber of u32 words in the dispatch row cursor scratch buffer.
killed_words: usizeNumber of u32 words in the dense kill bitmap scratch buffer.
max_col_count: u32Maximum emitted column count for the declared edge/rule counts.
col_buffer_words: usizeNumber of u32 words allocated for col_idx.
Trait Implementations§
Source§impl Clone for IfdsCsrLayout
impl Clone for IfdsCsrLayout
Source§fn clone(&self) -> IfdsCsrLayout
fn clone(&self) -> IfdsCsrLayout
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for IfdsCsrLayout
Source§impl Debug for IfdsCsrLayout
impl Debug for IfdsCsrLayout
impl Eq for IfdsCsrLayout
Source§impl PartialEq for IfdsCsrLayout
impl PartialEq for IfdsCsrLayout
impl StructuralPartialEq for IfdsCsrLayout
Auto Trait Implementations§
impl Freeze for IfdsCsrLayout
impl RefUnwindSafe for IfdsCsrLayout
impl Send for IfdsCsrLayout
impl Sync for IfdsCsrLayout
impl Unpin for IfdsCsrLayout
impl UnsafeUnpin for IfdsCsrLayout
impl UnwindSafe for IfdsCsrLayout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.