pub trait GpuContext {
// Required methods
fn create_storage(
&self,
dimension: usize,
metric: GpuDistanceMetric,
) -> Result<Box<dyn GpuVectorStorage>>;
fn create_storage_with_config(
&self,
dimension: usize,
metric: GpuDistanceMetric,
config: HnswConfig,
) -> Result<Box<dyn GpuVectorStorage>>;
fn memory_stats(&self) -> GpuMemoryStats;
fn device_info(&self) -> GpuDeviceInfo;
}
Expand description
GPU context trait for creating storage
Required Methods§
Sourcefn create_storage(
&self,
dimension: usize,
metric: GpuDistanceMetric,
) -> Result<Box<dyn GpuVectorStorage>>
fn create_storage( &self, dimension: usize, metric: GpuDistanceMetric, ) -> Result<Box<dyn GpuVectorStorage>>
Create vector storage with default configuration
Sourcefn create_storage_with_config(
&self,
dimension: usize,
metric: GpuDistanceMetric,
config: HnswConfig,
) -> Result<Box<dyn GpuVectorStorage>>
fn create_storage_with_config( &self, dimension: usize, metric: GpuDistanceMetric, config: HnswConfig, ) -> Result<Box<dyn GpuVectorStorage>>
Create vector storage with HNSW configuration
Sourcefn memory_stats(&self) -> GpuMemoryStats
fn memory_stats(&self) -> GpuMemoryStats
Get memory statistics
Sourcefn device_info(&self) -> GpuDeviceInfo
fn device_info(&self) -> GpuDeviceInfo
Get device information