Struct amdgpu_sysfs::gpu_handle::overdrive::vega20::Table
source · pub struct Table {
pub current_sclk_range: Range,
pub current_mclk_range: Range,
pub vddc_curve: Vec<ClocksLevel>,
pub voltage_offset: Option<i32>,
pub od_range: OdRange,
}Expand description
Vega20 clocks table.
Fields§
§current_sclk_range: RangeThe current core clock range.
current_mclk_range: RangeThe current memory clock range.
vddc_curve: Vec<ClocksLevel>The current voltage curve. May be empty if the GPU does not support it.
voltage_offset: Option<i32>Voltage offset(in mV) applied on target voltage calculation. This is available for Sienna Cichlid, Navy Flounder and Dimgrey Cavefish.
od_range: OdRangeThe allowed ranges for clockspeeds and voltages.
Implementations§
source§impl Table
impl Table
sourcepub fn clear(&mut self)
pub fn clear(&mut self)
Clears the table of all “applicable” values.
This removes all values except the allowed range.
You can use it to avoid overwriting the table with already present values, as it can be problematic on some cards.
It is intended to be used before calling set_* functions and generating commands/writing the table.
Trait Implementations§
source§impl ClocksTable for Table
impl ClocksTable for Table
source§fn write_commands<W: Write>(&self, writer: &mut W) -> Result<(), Error>
fn write_commands<W: Write>(&self, writer: &mut W) -> Result<(), Error>
Writes commands needed to apply the state that is in the table struct on the GPU.
source§fn get_max_sclk_range(&self) -> Option<Range>
fn get_max_sclk_range(&self) -> Option<Range>
Gets the core clock range usable at the highest power level.
source§fn get_min_sclk_range(&self) -> Option<Range>
fn get_min_sclk_range(&self) -> Option<Range>
Gets the core clock range usable at the lowest power level.
source§fn get_max_mclk_range(&self) -> Option<Range>
fn get_max_mclk_range(&self) -> Option<Range>
Gets the memory clock range usable at the highest power level.
source§fn get_min_mclk_range(&self) -> Option<Range>
fn get_min_mclk_range(&self) -> Option<Range>
Gets the memory clock range usable at the lowest power level.
source§fn get_max_voltage_range(&self) -> Option<Range>
fn get_max_voltage_range(&self) -> Option<Range>
Gets the voltage range usable at the highest power level.
source§fn get_min_voltage_range(&self) -> Option<Range>
fn get_min_voltage_range(&self) -> Option<Range>
Gets the voltage range usable at the lowest power level.
source§fn get_current_voltage_range(&self) -> Option<Range>
fn get_current_voltage_range(&self) -> Option<Range>
Gets the current voltage range.
source§fn get_current_sclk_range(&self) -> Range
fn get_current_sclk_range(&self) -> Range
Gets the current range of values for core clocks.
source§fn get_current_mclk_range(&self) -> Range
fn get_current_mclk_range(&self) -> Range
Gets the current range of values for memory clocks.
source§fn set_max_sclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_max_sclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the maximum core clock (without checking if it’s in the allowed range).
source§fn set_min_sclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_min_sclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the minimum core clock (without checking if it’s in the allowed range).
source§fn set_max_mclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_max_mclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the maximum memory clock (without checking if it’s in the allowed range).
source§fn set_min_mclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_min_mclk_unchecked(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the minimum memory clock (without checking if it’s in the allowed range).
source§fn set_max_voltage_unchecked(&mut self, voltage: i32) -> Result<(), Error>
fn set_max_voltage_unchecked(&mut self, voltage: i32) -> Result<(), Error>
Sets the voltage to be used at the maximum clockspeed (without checking if it’s in the allowed range).
source§fn set_min_voltage_unchecked(&mut self, voltage: i32) -> Result<(), Error>
fn set_min_voltage_unchecked(&mut self, voltage: i32) -> Result<(), Error>
Sets the voltage to be used at the minimum clockspeed (without checking if it’s in the allowed range).
source§fn get_max_sclk_voltage(&self) -> Option<i32>
fn get_max_sclk_voltage(&self) -> Option<i32>
Gets the current maximum voltage (used on maximum clockspeed).
source§fn get_commands(&self) -> Result<Vec<String>, Error>
fn get_commands(&self) -> Result<Vec<String>, Error>
Gets the list of commands that will apply the current state of the clocks table.
write_commands should generally be preferred instead.source§fn get_max_sclk(&self) -> Option<i32>
fn get_max_sclk(&self) -> Option<i32>
Gets the current maximum core clock.
source§fn get_max_mclk(&self) -> Option<i32>
fn get_max_mclk(&self) -> Option<i32>
Gets the current maximum memory clock.
source§fn set_max_mclk(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_max_mclk(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the maximum memory clock.
source§fn set_min_mclk(&mut self, clockspeed: i32) -> Result<(), Error>
fn set_min_mclk(&mut self, clockspeed: i32) -> Result<(), Error>
Sets the minimum memory clock.
source§impl From<Table> for ClocksTableGen
impl From<Table> for ClocksTableGen
source§fn from(v: Table) -> ClocksTableGen
fn from(v: Table) -> ClocksTableGen
Converts to this type from the input type.
Auto Trait Implementations§
impl RefUnwindSafe for Table
impl Send for Table
impl Sync for Table
impl Unpin for Table
impl UnwindSafe for Table
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