-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Maxwell GM107/GM108 support #227
Conversation
Thanks. What is your motivation for this PR, does this changes something in a real life scenario? |
Reports 'Compute capable' for PhysX. FluidMark_0001.log
I usually play Borderlands w/ Full HW PhysX enabled, adds a lot of details and fun. |
Please be a bit more verbose, I don't want to read between the lines. So you have a Maxwell GM107/108 card and this change allows you to enable PhysX and it also works? Above log lines are from FluidMark without this patch, but with this patch the log changes and the benchmark works on GM107/108? |
Yes.
With this patch. Without this patch (or Also there is a checkmark to enable GPU PhysX in FluidMark, which available with patch and disabled w/o. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the clarification. I would love to see a few more additions, but looks good in general.
We need to extend/adjust the tests to cover the new cases:
https://github.com/jp7677/dxvk-nvapi/blob/master/tests/nvapi_sysinfo.cpp#L751 and https://github.com/jp7677/dxvk-nvapi/blob/master/tests/nvapi_sysinfo.cpp#L309 and https://github.com/jp7677/dxvk-nvapi/blob/master/tests/nvapi_d3d12.cpp#L243
It would also be nice to make a distinction between Maxwell (Gen1)
and Maxwell (Gen2)
here https://github.com/jp7677/dxvk-nvapi/blob/master/tests/nvapi_system.cpp#L46 since we know that difference now.
@@ -236,6 +236,7 @@ extern "C" { | |||
pGraphicsCaps->minorSMVersion = 0; | |||
break; | |||
case NV_GPU_ARCHITECTURE_GM200: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Accoording to https://en.wikipedia.org/wiki/Maxwell_(microarchitecture) we should correct this and report sm52 for Maxwell Gen2 and sm50 for Maxwell Gen2.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See info about Series_*
too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, *_series
.
https://en.wikipedia.org/wiki/GeForce_700_series
https://en.wikipedia.org/wiki/GeForce_800M_series
https://en.wikipedia.org/wiki/GeForce_900_series
All contains info about numbers
for Maxwell Gen1.
Just in case.
@@ -268,6 +268,10 @@ namespace dxvk { | |||
|| (HasNvkDriver() && IsVkDeviceExtensionSupported(VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME))) | |||
return NV_GPU_ARCHITECTURE_GM200; | |||
|
|||
// VK_EXT_shader_image_atomic_int64 is supported on Maxwell 1 (GM10x) and newer |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is also the case for NVK (https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/nouveau/vulkan/nvk_physical_device.c?ref_type=heads#L244) which is nice!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the soure ;) so no double check.
As double check I filtered all devices by this thing on vulkan.gpuinfo.org with additional finter for NV -- only gen1 maxwells and some weird setups was lowest.
@@ -184,6 +184,7 @@ namespace dxvk::env { | |||
if (overrideStr == #arch) \ | |||
override = NV_GPU_ARCHITECTURE_##arch; | |||
CHECK_ARCH(GK100) | |||
CHECK_ARCH(GM000) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should also add this to the readme at https://github.com/jp7677/dxvk-nvapi/blob/master/README.md#tweaks-debugging-and-troubleshooting
Merged manually with #228 |
IDK what
GM000
for but lets use it for now.Test reports: