Hetherogeneous GPU Capable

QND.Windows.HyperV.2012.R2.HeterogeneousGPUMonitor (UnitMonitor)

Knowledge Base article:

Summary

This monitor checks if the VM has RemoteFX enabled and if the GPUs installed on this server are the same make and model.

Configuration

Alert is raised when the VM has RemoteFX enabled but the GPU installed on the Hyper-V host are not the same make and model.

Resolutions

Disable RemoteFX for the VM or replace the GPUs on the Hyper-V host.

Element properties:

TargetQND.Hyperv.2012R2.VM
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledFalse
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.HyperV.2012.R2.RemoteFXMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
GPUs installed in the server are not of the same make and model.
The server currently hosts GPUs that are not of the same make and model. This configuration is not valid for RemoteFX. RemoteFX requires that GPUs installed in the server must be of the same make and model.
RunAsDefault

Source Code:

<UnitMonitor ID="QND.Windows.HyperV.2012.R2.HeterogeneousGPUMonitor" Accessibility="Public" Enabled="false" Target="QND.Hyperv.2012R2.VM" ParentMonitorID="Health!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="HVMon!Microsoft.Windows.HyperV.2012.R2.RemoteFXMonitorType" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="QND.Windows.HyperV.2012.R2.HeterogeneousGPUMonitor.Alert">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters/>
</AlertSettings>
<OperationalStates>
<OperationalState ID="RemoteFXCapableHardware" MonitorTypeStateID="HostHealthy" HealthState="Success"/>
<OperationalState ID="RemoteFXInCapableHardware" MonitorTypeStateID="HostCritical" HealthState="Error"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>86400</IntervalSeconds>
<TimeoutSeconds>30</TimeoutSeconds>
<PropertyName>HeterogeneousGPU</PropertyName>
</Configuration>
</UnitMonitor>