Re: OpenGL driver loading abnoxiously slow. (Toshiba laptop L670 2012/Intel/AMD/RadeON)

Paul <[email protected]> Wed, 19 May 2021 05:55:34 -0400
Newsgroups alt.comp.periphs.videocards.nvidia
Organization Aioe.org NNTP Server
Message-ID <[email protected]>
skybuck2000 wrote:
> For some reason on the toshiba laptop from 2012 the opengl driver loads very slowly. (Toshiba laptop L670 2012/Intel/AMD/RadeON)
> 
> So slow that I believed the application "frooze/hang" but this is not the cause.
> 
> Possible causes:
> 
> 1. I "hacked" the driver version number to try and make Star War Battlefront 2 run.
> 2. AMD installed a bad driver, or sabotaged the laptop trying to make it run slow.
> 3. Microsoft fucked up and installed some bad driver to make the laptop run slow.
> 4. The slow 5200 RPM harddisk is responsible for the slow load. Though 80 MB/sec should be enough ?!
> 
> It's suspicious at the very least.
> 
> My question is: Is there a programmatic way to tell how long it will take to load the opengl driver ? Is there a way to tell when it's done, besides from ofcourse the rendering suddenly kicking in.
> 
> I did a quick google and find two threads that might be of some interesting:
> 
> https://docs.microsoft.com/en-us/windows-hardware/drivers/display/loading-an-opengl-installable-client-driver
> 
> "
> The OpenGL runtime accesses the registry to determine which OpenGL installable client driver (ICD) to load. 
> 
> To load the OpenGL ICD, the OpenGL runtime:
> 
>     Determines the name, version, and flags that are associated with the OpenGL ICD by calling the 
> 
> D3DKMTQueryAdapterInfo function with the KMTQAITYPE_UMOPENGLINFO value set in the Type member of the 
> 
> D3DKMT_QUERYADAPTERINFO structure that the pData parameter points to.
> 
>     Checks the version number of the OpenGL ICD that D3DKMTQueryAdapterInfo returns to validate the version 
> 
> of the OpenGL ICD.
> 
>     Loads the OpenGL ICD by using the name of the OpenGL ICD.
> 
>     Initializes access to the OpenGL ICD's functions. Note   To obtain a license for the OpenGL ICD 
> 
> Development Kit, contact the OpenGL Issues team.
> 
> To locate the name of the OpenGL ICD, D3DKMTQueryAdapterInfo searches the registry in the following key:
> registry
> 
> HKLM/System/CurrentControlSet/Control/Class/{Adapter GUID}/0000/
> 
> This key also contains the names of the Microsoft Direct3D user-mode display drivers. This key contains four 
> 
> registry entries for 32-bit Windows Vista display drivers that are used on 32-bit Windows Vista and four 
> 
> entries for 32-bit Windows Vista display drivers that are used on 64-bit Windows Vista. The following entries 
> 
> are for 32-bit Windows Vista display drivers that are used on 32-bit Windows Vista:
> 
> UserModeDriverName
> REG_SZ
> 
> The name of the Direct3D user-mode display driver, which is required for the operation of a Direct3D 
> 
> rendering device regardless of whether the operating system supports an OpenGL ICD.
> 
> OpenGLDriverName
> REG_SZ
> 
> The name of the OpenGL ICD. For example, if the OpenGL ICD is Mydriver.dll, the value of this entry is 
> 
> Mydriver.dll.
> 
> OpenGLVersion
> REG_DWORD
> 
> The version number of the OpenGL ICD that the OpenGL runtime uses to validate the version of the OpenGL ICD.
> 
> OpenGLFlags
> REG_DWORD
> 
> A flag bitmask. Currently, bit 0 (0x00000001) is set for compatibility. When bit 1 (0x00000002) is set, the 
> 
> OpenGL runtime does not call the ICD's finish function before the runtime calls the ICD's swap-buffers 
> 
> function.
> 
> The following entries are for 32-bit Windows Vista display drivers that are used on 64-bit Windows Vista:
> 
> UserModeDriverNameWow
> REG_SZ
> 
> The name of the 32-bit Microsoft Direct3D user-mode display driver for 64-bit Windows Vista.
> 
> OpenGLDriverNameWow
> REG_SZ
> 
> The name of the 32-bit OpenGL ICD for 64-bit Windows Vista.
> 
> OpenGLVersionWow
> REG_DWORD
> 
> The version number of the 32-bit OpenGL ICD for 64-bit Windows Vista.
> 
> OpenGLFlagsWow
> REG_DWORD
> 
> A flag bitmask of the 32-bit OpenGL ICD for 64-bit Windows Vista.
> "
> 
> and this:
> 
> https://stackoverflow.com/questions/66089533/how-does-the-opengl-function-loading-mechanism-work
> 
> Has anybody ever developed a "loading opengl driver" window/display ?
> 
> I could place a label behind the render window and tell the user:
> 
> "please wait for the opengl driver to load".
> 
> Bye for now,
>   Skybuck.

This isn't really answering your question, but perhaps
you could try this

    https://geeks3d.com/furmark/

just to get some idea how long a non-game takes to load.

If only DXDiag had a button to test, that would have
been a way to do it. But all it tests (back when it had tests)
is DirectX stuff.

    Paul