Template Struct Local_Sampler

Struct Documentation

template<class PrecisionT, template<class ExecutionSpace> class GeneratorPool, class ExecutionSpace = Kokkos::DefaultExecutionSpace>
struct Local_Sampler

Sampling local wires with global index padding for distributed LK with MPI.

Param samples_

Kokkos::View of the generated samples.

Param cdf_

Kokkos::View of cumulative probability distribution.

Param rand_pool_

The generatorPool.

Param local_num_qubits_

Number of qubits.

Param global_num_qubits_

Number of qubits.

Param global_index_

Param length_

Length of cumulative probability distribution.

Public Functions

inline Local_Sampler(Kokkos::View<std::size_t*> samples_, Kokkos::View<PrecisionT*> cdf_, GeneratorPool<ExecutionSpace> rand_pool_, const std::size_t local_num_qubits_, const std::size_t global_num_qubits_, const std::size_t global_index_, const std::size_t length_)
inline KOKKOS_INLINE_FUNCTION void operator() (const std::size_t k) const

Public Members

Kokkos::View<std::size_t*> samples
Kokkos::View<PrecisionT*> cdf
GeneratorPool<ExecutionSpace> rand_pool
const std::size_t local_num_qubits
const std::size_t global_num_qubits
const std::size_t total_num_qubits
const std::size_t global_index
const std::size_t length