from what I've been reading, and testing myself, 64bit CPU's from AMD and actually it seems like almost all 64bit other than IA64, use em64t in MKL - but in Numpy (at least 1.4.1), this architecture is picked only for Xeon - though older Xeons were not 64 bit iirc - I'm talking about numpy/distutils/system_info.py file, mkl_info class, __init__ function. The fragment:
from cpuinfo import cpu l = 'mkl' # use shared library if cpu.is_Itanium(): plt = '64' #l = 'mkl_ipf' elif cpu.is_Xeon(): plt = 'em64t' #l = 'mkl_em64t' else: plt = '32' #l = 'mkl_ia32'
with this, my AMD64 that works with em64t (that's version I have installed and that passes all tests, that is MKL 10.2.5.035) is recognized as 32 bit.
Wouldn't it be better to check for is_64bit instead of is_Xeon?
Thanks in advance for hints, Andrzej.