summaryrefslogtreecommitdiff
path: root/static/redfish/v1/schema/ProcessorMetrics_v1.xml
blob: c473250a6853d06d45fbb46c3cfa3ec09fdbdb84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
<?xml version="1.0" encoding="UTF-8"?>
<!---->
<!--################################################################################       -->
<!--# Redfish Schema:  ProcessorMetrics v1.0.2                                             -->
<!--#                                                                                      -->
<!--# For a detailed change log, see the README file contained in the DSP8010 bundle,      -->
<!--# available at http://www.dmtf.org/standards/redfish                                   -->
<!--# Copyright 2014-2019 DMTF.                                                            -->
<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
<!--################################################################################       -->
<!---->
<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">

  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
    <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
    <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
  </edmx:Reference>
  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
    <edmx:Include Namespace="Resource.v1_0_0"/>
  </edmx:Reference>

  <edmx:DataServices>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ProcessorMetrics">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>

      <EntityType Name="ProcessorMetrics" BaseType="Resource.v1_0_0.Resource" Abstract="true">
        <Annotation Term="OData.Description" String="The ProcessorMetrics schema contains usage and health statistics for a processor."/>
        <Annotation Term="OData.LongDescription" String="This Resource contains the Processor Metrics for a single Processor in a Redfish implementation."/>
        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
        <Annotation Term="Capabilities.InsertRestrictions">
          <Record>
            <PropertyValue Property="Insertable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.UpdateRestrictions">
          <Record>
            <PropertyValue Property="Updatable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Capabilities.DeleteRestrictions">
          <Record>
            <PropertyValue Property="Deletable" Bool="false"/>
          </Record>
        </Annotation>
        <Annotation Term="Redfish.Uris">
          <Collection>
            <String>/redfish/v1/Systems/{ComputerSystemId}/ProcessorSummary/ProcessorMetrics</String>
            <String>/redfish/v1/Systems/{ComputerSystemId}/Processors/{ProcessorId}/ProcessorMetrics</String>
            <String>/redfish/v1/Systems/{ComputerSystemId}/Processors/{ProcessorId}/SubProcessors/{ProcessorId2}/ProcessorMetrics</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/ProcessorMetrics</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/SubProcessors/{ProcessorId2}/ProcessorMetrics</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/ProcessorSummary/ProcessorMetrics</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/ProcessorMetrics</String>
            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/SubProcessors/{ProcessorId2}/ProcessorMetrics</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/ProcessorMetrics</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Processors/{ProcessorId}/SubProcessors/{ProcessorId2}/ProcessorMetrics</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/ProcessorSummary/ProcessorMetrics</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/ProcessorMetrics</String>
            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Processors/{ProcessorId}/SubProcessors/{ProcessorId2}/ProcessorMetrics</String>
          </Collection>
        </Annotation>
      </EntityType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ProcessorMetrics.v1_0_0">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="Redfish.Release" String="2018.3"/>

      <EntityType Name="ProcessorMetrics" BaseType="ProcessorMetrics.ProcessorMetrics">
        <Property Name="BandwidthPercent" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The CPU bandwidth as a percentage."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain CPU utilization of the processor as a percentage.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the CPU utilization over all processors as a percentage."/>
          <Annotation Term="Validation.Minimum" Int="0"/>
          <Annotation Term="Measures.Unit" String="%"/>
        </Property>
        <Property Name="AverageFrequencyMHz" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The average frequency of the processor."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain average frequency in MHz, across all enabled cores in the processor.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
          <Annotation Term="Measures.Unit" String="MHz"/>
        </Property>
        <Property Name="ThrottlingCelsius" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The CPU margin to throttle (temperature offset in degree Celsius)."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the CPU margin to throttle based on an offset between the maximum temperature in which the processor can operate, and the processor's current temperature.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
          <Annotation Term="Measures.Unit" String="Cel"/>
        </Property>
        <Property Name="TemperatureCelsius" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The temperature of the processor."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the temperature, in Celsius, of the processor.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the average temperature, in Celcius, over all processors."/>
          <Annotation Term="Measures.Unit" String="Cel"/>
        </Property>
        <Property Name="ConsumedPowerWatt" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The power, in watts, that the processor has consumed."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the power, in watts, that the processor has consumed.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the sum of power, in watts, that all processors have consumed."/>
          <Annotation Term="Measures.Unit" String="W"/>
        </Property>
        <Property Name="FrequencyRatio" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The frequency relative to the nominal processor frequency ratio."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the frequency relative to the nominal processor frequency ratio of this processor.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the average FrequencyRatio over all processors."/>
        </Property>
        <Property Name="Cache" Type="Collection(ProcessorMetrics.v1_0_0.CacheMetrics)" Nullable="false">
          <Annotation Term="OData.Description" String="The processor cache metrics."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain properties that describe this processor's cache.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
        </Property>
        <Property Name="LocalMemoryBandwidthBytes" Type="Edm.Int64">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The local memory bandwidth usage in bytes."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the local memory bandwidth usage of this processor in bytes.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the sum of LocalMemoryBandwidthBytes over all processors."/>
          <Annotation Term="Measures.Unit" String="By"/>
        </Property>
        <Property Name="RemoteMemoryBandwidthBytes" Type="Edm.Int64">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The remote memory bandwidth usage in bytes."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the remote memory bandwidth usage of this processor in bytes.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the sum of RemoteMemoryBandwidthBytes over all processors."/>
          <Annotation Term="Measures.Unit" String="By"/>
        </Property>
        <Property Name="KernelPercent" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The percentage of time spent in kernel mode."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain total percentage of time the processor has spent in kernel mode.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the average KernelPercent over all processors."/>
          <Annotation Term="Validation.Minimum" Int="0"/>
          <Annotation Term="Measures.Unit" String="%"/>
        </Property>
        <Property Name="UserPercent" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The percentage of time spent in user mode."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain total percentage of time the processor has spent in user mode.  When this Resource is subordinate to the ProcessorSummary object, this property shall be the average UserPercent over all processors."/>
          <Annotation Term="Validation.Minimum" Int="0"/>
          <Annotation Term="Measures.Unit" String="%"/>
        </Property>
        <Property Name="CoreMetrics" Type="Collection(ProcessorMetrics.v1_0_0.CoreMetrics)" Nullable="false">
          <Annotation Term="OData.Description" String="The processor core metrics."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain properties that describe the cores of this processor.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
        </Property>
        <Property Name="Actions" Type="ProcessorMetrics.v1_0_0.Actions" Nullable="false">
          <Annotation Term="OData.Description" String="The available actions for this Resource."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this Resource."/>
        </Property>
      </EntityType>

      <ComplexType Name="CoreMetrics">
        <Annotation Term="OData.Description" String="The processor core metrics."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe the cores of a processor."/>
        <Property Name="CoreId" Type="Edm.String">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The processor core identifier."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the identifier of the core within the processor."/>
        </Property>
        <Property Name="InstructionsPerCycle" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The number of instructions per clock cycle of this core."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of instructions per clock cycle of this core in the processor."/>
        </Property>
        <Property Name="UnhaltedCycles" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The unhalted cycles count of this core."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of unhalted cycles of this core in the processor."/>
        </Property>
        <Property Name="MemoryStallCount" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The number of stalled cycles due to memory operations."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of stalled cycles due to memory operations of this core in the processor."/>
        </Property>
        <Property Name="IOStallCount" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The number of stalled cycles due to I/O operations."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of stalled cycles due to I/O operations of this core in the processor."/>
        </Property>
        <Property Name="CoreCache" Type="Collection(ProcessorMetrics.v1_0_0.CacheMetrics)" Nullable="false">
          <Annotation Term="OData.Description" String="The cache metrics of this core in the processor."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain properties that describe the cache metrics of this core in the processor."/>
        </Property>
        <Property Name="CStateResidency" Type="Collection(ProcessorMetrics.v1_0_0.CStateResidency)" Nullable="false">
          <Annotation Term="OData.Description" String="The C-state residency of this core in the processor."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain properties that describe the C-state residency of this core in the processor."/>
        </Property>
      </ComplexType>

      <ComplexType Name="CacheMetrics">
        <Annotation Term="OData.Description" String="The processor core metrics."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe cache metrics of a processor or core."/>
        <Property Name="Level" Type="Edm.String">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The cache level."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the level of the cache in the processor or core."/>
        </Property>
        <Property Name="CacheMiss" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The number of cache line misses in millions."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of cache line misses of the processor or core in millions."/>
        </Property>
        <Property Name="HitRatio" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The cache line hit ratio."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the cache hit ratio of the processor or core."/>
        </Property>
        <Property Name="CacheMissesPerInstruction" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The number of cache misses per instruction."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the number of cache misses per instruction of the processor or core."/>
        </Property>
        <Property Name="OccupancyBytes" Type="Edm.Int64">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The total cache level occupancy in bytes."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the total cache occupancy of the processor or core in bytes."/>
          <Annotation Term="Measures.Unit" String="By"/>
        </Property>
        <Property Name="OccupancyPercent" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The total cache occupancy percentage."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the total cache occupancy percentage of the processor or core."/>
          <Annotation Term="Validation.Minimum" Int="0"/>
          <Annotation Term="Measures.Unit" String="%"/>
        </Property>
      </ComplexType>

      <ComplexType Name="CStateResidency">
        <Annotation Term="OData.Description" String="The C-state residency of the processor."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain properties that describe the C-state residency of the processor or core."/>
        <Property Name="Level" Type="Edm.String">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The C-state level, such as C0, C1, or C2."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the C-state level, such as C0, C1, or C2.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
        </Property>
        <Property Name="ResidencyPercent" Type="Edm.Decimal">
          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
          <Annotation Term="OData.Description" String="The percentage of time that the processor or core has spent in this particular level of C-state."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the percentage of time that the processor or core has spent in this particular level of C-state.  When this Resource is subordinate to the ProcessorSummary object, this property is not applicable."/>
          <Annotation Term="Validation.Minimum" Int="0"/>
          <Annotation Term="Measures.Unit" String="%"/>
        </Property>
      </ComplexType>

      <ComplexType Name="Actions">
        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
        <Annotation Term="OData.Description" String="The available actions for this Resource."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this Resource."/>
        <Property Name="Oem" Type="ProcessorMetrics.v1_0_0.OemActions" Nullable="false">
          <Annotation Term="OData.Description" String="The available OEM-specific actions for this Resource."/>
          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this Resource."/>
        </Property>
      </ComplexType>

      <ComplexType Name="OemActions">
        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
        <Annotation Term="OData.Description" String="The available OEM-specific actions for this Resource."/>
        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this Resource."/>
      </ComplexType>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ProcessorMetrics.v1_0_1">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to force the regeneration of JSON Schema so that URI properties use the uri-reference format, and to add a missing term to several properties to disallow them from being null."/>
      <EntityType Name="ProcessorMetrics" BaseType="ProcessorMetrics.v1_0_0.ProcessorMetrics"/>
    </Schema>

    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="ProcessorMetrics.v1_0_2">
      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
      <Annotation Term="OData.Description" String="This version was created to update descriptions to give guidance to the usage of certain properties when the metrics is used for a summary of all processors in a system.  It was also created to update descriptions that this schema defines."/>
      <EntityType Name="ProcessorMetrics" BaseType="ProcessorMetrics.v1_0_1.ProcessorMetrics"/>
    </Schema>

  </edmx:DataServices>
</edmx:Edmx>