Method: ComputeUnit::AmdGpu#amdgpu_pm_info

Defined in:
lib/compute_unit/gpus/amd_gpu.rb

#amdgpu_pm_infoObject

:unit=>“MHz”, :sclk=>:unit=>“MHz”,

:vddgfx=>{:value=>"950", :unit=>"mV"},
:vddc=>{:value=>"61.49", :unit=>"W"},
:vddci=>{:value=>"1.0", :unit=>"W"},
:max_gpu=>{:value=>"81.243", :unit=>"W"},
:average_gpu=>{:value=>"82.117", :unit=>"W"},
:temperature=>{:value=>"41", :unit=>"C"},
:load=>{:value=>"100", :unit=>"%"}}


365
366
367
368
369
370
371
372
373
374
375
# File 'lib/compute_unit/gpus/amd_gpu.rb', line 365

def amdgpu_pm_info
  @amdgpu_pm_info ||= begin
    content = read_dri_debug_file('amdgpu_pm_info')
    data = content.scan(/(\d+\.?\d*)\s+(\w*)\s\(([\w\s]*)\)?/) + content.scan(/(\w*):\s(\d+)\s(.*)/).map(&:rotate)
    data_hash = {}
    data.each do |value, unit, name|
      data_hash[name.gsub(/\s/, '_').downcase.to_sym] = { value: value, unit: unit }
    end
    data_hash
  end
end