-
-
Notifications
You must be signed in to change notification settings - Fork 82
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
SWR AVX512 support #2
Comments
SWR AVX512 is only available in master branch. I only publish stable releases made with Scons and Visual Studio, but nothing stops you from trying to build from a development branch / master. |
Build successful but no SWR AVX512. I am either missing a parameter or Scons build lacks AVX512 support. |
Mesa 17.3 is soon to be released. It checks 2 defines to determine wherever to enable AVX512 or not as seen in this commit: https://cgit.freedesktop.org/mesa/mesa/commit/?h=17.3&id=f8a572cdf0cf7fb52348adc7862a7ffc612180ef. Unfortunately I don't have the knowledge on how to pass defines to Mesa Scons build system. This might not even be supported yet but I'll ask on mesa3d mailing lists. Update: those 2 defines are actually for enabling/disabling of SSE and AVX optimizations applied to AVX512 build so they won't help. |
would be nice if you can get AVX512 builds for Mesa 17.3.. |
I'm afraid I have bad news regarding swr AVX512 build. I looked at Mesa3D source code inside the Sconscript used by swr in both master and 17.3 branches and there is no define or environment import for it. This looks like it simply isn't there. |
I found the discussion and bug report regarding cross compilation with mingw and as an irony the driver that fails to build is swr: https://bugs.freedesktop.org/show_bug.cgi?id=101614 So to sum up:
So the only configuration that should work is linux native build with autotools. It appears we'll have to wait even more as we completely lack upstream support at the moment. |
Sent an upstream feature request here: |
Hi @pal1000 , BTW thanks for your 17.3 release.. |
After a lot of work and refactoring I managed to hook basic Meson support. Unfortunately my first attempt seam to indicate that MSVC is not yet supported. I get the following error during build config phase:
@oscarbg If you want to check why it fails and debug it, make sure Python 3,x is either in PATH or is installed with Python launcher, then you can apply the patch called The build script will attempt to build as you see above but then it opens an interactive command prompt to allow debugging. The only build option I found relevant is |
Thanks for effort.. are you using Mesa 18.0 or Mesa-dev in testing? |
I tried with Mesa-dev, though probably the same thing happens with 18.0. |
This issue mostly depends on #7 . |
I asked on mesa-dev mailing list about Meson support with MSVC and I got this response: And considering Dylan Baker is on to it this will take a while considering he is also the release manager for Mesa 18.1.0. This will keep him away from Meson Windows support development on Mesa for 2 more weeks at least. In a positive note I converted that enablemeson patch into a command line switch. It should be easier to attempt a Meson build this way. I also had the time to fix bugs that came out during Meson support implementation. The only thing left to do is to update the build script documentation as there are plenty of changes to make there. The Meson support is on hold until there is something upstream to work with. Right now there is nothing, not even on mesa master. |
Thanks for all your effort.. |
Mingw GCC can't build SWR at all regardless of what OS the build machine is running due to a GCC stack alignment bug with AVX that mostly affects Windows binaries. You can Google for info on it. As for Clang, it would be indeed interesting to see if it is possible. |
thanks.. |
We have LLVM, osmesa gallium, swr including AVX512 (#2) and GLES support that also works with osmesa unlike Scons where it fails to build. We don't have graw-gdi and OpenMP support yet. It's missing upstream. Floating point texyures and renderbuffers are unconditionally enabled so the build option was removed from Meson build. Related #7.
We have LLVM, osmesa gallium, swr including AVX512 (#2) and GLES support that also works with osmesa unlike Scons where it fails to build. We don't have graw-gdi and OpenMP support yet. It's missing upstream. Floating point textures and renderbuffers are unconditionally enabled so the build option was removed from Meson build. Related #7.
Well, I got to the point where I can build Mesa3D with Meson with LLVM linking and SWR driver included using Dylan Baker's branch, unfortunately I have bad news. Enabling AVX512 support for SWR fails during build system configuration, it doesn't recognize SKX and KNL arguments which means no AVX512. Also even if you build only AVX and AVX2 you can't select SWR due to confusion in Meson build, basically |
@oscarbg swr AVX512 can finally be built on Windows and it will most likely be part of Mesa 19.3 series. |
@pal1000 finally!! that's good news for today.. |
are you interested on doing a release of Mesa 19.3-RC1? |
Yes. but will take a while as I need to rebuild LLVM with latest Visual Studio update. |
19.3.0-rc1 pre-release is out. Good luck. |
19.3..0 is built with experimental swrAVX512 support thanks to switch of MSVC binaries to Meson build and an out of tree patch. Official support is tracked here. |
Phoronix found some difficulties to build AVX512 support so just asking? Perhaps fixed in 17.3 master branch?
The text was updated successfully, but these errors were encountered: