pub struct KernelLauncher { /* private fields */ }
Expand description
Kernel launcher for executing kernels with optimal parameters
Implementations§
Source§impl KernelLauncher
impl KernelLauncher
Sourcepub fn new(factory: KernelFactory) -> Self
pub fn new(factory: KernelFactory) -> Self
Create a new kernel launcher
Sourcepub fn allocate_fft_memory(
&mut self,
inputsize: usize,
) -> FFTResult<(usize, usize)>
pub fn allocate_fft_memory( &mut self, inputsize: usize, ) -> FFTResult<(usize, usize)>
Allocate memory for FFT operation
Sourcepub fn allocate_sparse_fft_memory(
&mut self,
input_size: usize,
sparsity: usize,
) -> FFTResult<(usize, usize, usize)>
pub fn allocate_sparse_fft_memory( &mut self, input_size: usize, sparsity: usize, ) -> FFTResult<(usize, usize, usize)>
Allocate memory for sparse FFT operation
Sourcepub fn launch_fft_kernel(
&mut self,
input_size: usize,
input_address: usize,
output_address: usize,
) -> FFTResult<KernelStats>
pub fn launch_fft_kernel( &mut self, input_size: usize, input_address: usize, output_address: usize, ) -> FFTResult<KernelStats>
Launch FFT kernel
Sourcepub fn launch_sparse_fft_kernel(
&mut self,
input_size: usize,
sparsity: usize,
input_address: usize,
output_values_address: usize,
output_indices_address: usize,
algorithm: SparseFFTAlgorithm,
window_function: WindowFunction,
) -> FFTResult<KernelStats>
pub fn launch_sparse_fft_kernel( &mut self, input_size: usize, sparsity: usize, input_address: usize, output_values_address: usize, output_indices_address: usize, algorithm: SparseFFTAlgorithm, window_function: WindowFunction, ) -> FFTResult<KernelStats>
Launch sparse FFT kernel
Sourcepub fn get_total_memory_allocated(&self) -> usize
pub fn get_total_memory_allocated(&self) -> usize
Get total memory allocated
Sourcepub fn free_all_memory(&mut self)
pub fn free_all_memory(&mut self)
Free all allocated memory
Auto Trait Implementations§
impl Freeze for KernelLauncher
impl !RefUnwindSafe for KernelLauncher
impl !Send for KernelLauncher
impl !Sync for KernelLauncher
impl Unpin for KernelLauncher
impl !UnwindSafe for KernelLauncher
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
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more