DeviceDataTransporter

Trait DeviceDataTransporter 

Source
pub trait DeviceDataTransporter<SC, PB>
where SC: StarkGenericConfig, PB: ProverBackend<Val = Val<SC>, Challenge = SC::Challenge, Commitment = Com<SC>>,
{ // Required methods fn transport_pk_to_device( &self, mpk: &MultiStarkProvingKey<SC>, ) -> DeviceMultiStarkProvingKey<PB>; fn transport_matrix_to_device( &self, matrix: &Arc<RowMajorMatrix<Val<SC>>>, ) -> PB::Matrix; fn transport_committed_trace_to_device( &self, commitment: Com<SC>, trace: &Arc<RowMajorMatrix<Val<SC>>>, prover_data: &Arc<PcsProverData<SC>>, ) -> CommittedTraceData<PB>; fn transport_matrix_from_device_to_host( &self, matrix: &PB::Matrix, ) -> Arc<RowMajorMatrix<Val<SC>>> ; }
Expand description

Trait to manage data transport of prover types from host to device.

Required Methods§

Source

fn transport_pk_to_device( &self, mpk: &MultiStarkProvingKey<SC>, ) -> DeviceMultiStarkProvingKey<PB>

Transport the proving key to the device, filtering for only the provided air_ids.

Source

fn transport_matrix_to_device( &self, matrix: &Arc<RowMajorMatrix<Val<SC>>>, ) -> PB::Matrix

Source

fn transport_committed_trace_to_device( &self, commitment: Com<SC>, trace: &Arc<RowMajorMatrix<Val<SC>>>, prover_data: &Arc<PcsProverData<SC>>, ) -> CommittedTraceData<PB>

The commitment and prover_data are assumed to have been previously computed from the trace.

Source

fn transport_matrix_from_device_to_host( &self, matrix: &PB::Matrix, ) -> Arc<RowMajorMatrix<Val<SC>>>

Transport a device matrix to host. This should only be used for testing / debugging purposes.

Implementors§