Struct nvapi::PhysicalGpu
source · [−]pub struct PhysicalGpu(_);
Implementations
sourceimpl PhysicalGpu
impl PhysicalGpu
pub fn handle(&self) -> &NvPhysicalGpuHandle
pub fn enumerate() -> Result<Vec<Self>>
pub fn tachometer(&self) -> Result<u32>
pub fn short_name(&self) -> Result<String>
pub fn full_name(&self) -> Result<String>
pub fn vbios_version_string(&self) -> Result<String>
pub fn driver_model(&self) -> Result<DriverModel>
pub fn gpu_id(&self) -> Result<u32>
pub fn pci_identifiers(&self) -> Result<PciIdentifiers>
pub fn board_number(&self) -> Result<[u8; 16]>
pub fn system_type(&self) -> Result<SystemType>
pub fn core_count(&self) -> Result<u32>
pub fn shader_pipe_count(&self) -> Result<u32>
pub fn shader_sub_pipe_count(&self) -> Result<u32>
pub fn ram_type(&self) -> Result<RamType>
pub fn ram_maker(&self) -> Result<RamMaker>
pub fn ram_bus_width(&self) -> Result<u32>
pub fn ram_bank_count(&self) -> Result<u32>
pub fn ram_partition_count(&self) -> Result<u32>
pub fn foundry(&self) -> Result<Foundry>
pub fn memory_info(&self) -> Result<MemoryInfo>
pub fn clock_frequencies(
&self,
clock_type: ClockFrequencyType
) -> Result<ClockFrequencies>
pub fn current_pstate(&self) -> Result<PState>
pub fn pstates(
&self
) -> Result<<NV_GPU_PERF_PSTATES20_INFO as RawConversion>::Target>
pub fn set_pstates<I: Iterator<Item = (PState, ClockDomain, KilohertzDelta)>>(
&self,
deltas: I
) -> Result<()>
pub fn dynamic_pstates_info(&self) -> Result<Utilizations>
sourcepub fn usages(&self) -> Result<<NV_USAGES_INFO as RawConversion>::Target>
pub fn usages(&self) -> Result<<NV_USAGES_INFO as RawConversion>::Target>
Private and deprecated, use dynamic_pstates_info()
instead.
pub fn vfp_mask(&self) -> Result<<NV_CLOCK_MASKS as RawConversion>::Target>
pub fn vfp_table(
&self,
mask: [u32; 4]
) -> Result<<NV_CLOCK_TABLE as RawConversion>::Target>
pub fn set_vfp_table<I: Iterator<Item = (usize, Kilohertz2Delta)>, M: Iterator<Item = (usize, Kilohertz2Delta)>>(
&self,
mask: [u32; 4],
clocks: I,
memory: M
) -> Result<()>
pub fn vfp_ranges(&self) -> Result<<NV_CLOCK_RANGES as RawConversion>::Target>
pub fn vfp_locks(&self) -> Result<<NV_CLOCK_LOCK as RawConversion>::Target>
pub fn set_vfp_locks<I: Iterator<Item = (usize, Option<Microvolts>)>>(
&self,
values: I
) -> Result<()>
pub fn vfp_curve(
&self,
mask: [u32; 4]
) -> Result<<NV_VFP_CURVE as RawConversion>::Target>
pub fn core_voltage(
&self
) -> Result<<NV_VOLTAGE_STATUS as RawConversion>::Target>
pub fn core_voltage_boost(
&self
) -> Result<<NV_VOLTAGE_BOOST_PERCENT as RawConversion>::Target>
pub fn set_core_voltage_boost(&self, value: Percentage) -> Result<()>
pub fn power_usage(
&self
) -> Result<<NV_GPU_POWER_TOPO as RawConversion>::Target>
pub fn power_limit_info(
&self
) -> Result<<NV_GPU_POWER_INFO as RawConversion>::Target>
pub fn power_limit(
&self
) -> Result<<NV_GPU_POWER_STATUS as RawConversion>::Target>
pub fn set_power_limit<I: Iterator<Item = Percentage1000>>(
&self,
values: I
) -> Result<()>
pub fn thermal_settings(
&self,
index: Option<u32>
) -> Result<<NV_GPU_THERMAL_SETTINGS as RawConversion>::Target>
pub fn thermal_limit_info(
&self
) -> Result<<NV_GPU_THERMAL_INFO as RawConversion>::Target>
pub fn thermal_limit(
&self
) -> Result<<NV_GPU_THERMAL_LIMIT as RawConversion>::Target>
pub fn set_thermal_limit<I: Iterator<Item = ThermalLimit>>(
&self,
value: I
) -> Result<()>
pub fn cooler_settings(
&self,
index: Option<u32>
) -> Result<<NV_GPU_COOLER_SETTINGS as RawConversion>::Target>
pub fn set_cooler_levels<I: Iterator<Item = CoolerLevel>>(
&self,
index: Option<u32>,
values: I
) -> Result<()>
pub fn restore_cooler_settings(&self, index: &[u32]) -> Result<()>
pub fn cooler_policy_table(
&self,
index: u32,
policy: CoolerPolicy
) -> Result<<NV_GPU_COOLER_POLICY_TABLE as RawConversion>::Target>
pub fn set_cooler_policy_table(
&self,
index: u32,
value: &<NV_GPU_COOLER_POLICY_TABLE as RawConversion>::Target
) -> Result<()>
pub fn restore_cooler_policy_table(
&self,
index: &[u32],
policy: CoolerPolicy
) -> Result<()>
pub fn perf_info(&self) -> Result<<NV_GPU_PERF_INFO as RawConversion>::Target>
pub fn perf_status(
&self
) -> Result<<NV_GPU_PERF_STATUS as RawConversion>::Target>
pub fn voltage_domains_status(
&self
) -> Result<<NV_VOLT_STATUS as RawConversion>::Target>
pub fn voltage_step(&self) -> Result<<NV_VOLT_STATUS as RawConversion>::Target>
pub fn voltage_table(&self) -> Result<<NV_VOLT_TABLE as RawConversion>::Target>
pub fn performance_decrease(&self) -> Result<PerformanceDecreaseReason>
pub fn display_ids_all(
&self
) -> Result<Vec<<NV_GPU_DISPLAYIDS as RawConversion>::Target>>
pub fn display_ids_connected(
&self,
flags: ConnectedIdsFlags
) -> Result<Vec<<NV_GPU_DISPLAYIDS as RawConversion>::Target>>
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>
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
sourceimpl Debug for PhysicalGpu
impl Debug for PhysicalGpu
impl Send for PhysicalGpu
Auto Trait Implementations
impl RefUnwindSafe for PhysicalGpu
impl !Sync for PhysicalGpu
impl Unpin for PhysicalGpu
impl UnwindSafe for PhysicalGpu
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more