I want to create a virtual environment with some python packages on a cluster where different intel processors are available (eg sandy bridge old and haswell new). The login node, from where the installation has to happen, is haswell.
So I:
pip install virtualenv
cd my_project_folder
virtualenv my_project
If I do like this, when I login to a sandy-bridge, and I run python I get:
Please verify that both the operating system and the processor support Intel(R) MOVBE, F16C, FMA, BMI, LZCNT and AVX2 instructions.
because the python executable was created with compiler flags that only work for haswell nodes. I can tell virtualenv the python executable I want to use:
virtualenv -p /usr/bin/python2.7 my_project
but then when I
pip install numpy
he finds and takes the haswell compiled version of it, which won't run on sandy-bridge arch again.
How can I instruct pip to not use packages compiled with the haswell flags?
For some reasons I could explain I cannot create the virtenv using a sandy-bridge processor.