[][src]Trait neptune::BatchHasher

pub trait BatchHasher<A> where
    A: Arity<Scalar>, 
{ fn hash(
        &mut self,
        preimages: &[GenericArray<Scalar, A>]
    ) -> Result<Vec<Scalar>, Error>; fn hash_into_slice(
        &mut self,
        target_slice: &mut [Scalar],
        preimages: &[GenericArray<Scalar, A>]
    ) -> Result<(), Error> { ... }
fn max_batch_size(&self) -> usize { ... } }

Required methods

fn hash(
    &mut self,
    preimages: &[GenericArray<Scalar, A>]
) -> Result<Vec<Scalar>, Error>

Loading content...

Provided methods

fn hash_into_slice(
    &mut self,
    target_slice: &mut [Scalar],
    preimages: &[GenericArray<Scalar, A>]
) -> Result<(), Error>

fn max_batch_size(&self) -> usize

max_batch_size is advisory. Implenters of BatchHasher should ensure that up to the returned max hashes can be safely performed on the target GPU (currently 2080Ti). The max returned should represent a safe batch size optimized for performance. BatchHasher users are responsible for not attempting to hash batches larger than the advised maximum.

Loading content...

Implementors

impl<'a, A> BatchHasher<A> for SimplePoseidonBatchHasher<'a, A> where
    A: 'a + Arity<Fr>, 
[src]

Loading content...