model

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Copyright (C) NHR@FAU, University Erlangen-Nuremberg. All rights reserved. Use of this source code is governed by a MIT-style license that can be found in the LICENSE file.

Index

Constants

This section is empty.

Variables

Functions

This section is empty.

Types

type Aggregate

type Aggregate string
const (
	AggregateUser    Aggregate = "USER"
	AggregateProject Aggregate = "PROJECT"
	AggregateCluster Aggregate = "CLUSTER"
)

func (Aggregate) IsValid

func (e Aggregate) IsValid() bool

func (Aggregate) MarshalGQL

func (e Aggregate) MarshalGQL(w io.Writer)

func (Aggregate) String

func (e Aggregate) String() string

func (*Aggregate) UnmarshalGQL

func (e *Aggregate) UnmarshalGQL(v interface{}) error

type Count

type Count struct {
	Name  string `json:"name"`
	Count int    `json:"count"`
}

type EnergyFootprintValue added in v1.4.0

type EnergyFootprintValue struct {
	Hardware string  `json:"hardware"`
	Metric   string  `json:"metric"`
	Value    float64 `json:"value"`
}

type FloatRange

type FloatRange struct {
	From float64 `json:"from"`
	To   float64 `json:"to"`
}

type FootprintValue added in v1.4.0

type FootprintValue struct {
	Name  string  `json:"name"`
	Stat  string  `json:"stat"`
	Value float64 `json:"value"`
}

type Footprints

type Footprints struct {
	TimeWeights *TimeWeights        `json:"timeWeights"`
	Metrics     []*MetricFootprints `json:"metrics"`
}

type HistoPoint

type HistoPoint struct {
	Count int `json:"count"`
	Value int `json:"value"`
}

type IntRangeOutput

type IntRangeOutput struct {
	From int `json:"from"`
	To   int `json:"to"`
}

type JobFilter

type JobFilter struct {
	Tags            []string          `json:"tags,omitempty"`
	JobID           *StringInput      `json:"jobId,omitempty"`
	ArrayJobID      *int              `json:"arrayJobId,omitempty"`
	User            *StringInput      `json:"user,omitempty"`
	Project         *StringInput      `json:"project,omitempty"`
	JobName         *StringInput      `json:"jobName,omitempty"`
	Cluster         *StringInput      `json:"cluster,omitempty"`
	Partition       *StringInput      `json:"partition,omitempty"`
	Duration        *schema.IntRange  `json:"duration,omitempty"`
	Energy          *FloatRange       `json:"energy,omitempty"`
	MinRunningFor   *int              `json:"minRunningFor,omitempty"`
	NumNodes        *schema.IntRange  `json:"numNodes,omitempty"`
	NumAccelerators *schema.IntRange  `json:"numAccelerators,omitempty"`
	NumHWThreads    *schema.IntRange  `json:"numHWThreads,omitempty"`
	StartTime       *schema.TimeRange `json:"startTime,omitempty"`
	State           []schema.JobState `json:"state,omitempty"`
	MetricStats     []*MetricStatItem `json:"metricStats,omitempty"`
	Exclusive       *int              `json:"exclusive,omitempty"`
	Node            *StringInput      `json:"node,omitempty"`
}
type JobLink struct {
	ID    string `json:"id"`
	JobID int    `json:"jobId"`
}

type JobLinkResultList

type JobLinkResultList struct {
	ListQuery *string    `json:"listQuery,omitempty"`
	Items     []*JobLink `json:"items"`
	Count     *int       `json:"count,omitempty"`
}

type JobMetricWithName

type JobMetricWithName struct {
	Name   string             `json:"name"`
	Scope  schema.MetricScope `json:"scope"`
	Metric *schema.JobMetric  `json:"metric"`
}

type JobResultList

type JobResultList struct {
	Items       []*schema.Job `json:"items"`
	Offset      *int          `json:"offset,omitempty"`
	Limit       *int          `json:"limit,omitempty"`
	Count       *int          `json:"count,omitempty"`
	HasNextPage *bool         `json:"hasNextPage,omitempty"`
}

type JobsStatistics

type JobsStatistics struct {
	ID             string               `json:"id"`
	Name           string               `json:"name"`
	TotalJobs      int                  `json:"totalJobs"`
	RunningJobs    int                  `json:"runningJobs"`
	ShortJobs      int                  `json:"shortJobs"`
	TotalWalltime  int                  `json:"totalWalltime"`
	TotalNodes     int                  `json:"totalNodes"`
	TotalNodeHours int                  `json:"totalNodeHours"`
	TotalCores     int                  `json:"totalCores"`
	TotalCoreHours int                  `json:"totalCoreHours"`
	TotalAccs      int                  `json:"totalAccs"`
	TotalAccHours  int                  `json:"totalAccHours"`
	HistDuration   []*HistoPoint        `json:"histDuration"`
	HistNumNodes   []*HistoPoint        `json:"histNumNodes"`
	HistNumCores   []*HistoPoint        `json:"histNumCores"`
	HistNumAccs    []*HistoPoint        `json:"histNumAccs"`
	HistMetrics    []*MetricHistoPoints `json:"histMetrics"`
}

type MetricFootprints

type MetricFootprints struct {
	Metric string         `json:"metric"`
	Data   []schema.Float `json:"data"`
}

type MetricHistoPoint added in v1.3.0

type MetricHistoPoint struct {
	Bin   *int `json:"bin,omitempty"`
	Count int  `json:"count"`
	Min   *int `json:"min,omitempty"`
	Max   *int `json:"max,omitempty"`
}

type MetricHistoPoints added in v1.3.0

type MetricHistoPoints struct {
	Metric string              `json:"metric"`
	Unit   string              `json:"unit"`
	Stat   *string             `json:"stat,omitempty"`
	Data   []*MetricHistoPoint `json:"data,omitempty"`
}

type MetricStatItem added in v1.4.0

type MetricStatItem struct {
	MetricName string      `json:"metricName"`
	Range      *FloatRange `json:"range"`
}

type Mutation added in v1.3.0

type Mutation struct {
}

type NodeMetrics

type NodeMetrics struct {
	Host       string               `json:"host"`
	SubCluster string               `json:"subCluster"`
	Metrics    []*JobMetricWithName `json:"metrics"`
}

type OrderByInput

type OrderByInput struct {
	Field string            `json:"field"`
	Type  string            `json:"type"`
	Order SortDirectionEnum `json:"order"`
}

type PageRequest

type PageRequest struct {
	ItemsPerPage int `json:"itemsPerPage"`
	Page         int `json:"page"`
}

type Query added in v1.3.0

type Query struct {
}

type SortByAggregate added in v1.2.0

type SortByAggregate string
const (
	SortByAggregateTotalwalltime  SortByAggregate = "TOTALWALLTIME"
	SortByAggregateTotaljobs      SortByAggregate = "TOTALJOBS"
	SortByAggregateTotalnodes     SortByAggregate = "TOTALNODES"
	SortByAggregateTotalnodehours SortByAggregate = "TOTALNODEHOURS"
	SortByAggregateTotalcores     SortByAggregate = "TOTALCORES"
	SortByAggregateTotalcorehours SortByAggregate = "TOTALCOREHOURS"
	SortByAggregateTotalaccs      SortByAggregate = "TOTALACCS"
	SortByAggregateTotalacchours  SortByAggregate = "TOTALACCHOURS"
)

func (SortByAggregate) IsValid added in v1.2.0

func (e SortByAggregate) IsValid() bool

func (SortByAggregate) MarshalGQL added in v1.2.0

func (e SortByAggregate) MarshalGQL(w io.Writer)

func (SortByAggregate) String added in v1.2.0

func (e SortByAggregate) String() string

func (*SortByAggregate) UnmarshalGQL added in v1.2.0

func (e *SortByAggregate) UnmarshalGQL(v interface{}) error

type SortDirectionEnum

type SortDirectionEnum string
const (
	SortDirectionEnumDesc SortDirectionEnum = "DESC"
	SortDirectionEnumAsc  SortDirectionEnum = "ASC"
)

func (SortDirectionEnum) IsValid

func (e SortDirectionEnum) IsValid() bool

func (SortDirectionEnum) MarshalGQL

func (e SortDirectionEnum) MarshalGQL(w io.Writer)

func (SortDirectionEnum) String

func (e SortDirectionEnum) String() string

func (*SortDirectionEnum) UnmarshalGQL

func (e *SortDirectionEnum) UnmarshalGQL(v interface{}) error

type StringInput

type StringInput struct {
	Eq         *string  `json:"eq,omitempty"`
	Neq        *string  `json:"neq,omitempty"`
	Contains   *string  `json:"contains,omitempty"`
	StartsWith *string  `json:"startsWith,omitempty"`
	EndsWith   *string  `json:"endsWith,omitempty"`
	In         []string `json:"in,omitempty"`
}

type TimeRangeOutput

type TimeRangeOutput struct {
	Range *string   `json:"range,omitempty"`
	From  time.Time `json:"from"`
	To    time.Time `json:"to"`
}

type TimeWeights added in v1.2.0

type TimeWeights struct {
	NodeHours []schema.Float `json:"nodeHours"`
	AccHours  []schema.Float `json:"accHours"`
	CoreHours []schema.Float `json:"coreHours"`
}

type User

type User struct {
	Username string `json:"username"`
	Name     string `json:"name"`
	Email    string `json:"email"`
}

Jump to

Keyboard shortcuts

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