GraphQL remove toplevel thresholds and add Unit

Add Unit to metric values in subCluster
This commit is contained in:
Jan Eitzinger
2023-03-10 12:13:40 +01:00
parent c6c217adb0
commit 97f391deff
7 changed files with 304 additions and 297 deletions

View File

@@ -21,18 +21,23 @@ type Topology struct {
Accelerators []*Accelerator `json:"accelerators"`
}
type MetricValue struct {
Unit Unit `json:"unit"`
Value float64 `json:"value"`
}
type SubCluster struct {
Name string `json:"name"`
Nodes string `json:"nodes"`
NumberOfNodes int `json:"numberOfNodes"`
ProcessorType string `json:"processorType"`
SocketsPerNode int `json:"socketsPerNode"`
CoresPerSocket int `json:"coresPerSocket"`
ThreadsPerCore int `json:"threadsPerCore"`
FlopRateScalar int `json:"flopRateScalar"`
FlopRateSimd int `json:"flopRateSimd"`
MemoryBandwidth int `json:"memoryBandwidth"`
Topology *Topology `json:"topology"`
Name string `json:"name"`
Nodes string `json:"nodes"`
NumberOfNodes int `json:"numberOfNodes"`
ProcessorType string `json:"processorType"`
SocketsPerNode int `json:"socketsPerNode"`
CoresPerSocket int `json:"coresPerSocket"`
ThreadsPerCore int `json:"threadsPerCore"`
FlopRateScalar *MetricValue `json:"flopRateScalar"`
FlopRateSimd *MetricValue `json:"flopRateSimd"`
MemoryBandwidth *MetricValue `json:"memoryBandwidth"`
Topology *Topology `json:"topology"`
}
type SubClusterConfig struct {

View File

@@ -4,7 +4,7 @@
"title": "HPC cluster description",
"description": "Meta data information of a HPC cluster",
"type": "object",
"properties":{
"properties": {
"name": {
"description": "The unique identifier of a cluster",
"type": "string"
@@ -14,7 +14,7 @@
"type": "array",
"items": {
"type": "object",
"properties":{
"properties": {
"name": {
"description": "Metric name",
"type": "string"
@@ -44,7 +44,7 @@
"type": "array",
"items": {
"type": "object",
"properties":{
"properties": {
"name": {
"description": "Hardware partition name",
"type": "string"
@@ -75,7 +75,8 @@
"name",
"unit",
"scope",
"timestep"
"timestep",
"subClusters"
]
},
"minItems": 1
@@ -85,7 +86,7 @@
"type": "array",
"items": {
"type": "object",
"properties":{
"properties": {
"name": {
"description": "Hardware partition name",
"type": "string"
@@ -108,15 +109,42 @@
},
"flopRateScalar": {
"description": "Theoretical node peak flop rate for scalar code in GFlops/s",
"type": "integer"
"type": "object",
"properties": {
"unit": {
"description": "Metric unit",
"$ref": "embedfs://unit.schema.json"
},
"value": {
"type": "number"
}
}
},
"flopRateSimd": {
"description": "Theoretical node peak flop rate for SIMD code in GFlops/s",
"type": "integer"
"type": "object",
"properties": {
"unit": {
"description": "Metric unit",
"$ref": "embedfs://unit.schema.json"
},
"value": {
"type": "number"
}
}
},
"memoryBandwidth": {
"description": "Theoretical node peak memory bandwidth in GB/s",
"type": "integer"
"type": "object",
"properties": {
"unit": {
"description": "Metric unit",
"$ref": "embedfs://unit.schema.json"
},
"value": {
"type": "number"
}
}
},
"nodes": {
"description": "Node list expression",
@@ -125,7 +153,7 @@
"topology": {
"description": "Node topology",
"type": "object",
"properties":{
"properties": {
"node": {
"description": "HwTread lists of node",
"type": "array",
@@ -205,14 +233,14 @@
}
}
},
"required":[
"required": [
"node",
"socket",
"memoryDomain"
]
}
},
"required":[
"required": [
"name",
"topology",
"processorType",
@@ -227,7 +255,7 @@
"minItems": 1
}
},
"required":[
"required": [
"name",
"metricConfig",
"subClusters"