Closed Bug 1382625 Opened 7 years ago Closed 7 years ago

Create a mechanism to cause EC2 GPU instances to default to the NVidia display adapter

Categories

(Infrastructure & Operations :: RelOps: General, task)

x86_64
Windows 10
task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: grenade, Assigned: grenade)

References

Details

on Windows versions less than 10 (7 & 8), we use fakemon.vbs to create a fake secondary display and then switch priority to make the monitor connected to the NVidia adapter become the primary display. on Windows 10 (Creators Update), the option to create a fake secondary display is missing from the Display Settings control panel applet. Meaning we haven't been able to create a secondary display to make use of the NVidia adapter. disabling the BasicDisplay adapter works for a little while but when gpu tests run, the EC2 instances crash and go into an EC2 "impaired" state, making them useless. We either need to find a way to create a fake secondary display directly in the registry, or otherwise cause the NVidia adapter to be used by the GPU tests.
First attempted to create display default attached to nvidia: "\\Device\\Video7"="\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Video\\<deviceid>\\0000" In this case: "\\Device\\Video7"="\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Video\\{1260EE7D-BB3B-4905-A1F6-7A1844CEC036}\\0000" Then added a video entry and enabled vgacompability: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Video\{1260EE7D-BB3B-4905-A1F6-7A1844CEC036}\0000] "VgaCompatible"=dword:00000001 Ran WMI query Update Win32_VideoController set availability=3 WHERE AdapterCompatibility LIKE "NVIDIA%" HUP explorer Then Fakmon and configmymonitor are able to set the display as usable. However, this will not stick across logout and login of a new user. I am unable to figure out how to make it stick and started to find was to instead stop "blue stutter" problem.
Based on my current research I believe we can stop the hangs by disabling the basic adapter and killing the reg entries AND stopping the basic display adapter service that checks for software rendering. This should solve the problem and so far in testing that has held up. However, these settings will NOT work on a non GPU instance.
Q: what is the name of the basic display adapter service that should be stopped?
Flags: needinfo?(q)
Short name is BasicDisplay Loads a kernel mode driver %WinDir%\System32\drivers\BasicDisplay.sys That was the sys call I saw causing a hang.
Flags: needinfo?(q)
I'm struggling to find this sevice... PS C:\Users\Administrator> Get-Service Status Name DisplayName ------ ---- ----------- Stopped AJRouter AllJoyn Router Service Stopped ALG Application Layer Gateway Service Start... AmazonSSMAgent Amazon SSM Agent Stopped AppIDSvc Application Identity Stopped Appinfo Application Information Stopped AppMgmt Application Management Stopped AppReadiness App Readiness Stopped AppVClient Microsoft App-V Client Running AppXSvc AppX Deployment Service (AppXSVC) Running AudioEndpointBu... Windows Audio Endpoint Builder Running Audiosrv Windows Audio Stopped AxInstSV ActiveX Installer (AxInstSV) Stopped BDESVC BitLocker Drive Encryption Service Running BFE Base Filtering Engine Stopped BITS Background Intelligent Transfer Ser... Running BrokerInfrastru... Background Tasks Infrastructure Ser... Running Browser Computer Browser Stopped BthHFSrv Bluetooth Handsfree Service Stopped bthserv Bluetooth Support Service Running CDPSvc Connected Devices Platform Service Running CDPUserSvc_471c4 Connected Devices Platform User Ser... Running CertPropSvc Certificate Propagation Stopped ClipSVC Client License Service (ClipSVC) Stopped COMSysApp COM+ System Application Running CoreMessagingRe... CoreMessaging Running CryptSvc Cryptographic Services Stopped CscService Offline Files Running DcomLaunch DCOM Server Process Launcher Stopped defragsvc Optimize drives Stopped DeviceAssociati... Device Association Service Stopped DeviceInstall Device Install Service Stopped DevicesFlowUser... DevicesFlow_471c4 Stopped DevQueryBroker DevQuery Background Discovery Broker Running Dhcp DHCP Client Stopped diagnosticshub.... Microsoft (R) Diagnostics Hub Stand... Running DiagTrack Connected User Experiences and Tele... Running DirMngr DirMngr Stopped DmEnrollmentSvc Device Management Enrollment Service Stopped dmwappushservice dmwappushsvc Running Dnscache DNS Client Stopped DoSvc Delivery Optimization Stopped dot3svc Wired AutoConfig Running DPS Diagnostic Policy Service Stopped DsmSvc Device Setup Manager Stopped DsSvc Data Sharing Service Running DusmSvc Data Usage Stopped EapHost Extensible Authentication Protocol Running Ec2Config Ec2Config Stopped EFS Encrypting File System (EFS) Stopped embeddedmode Embedded Mode Stopped EntAppSvc Enterprise App Management Service Running EventLog Windows Event Log Running EventSystem COM+ Event System Stopped Fax Fax Stopped fdPHost Function Discovery Provider Host Stopped FDResPub Function Discovery Resource Publica... Stopped fhsvc File History Service Running FontCache Windows Font Cache Service Stopped FrameServer Windows Camera Frame Server Running gpsvc Group Policy Client Stopped hidserv Human Interface Device Service Stopped HomeGroupListener HomeGroup Listener Stopped HomeGroupProvider HomeGroup Provider Stopped HvHost HV Host Service Stopped icssvc Windows Mobile Hotspot Service Running IKEEXT IKE and AuthIP IPsec Keying Modules Running iphlpsvc IP Helper Stopped IpxlatCfgSvc IP Translation Configuration Service Stopped irmon Infrared monitor service Running KeyIso CNG Key Isolation Stopped KtmRm KtmRm for Distributed Transaction C... Running LanmanServer Server Running LanmanWorkstation Workstation Running lfsvc Geolocation Service Stopped LicenseManager Windows License Manager Service Stopped lltdsvc Link-Layer Topology Discovery Mapper Running lmhosts TCP/IP NetBIOS Helper Running LSM Local Session Manager Stopped MapsBroker Downloaded Maps Manager Stopped MessagingServic... MessagingService_471c4 Stopped MozillaMaintenance Mozilla Maintenance Service Running MpsSvc Windows Firewall Stopped MSDTC Distributed Transaction Coordinator Stopped MSiSCSI Microsoft iSCSI Initiator Service Stopped msiserver Windows Installer Stopped NaturalAuthenti... Natural Authentication Stopped NcaSvc Network Connectivity Assistant Running NcbService Network Connection Broker Stopped NcdAutoSetup Network Connected Devices Auto-Setup Stopped Netlogon Netlogon Stopped Netman Network Connections Running netprofm Network List Service Stopped NetSetupSvc Network Setup Service Stopped NetTcpPortSharing Net.Tcp Port Sharing Service Stopped NgcCtnrSvc Microsoft Passport Container Stopped NgcSvc Microsoft Passport Running NlaSvc Network Location Awareness Running nsi Network Store Interface Service Running nvsvc NVIDIA Display Driver Service Running nxlog nxlog Stopped OneSyncSvc_471c4 Sync Host_471c4 Stopped p2pimsvc Peer Networking Identity Manager Stopped p2psvc Peer Networking Grouping Running PcaSvc Program Compatibility Assistant Ser... Stopped PeerDistSvc BranchCache Stopped PerfHost Performance Counter DLL Host Stopped PhoneSvc Phone Service Stopped PimIndexMainten... Contact Data_471c4 Stopped pla Performance Logs & Alerts Running PlugPlay Plug and Play Stopped PNRPAutoReg PNRP Machine Name Publication Service Stopped PNRPsvc Peer Name Resolution Protocol Running PolicyAgent IPsec Policy Agent Running Power Power Stopped PrintNotify Printer Extensions and Notifications Running ProfSvc User Profile Service Stopped QWAVE Quality Windows Audio Video Experience Stopped RasAuto Remote Access Auto Connection Manager Stopped RasMan Remote Access Connection Manager Stopped RemoteAccess Routing and Remote Access Stopped RemoteRegistry Remote Registry Stopped RetailDemo Retail Demo Service Stopped RmSvc Radio Management Service Running RpcEptMapper RPC Endpoint Mapper Stopped RpcLocator Remote Procedure Call (RPC) Locator Running RpcSs Remote Procedure Call (RPC) Running SamSs Security Accounts Manager Stopped SCardSvr Smart Card Running ScDeviceEnum Smart Card Device Enumeration Service Running Schedule Task Scheduler Stopped SCPolicySvc Smart Card Removal Policy Stopped SDRSVC Windows Backup Stopped seclogon Secondary Logon Running SecurityHealthS... Windows Defender Security Center Se... Stopped SEMgrSvc Payments and NFC/SE Manager Running SENS System Event Notification Service Stopped Sense Windows Defender Advanced Threat Pr... Stopped SensorDataService Sensor Data Service Stopped SensorService Sensor Service Stopped SensrSvc Sensor Monitoring Service Running SessionEnv Remote Desktop Configuration Stopped SharedAccess Internet Connection Sharing (ICS) Running ShellHWDetection Shell Hardware Detection Stopped shpamsvc Shared PC Account Manager Stopped smphost Microsoft Storage Spaces SMP Stopped SmsRouter Microsoft Windows SMS Router Service. Stopped SNMPTRAP SNMP Trap Stopped spectrum Windows Perception Service Running Spooler Print Spooler Running sppsvc Software Protection Running SSDPSRV SSDP Discovery Stopped SstpSvc Secure Socket Tunneling Protocol Se... Running StateRepository State Repository Service Stopped stisvc Windows Image Acquisition (WIA) Stopped StorSvc Storage Service Stopped svsvc Spot Verifier Stopped swprv Microsoft Software Shadow Copy Prov... Running SysMain Superfetch Running SystemEventsBroker System Events Broker Stopped TabletInputService Touch Keyboard and Handwriting Pane... Stopped TapiSrv Telephony Running TermService Remote Desktop Services Running Themes Themes Stopped TieringEngineSe... Storage Tiers Management Running tiledatamodelsvc Tile Data model server Running TimeBrokerSvc Time Broker Running TokenBroker TokenBroker Running TrkWks Distributed Link Tracking Client Stopped TrustedInstaller Windows Modules Installer Stopped tzautoupdate Auto Time Zone Updater Stopped UevAgentService User Experience Virtualization Service Stopped UI0Detect Interactive Services Detection Running UmRdpService Remote Desktop Services UserMode Po... Stopped UnistoreSvc_471c4 User Data Storage_471c4 Stopped upnphost UPnP Device Host Stopped UserDataSvc_471c4 User Data Access_471c4 Running UserManager User Manager Stopped UsoSvc Update Orchestrator Service Running uvnc_service uvnc_service Stopped VaultSvc Credential Manager Stopped vds Virtual Disk Stopped vmicguestinterface Hyper-V Guest Service Interface Stopped vmicheartbeat Hyper-V Heartbeat Service Stopped vmickvpexchange Hyper-V Data Exchange Service Stopped vmicrdv Hyper-V Remote Desktop Virtualizati... Stopped vmicshutdown Hyper-V Guest Shutdown Service Stopped vmictimesync Hyper-V Time Synchronization Service Stopped vmicvmsession Hyper-V PowerShell Direct Service Stopped vmicvss Hyper-V Volume Shadow Copy Requestor Stopped VSS Volume Shadow Copy Stopped W32Time Windows Time Stopped WalletService WalletService Stopped wbengine Block Level Backup Engine Service Stopped WbioSrvc Windows Biometric Service Running Wcmsvc Windows Connection Manager Stopped wcncsvc Windows Connect Now - Config Registrar Running WdiServiceHost Diagnostic Service Host Stopped WdiSystemHost Diagnostic System Host Stopped WdNisSvc Windows Defender Antivirus Network ... Stopped WebClient WebClient Stopped Wecsvc Windows Event Collector Stopped WEPHOSTSVC Windows Encryption Provider Host Se... Stopped wercplsupport Problem Reports and Solutions Contr... Stopped WerSvc Windows Error Reporting Service Stopped WFDSConMgrSvc Wi-Fi Direct Services Connection Ma... Stopped WiaRpc Still Image Acquisition Events Stopped WinDefend Windows Defender Antivirus Service Running WinHttpAutoProx... WinHTTP Web Proxy Auto-Discovery Se... Running Winmgmt Windows Management Instrumentation Stopped WinRM Windows Remote Management (WS-Manag... Stopped wisvc Windows Insider Service Stopped WlanSvc WLAN AutoConfig Running wlidsvc Microsoft Account Sign-in Assistant Stopped wlpasvc LPA Service Stopped wmiApSrv WMI Performance Adapter Stopped WMPNetworkSvc Windows Media Player Network Sharin... Stopped workfolderssvc Work Folders Running WPDBusEnum Portable Device Enumerator Service Running WpnService Windows Push Notifications System S... Running WpnUserService_... Windows Push Notifications User Ser... Stopped wscsvc Security Center Running WSearch Windows Search Running wuauserv Windows Update Running wudfsvc Windows Driver Foundation - User-mo... Stopped WwanSvc WWAN AutoConfig Stopped xbgm Xbox Game Monitoring Stopped XblAuthManager Xbox Live Auth Manager Stopped XblGameSave Xbox Live Game Save Stopped XboxGipSvc Xbox Accessory Management Service Stopped XboxNetApiSvc Xbox Live Networking Service PS C:\Users\Administrator> Get-Service | ? { $_.DisplayName -eq 'BasicDisplay' } PS C:\Users\Administrator>
I put a couple of commands in your terminal window on your machine. You should be able to disable this service with: sc config "basicdisplay" start=disabled and then reboot
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.