Come posso verificare se la mia versione installata di numpy è compilata con il set di istruzioni SSE/SSE2? So che alcune parti di numpy usano BLAS, come controllare anche BLAS?Come posso verificare se il mio numpy installato è compilato con il set di istruzioni SSE/SSE2?
risposta
Date un'occhiata a:
import numpy.distutils.system_info as sysinfo
sysinfo.show_all()
Questo stamperà tutte le informazioni su ciò che è stato compilato NumPy contro.
Penso che un modo sia usare objdump su un file numpy.so se si è sotto linux, e grep per le istruzioni specifiche per sse.
per SSE3 (http://en.wikipedia.org/wiki/SSE3):
objdump -d /usr/lib/pyshared/python2.7/numpy/core/*.so | grep -i MOVDDUP
per SSE2 (http://fr.wikipedia.org/wiki/Jeu_d%27instructions_x86#Instructions_SSE2):
objdump -d /usr/lib/pyshared/python2.7/numpy/core/*.so | grep -i ADDPD
se si ottiene qualche risultato con il grep significa che il binario è stato compilato con le bandiere SSE .
Nel mio sistema (derivato da Ubuntu 14.04), quei file sono '/usr/lib/python2.7/dist-packages/numpy/core/*. So'. –
Per trovare la tua posizione numpy: 'python3 -c" importa numpy; stampa (numpy. File __) "' – RedEyed
Questo non risponde alla domanda, in quanto non controlla alcuna dipendenza a seconda di esso in modo ricorsivo. – TimZaman