robbmcleod / pyfastnoisesimd

Python module wrapping C++ FastNoiseSIMD
BSD 3-Clause "New" or "Revised" License
39 stars 6 forks source link

AVX512 support #4

Open robbmcleod opened 6 years ago

robbmcleod commented 6 years ago

Pretty much self-explanatory, since I have a CPU with AVX512 support I should verify the performance of the library to use those instructions. Probably something to do over the Christmas break.

robbmcleod commented 6 years ago

I haven't been able to get AVX512 to work with either MSVC2017 or GCC6 yet.

For AVX2, we have the problem that cpuinfo.py doesn't detect it. So currently I simply have a commented out line in setup.py. It would be preferrable to write something new, since cpuinfo.py is such a jumbled mess. I'm inclined to write a Python wrapper for:

https://github.com/Mysticial/FeatureDetector

It would need also the ability to detector CPU count, and ideally distinguish virtual from physical cores, and determine the L1/L2/L3 cache sizes.

QuLogic commented 6 years ago

I had a bit of trouble compiling it with GCC7: Auburns/FastNoiseSIMD#24

robbmcleod commented 6 years ago

Well I finally managed to figure out how to get it compiling with AVX2 with GCC6 on Travis:

https://travis-ci.org/robbmcleod/pyfastnoisesimd/builds/325733401?utm_source=github_status&utm_medium=notification

And I can compile with GCC7 and AVX512 support on my machine, so I think the situation is fine if documented.