detect-gpu
detect-gpu copied to clipboard
Some GPUs with known BENCHMARK results and higher tier are unrecognized, get FALLBACK and tier 1 in at least Windows + Chrome
We have seen the following GPU names detected on Windows using Chrome 126.0.0:
- nvidia, nvidia quadro gv100 (0x00001dba) (ANGLE (NVIDIA, NVIDIA Quadro GV100 (0x00001DBA) Direct3D11 vs_5_0 ps_5_0, D3D11))
- nvidia, nvidia geforce rtx 3060 laptop gpu (0x00002520) (ANGLE (NVIDIA, NVIDIA GeForce RTX 3060 Laptop GPU (0x00002520) Direct3D11 vs_5_0 ps_5_0, D3D11))
If I understand the benchmark data correctly, in both of these cases the base GPU (nvidia quadro gv100, nvidia geforce rtx 3060 laptop gpu) have entries that should allow them to be tier 3. I have also seen some code (e.g. src\internal\cleanRenderer.ts) that strips off some of the extraneous descriptors like "ANGLE", "Direct3D11", etc.
Perhaps there needs to be some additional handling to strip more off, or maybe the logic could be loosened to allow for inclusion of a substring rather than exact match (I have not looked into this).
I checked out the code and added the GPU name strings from original report above to test\data.ts as members of RENDERER_DESKTOP so that I could run tests for them. Those tests passed. Debugging into the tests seems to show that each is correctly identified as the expected base GPU, then mapped to tier 3 with a 'BENCHMARK' result. Can one of the maintainers let me know if this is a legitimate way to have tested the behavior?
Assuming they are accurate, the test results leave me confused, because I have actual captured end-user data that shows the GPU names from the original report being mapped to tier 1 with a 'FALLBACK' result. I am trying to theorize how that could be possible given my test results. Could it happen if some endpoint used to access benchmark data was inaccessible for some reason?
+1
it recognize nvidia 5090 as tier 1