Carlos,
Thanks! I’ll use a combination of proactive tests based on this and reactive
based on dmesg/message log. I’ll also investigate Chris’ cupid.
Here’s a quick test – our broken python (due to libraries which only run on new
nodes) and the fixed python…
for i in `cat files_broken`; do echo $i; ./analyze-x86 $i | grep AVX | grep -v
" 0"; done
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/core/_dotblas.so
AVX: 361794
AVX2: 17
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/core/multiarray.so
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/core/scalarmath.so
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/core/umath.so
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/fft/fftpack_lite.so
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/lib/_compiled_base.so
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/linalg/lapack_lite.so
AVX: 5115
AVX2: 29
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/linalg/_umath_linalg.so
AVX: 6120
AVX2: 29
/usr/local/python/2.7.8-gcc/lib/python2.7/site-packages/numpy/random/mtrand.so
for i in `cat files_fixed`; do echo $i; ./analyze-x86 $i | grep AVX | grep -v "
0"; done
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/core/multiarray.so
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/core/umath.so
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/fft/fftpack_lite.so
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/linalg/lapack_lite.so
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/linalg/_umath_linalg.so
/usr/local/python/2.7.11-gcc/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/random/mtrand.so
Cheers!
Paul
From: Carlos Fenoy [mailto:[email protected]]
Sent: Friday, 6 May 2016 7:32 PM
To: Carsten Aulbert <[email protected]>
Cc: Paul McIntosh <[email protected]>; [email protected]
Subject: Re: [Beowulf] Detecting binaries that are limited to an architecture?
Hi,
Here you have a more updated version of the script. This one supports up to
AVX2, although it will not tell you exactly the CPU version it is compatible
with.
https://github.com/wpoely86/scripts/blob/master/analyze-x86
Regards,
Carlos
On Fri, May 6, 2016 at 7:06 AM, Carsten Aulbert <[email protected]
<mailto:[email protected]> > wrote:
Hi
On 05.05.2016 22:51, Paul McIntosh wrote:
> We have /usr/local mounted across nodes with some Intel Xeon X5650
> (Westmere) and some E5-2670 (SandyBridge). Some code spits out "Illegal
> Instruction" when run on the old nodes and it appears to be due to hitting
> shared libraries compiled on the newer nodes. We are going to have a similar
> situation on the newer clusters also.
>
some years ago I accidentally found this here
https://github.com/rozcietrzewiacz/home/blob/master/scripts/analyse-x86.sh
which "simply" wades through all instructions and spits out for which
target platform the binary is ok.
Given that this is 4yrs old and I had to apply a small fix about
variable naming (I think/attached) it will most certainly not find all
edge cases, but may already help to get started.
Cheers
Carsten
_______________________________________________
Beowulf mailing list, [email protected] <mailto:[email protected]>
sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit
http://www.beowulf.org/mailman/listinfo/beowulf
--
--
Carles Fenoy
_______________________________________________
Beowulf mailing list, [email protected] sponsored by Penguin Computing
To change your subscription (digest mode or unsubscribe) visit
http://www.beowulf.org/mailman/listinfo/beowulf