Originally posted by Serafean
View Post
So there are two files for each shared library (a .so and a .so.avx2) and at runtime the python interpreter checks if avx2 is supported, and if it is, it'll pick the .so.avx2 over the .so file, but if avx2 is not supported, the .so file is used (they come from the same source files of the python module so they're identical in functionality, just not in compiler flags).
Most python module .so files are for python code thunking to performance sensitive code, usually math stuff, which is where avx2 can actually make a difference.
Comment