recommenders: Python 3.8 illegal istruction

This is a bit more of a help for others that encounter my same error. Running tensorflow_recommenders with tensorflow 2.5 on python 3.8 kills the interpreter with a Illegal instruction (core dumped) when running import tensorflow_recommenders.

I wasted a bit of time and came up with a solution: match exactly your environment with the one running on colab. In this particular case using python 3.7 fixes the issue.

I’d suggest to state clearly the supported versions on the guides and the readme of this repository (an maybe also in the setup.py that stops at 3.6 ).

About this issue

  • Original URL
  • State: open
  • Created 3 years ago
  • Comments: 21 (6 by maintainers)

Most upvoted comments

ScaNN 1.2.8 was recently released and doesn’t assume AVX2 support; we now compile with -mavx rather than -mavx2, and do runtime dispatch to AVX2, when supported, for the important routines. Hopefully this helps.

Thanks for debugging–I think the issue is that vpbroadcastq is an AVX2 instruction, which Sandy Bridge doesn’t support. We will look into compiling the ScaNN wheels the next release without the -mavx2 flag so that this issue is resolved. You can try compiling ScaNN yourself without that flag in the meantime to see if that fixes the problem.