pub struct FPGAInfo {Show 16 fields
pub vendor: FPGAVendor,
pub family: FPGAFamily,
pub model: String,
pub device_id: Option<String>,
pub vendor_id: Option<String>,
pub interface: FPGAInterface,
pub logic_elements: Option<u64>,
pub block_ram_bits: Option<u64>,
pub dsp_blocks: Option<u32>,
pub max_frequency_mhz: Option<u32>,
pub power_consumption: Option<f32>,
pub ml_capabilities: HashMap<String, String>,
pub development_tools: Vec<String>,
pub current_config: Option<String>,
pub driver_version: Option<String>,
pub temperature: Option<f32>,
}
Expand description
FPGA accelerator information
Fields§
§vendor: FPGAVendor
FPGA vendor
family: FPGAFamily
FPGA family/series
model: String
Device model/part number
device_id: Option<String>
Device ID (PCI, USB, etc.)
vendor_id: Option<String>
Vendor ID
interface: FPGAInterface
Interface type
logic_elements: Option<u64>
Logic elements/cells count
block_ram_bits: Option<u64>
Block RAM (BRAM) size in bits
dsp_blocks: Option<u32>
DSP slices/blocks count
max_frequency_mhz: Option<u32>
Maximum operating frequency (MHz)
power_consumption: Option<f32>
Power consumption (watts)
ml_capabilities: HashMap<String, String>
AI/ML acceleration capabilities
development_tools: Vec<String>
Supported development tools
current_config: Option<String>
Current configuration/bitstream
driver_version: Option<String>
Driver version
temperature: Option<f32>
Temperature sensors (if available)
Implementations§
Source§impl FPGAInfo
impl FPGAInfo
Sourcepub fn detect_fpgas() -> Result<Vec<FPGAInfo>>
pub fn detect_fpgas() -> Result<Vec<FPGAInfo>>
Detect FPGA accelerators in the system
Sourcepub fn calculate_ai_performance(&self) -> HashMap<String, f64>
pub fn calculate_ai_performance(&self) -> HashMap<String, f64>
Calculate theoretical AI performance metrics for the FPGA
Sourcepub fn get_ai_framework_support(&self) -> Vec<String>
pub fn get_ai_framework_support(&self) -> Vec<String>
Get AI framework compatibility
Trait Implementations§
Source§impl<'de> Deserialize<'de> for FPGAInfo
impl<'de> Deserialize<'de> for FPGAInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for FPGAInfo
impl RefUnwindSafe for FPGAInfo
impl Send for FPGAInfo
impl Sync for FPGAInfo
impl Unpin for FPGAInfo
impl UnwindSafe for FPGAInfo
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more