pub trait SpecializedGpuKernel: Send + Sync {
// Required methods
fn apply_holonomic_gate(
&self,
state: &mut dyn GpuBuffer,
holonomy_matrix: &[Complex64],
target_qubits: &[QubitId],
) -> QuantRS2Result<()>;
fn apply_post_quantum_hash_gate(
&self,
state: &mut dyn GpuBuffer,
hash_circuit: &[Complex64],
compression_type: PostQuantumCompressionType,
) -> QuantRS2Result<()>;
fn apply_quantum_ml_attention(
&self,
state: &mut dyn GpuBuffer,
query_params: &[Complex64],
key_params: &[Complex64],
value_params: &[Complex64],
num_heads: usize,
) -> QuantRS2Result<()>;
fn apply_fused_gate_sequence(
&self,
state: &mut dyn GpuBuffer,
gates: &[Box<dyn GateOp>],
) -> QuantRS2Result<()>;
fn apply_tensor_contraction(
&self,
tensor_data: &mut dyn GpuBuffer,
contraction_indices: &[usize],
bond_dimension: usize,
) -> QuantRS2Result<()>;
}
Expand description
Enhanced GPU kernel for specialized quantum operations
Required Methods§
Sourcefn apply_holonomic_gate(
&self,
state: &mut dyn GpuBuffer,
holonomy_matrix: &[Complex64],
target_qubits: &[QubitId],
) -> QuantRS2Result<()>
fn apply_holonomic_gate( &self, state: &mut dyn GpuBuffer, holonomy_matrix: &[Complex64], target_qubits: &[QubitId], ) -> QuantRS2Result<()>
Apply a holonomic gate with optimized GPU execution
Sourcefn apply_post_quantum_hash_gate(
&self,
state: &mut dyn GpuBuffer,
hash_circuit: &[Complex64],
compression_type: PostQuantumCompressionType,
) -> QuantRS2Result<()>
fn apply_post_quantum_hash_gate( &self, state: &mut dyn GpuBuffer, hash_circuit: &[Complex64], compression_type: PostQuantumCompressionType, ) -> QuantRS2Result<()>
Apply post-quantum cryptographic hash gate
Sourcefn apply_quantum_ml_attention(
&self,
state: &mut dyn GpuBuffer,
query_params: &[Complex64],
key_params: &[Complex64],
value_params: &[Complex64],
num_heads: usize,
) -> QuantRS2Result<()>
fn apply_quantum_ml_attention( &self, state: &mut dyn GpuBuffer, query_params: &[Complex64], key_params: &[Complex64], value_params: &[Complex64], num_heads: usize, ) -> QuantRS2Result<()>
Apply quantum ML attention mechanism
Sourcefn apply_fused_gate_sequence(
&self,
state: &mut dyn GpuBuffer,
gates: &[Box<dyn GateOp>],
) -> QuantRS2Result<()>
fn apply_fused_gate_sequence( &self, state: &mut dyn GpuBuffer, gates: &[Box<dyn GateOp>], ) -> QuantRS2Result<()>
Apply fused gate sequences for optimal performance
Sourcefn apply_tensor_contraction(
&self,
tensor_data: &mut dyn GpuBuffer,
contraction_indices: &[usize],
bond_dimension: usize,
) -> QuantRS2Result<()>
fn apply_tensor_contraction( &self, tensor_data: &mut dyn GpuBuffer, contraction_indices: &[usize], bond_dimension: usize, ) -> QuantRS2Result<()>
Apply tensor network contraction