power

package
v0.1.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package power tracks the NVIDIA per-GPU power usage.

Index

Constants

View Source
const (
	StateNamePowerUsage = "power_usage"

	StateKeyPowerUsageData           = "data"
	StateKeyPowerUsageEncoding       = "encoding"
	StateValuePowerUsageEncodingJSON = "json"
)
View Source
const Name = "accelerator-nvidia-power"

Variables

This section is empty.

Functions

func New

Types

type Config

type Config struct {
	Query query_config.Config `json:"query"`
}

func ParseConfig

func ParseConfig(b any, db *sql.DB) (*Config, error)

func (Config) Validate

func (cfg Config) Validate() error

type Output

type Output struct {
	UsagesSMI  []nvidia_query.ParsedSMIPowerReading `json:"usages_smi"`
	UsagesNVML []nvidia_query_nvml.Power            `json:"usages_nvml"`
}

func ParseOutputJSON

func ParseOutputJSON(data []byte) (*Output, error)

func ParseStatePowerUsage

func ParseStatePowerUsage(m map[string]string) (*Output, error)

func ParseStatesToOutput

func ParseStatesToOutput(states ...components.State) (*Output, error)

func ToOutput

func ToOutput(i *nvidia_query.Output) *Output

ToOutput converts nvidia_query.Output to Output. It returns an empty non-nil object, if the input or the required field is nil (e.g., i.SMI).

func (*Output) Evaluate

func (o *Output) Evaluate() (string, bool, error)

Returns the output evaluation reason and its healthy-ness.

func (*Output) JSON

func (o *Output) JSON() ([]byte, error)

func (*Output) States

func (o *Output) States() ([]components.State, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL