PhysicalGpu

Struct PhysicalGpu 

Source
pub struct PhysicalGpu(/* private fields */);

Implementations§

Source§

impl PhysicalGpu

Source

pub fn handle(&self) -> &NvPhysicalGpuHandle

Source

pub fn enumerate() -> Result<Vec<Self>>

Source

pub fn tachometer(&self) -> Result<u32>

Source

pub fn short_name(&self) -> Result<String>

Source

pub fn full_name(&self) -> Result<String>

Source

pub fn vbios_version_string(&self) -> Result<String>

Source

pub fn driver_model(&self) -> Result<DriverModel>

Source

pub fn gpu_id(&self) -> Result<u32>

Source

pub fn pci_identifiers(&self) -> Result<PciIdentifiers>

Source

pub fn board_number(&self) -> Result<[u8; 16]>

Source

pub fn system_type(&self) -> Result<SystemType>

Source

pub fn core_count(&self) -> Result<u32>

Source

pub fn shader_pipe_count(&self) -> Result<u32>

Source

pub fn shader_sub_pipe_count(&self) -> Result<u32>

Source

pub fn ram_type(&self) -> Result<RamType>

Source

pub fn ram_maker(&self) -> Result<RamMaker>

Source

pub fn ram_bus_width(&self) -> Result<u32>

Source

pub fn ram_bank_count(&self) -> Result<u32>

Source

pub fn ram_partition_count(&self) -> Result<u32>

Source

pub fn foundry(&self) -> Result<Foundry>

Source

pub fn memory_info(&self) -> Result<MemoryInfo>

Source

pub fn clock_frequencies( &self, clock_type: ClockFrequencyType, ) -> Result<ClockFrequencies>

Source

pub fn current_pstate(&self) -> Result<PState>

Source

pub fn pstates( &self, ) -> Result<<NV_GPU_PERF_PSTATES20_INFO as RawConversion>::Target>

Source

pub fn set_pstates<I: Iterator<Item = (PState, ClockDomain, KilohertzDelta)>>( &self, deltas: I, ) -> Result<()>

Source

pub fn dynamic_pstates_info(&self) -> Result<Utilizations>

Source

pub fn usages(&self) -> Result<<NV_USAGES_INFO as RawConversion>::Target>

Private and deprecated, use dynamic_pstates_info() instead.

Source

pub fn vfp_mask(&self) -> Result<<NV_CLOCK_MASKS as RawConversion>::Target>

Source

pub fn vfp_table( &self, mask: [u32; 4], ) -> Result<<NV_CLOCK_TABLE as RawConversion>::Target>

Source

pub fn set_vfp_table<I: Iterator<Item = (usize, Kilohertz2Delta)>, M: Iterator<Item = (usize, Kilohertz2Delta)>>( &self, mask: [u32; 4], clocks: I, memory: M, ) -> Result<()>

Source

pub fn vfp_ranges(&self) -> Result<<NV_CLOCK_RANGES as RawConversion>::Target>

Source

pub fn vfp_locks(&self) -> Result<<NV_CLOCK_LOCK as RawConversion>::Target>

Source

pub fn set_vfp_locks<I: Iterator<Item = (usize, Option<Microvolts>)>>( &self, values: I, ) -> Result<()>

Source

pub fn vfp_curve( &self, mask: [u32; 4], ) -> Result<<NV_VFP_CURVE as RawConversion>::Target>

Source

pub fn core_voltage( &self, ) -> Result<<NV_VOLTAGE_STATUS as RawConversion>::Target>

Source

pub fn core_voltage_boost( &self, ) -> Result<<NV_VOLTAGE_BOOST_PERCENT as RawConversion>::Target>

Source

pub fn set_core_voltage_boost(&self, value: Percentage) -> Result<()>

Source

pub fn power_usage( &self, ) -> Result<<NV_GPU_POWER_TOPO as RawConversion>::Target>

Source

pub fn power_limit_info( &self, ) -> Result<<NV_GPU_POWER_INFO as RawConversion>::Target>

Source

pub fn power_limit( &self, ) -> Result<<NV_GPU_POWER_STATUS as RawConversion>::Target>

Source

pub fn set_power_limit<I: Iterator<Item = Percentage1000>>( &self, values: I, ) -> Result<()>

Source

pub fn thermal_settings( &self, index: Option<u32>, ) -> Result<<NV_GPU_THERMAL_SETTINGS as RawConversion>::Target>

Source

pub fn thermal_limit_info( &self, ) -> Result<<NV_GPU_THERMAL_INFO as RawConversion>::Target>

Source

pub fn thermal_limit( &self, ) -> Result<<NV_GPU_THERMAL_LIMIT as RawConversion>::Target>

Source

pub fn set_thermal_limit<I: Iterator<Item = ThermalLimit>>( &self, value: I, ) -> Result<()>

Source

pub fn cooler_settings( &self, index: Option<u32>, ) -> Result<<NV_GPU_COOLER_SETTINGS as RawConversion>::Target>

Source

pub fn set_cooler_levels<I: Iterator<Item = CoolerLevel>>( &self, index: Option<u32>, values: I, ) -> Result<()>

Source

pub fn restore_cooler_settings(&self, index: &[u32]) -> Result<()>

Source

pub fn cooler_policy_table( &self, index: u32, policy: CoolerPolicy, ) -> Result<<NV_GPU_COOLER_POLICY_TABLE as RawConversion>::Target>

Source

pub fn set_cooler_policy_table( &self, index: u32, value: &<NV_GPU_COOLER_POLICY_TABLE as RawConversion>::Target, ) -> Result<()>

Source

pub fn restore_cooler_policy_table( &self, index: &[u32], policy: CoolerPolicy, ) -> Result<()>

Source

pub fn perf_info(&self) -> Result<<NV_GPU_PERF_INFO as RawConversion>::Target>

Source

pub fn perf_status( &self, ) -> Result<<NV_GPU_PERF_STATUS as RawConversion>::Target>

Source

pub fn voltage_domains_status( &self, ) -> Result<<NV_VOLT_STATUS as RawConversion>::Target>

Source

pub fn voltage_step(&self) -> Result<<NV_VOLT_STATUS as RawConversion>::Target>

Source

pub fn voltage_table(&self) -> Result<<NV_VOLT_TABLE as RawConversion>::Target>

Source

pub fn performance_decrease(&self) -> Result<PerformanceDecreaseReason>

Source

pub fn display_ids_all( &self, ) -> Result<Vec<<NV_GPU_DISPLAYIDS as RawConversion>::Target>>

Source

pub fn display_ids_connected( &self, flags: ConnectedIdsFlags, ) -> Result<Vec<<NV_GPU_DISPLAYIDS as RawConversion>::Target>>

Source

pub fn i2c_read( &self, display_mask: u32, port: Option<u8>, port_is_ddc: bool, address: u8, register: &[u8], bytes: &mut [u8], speed: I2cSpeed, ) -> Result<usize>

Source

pub fn i2c_write( &self, display_mask: u32, port: Option<u8>, port_is_ddc: bool, address: u8, register: &[u8], bytes: &[u8], speed: I2cSpeed, ) -> Result<()>

Trait Implementations§

Source§

impl Debug for PhysicalGpu

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Send for PhysicalGpu

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.