[Beowulf] Detecting binaries that are limited to an architecture?
olli-pekka.lehto at csc.fi
Thu May 5 14:17:53 PDT 2016
Can't help but I'll give you a :+1:
I was planning to do something like this some time ago but hit this same
snag and just left it on the back burner and kind of forgot it there. :)
I really hope that you are able to implement this. It would also be useful
in tracking the amount of suboptimally compiled binaries (which would
lack any modern vector instructions).
----- Original Message -----
> From: "Paul McIntosh" <paul.mcintosh at monash.edu>
> To: beowulf at beowulf.org
> Sent: Thursday, 5 May, 2016 23:51:46
> Subject: [Beowulf] Detecting binaries that are limited to an architecture?
> I am wondering if there is an easy way to detect if a binary makes use of
> opcodes which are not available on a specific architecture?
> 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.
> I have been putting together a test suite for our software stack and would
> like to add the ability to sanity check binaries for such errors. I thought
> there would be easy way to do this by looking at the opcodes (objdump) and
> comparing them to what the architecture provides. However this requires
> knowing all the opcodes from Intel manuals for a chip.
> I have be playing with opcode.sh
> (https://gist.github.com/rindeal/72af275f05d44e10ebca) which looks promising
> but will need a bit of manual work to get it to do what I want (and still
> may be incomplete/inaccurate).
> Has anyone done this? Know of a way to easily get a computer readable list
> of opcodes per cpu (note /proc/cpuinfo flags just shows features not
> Dr Paul McIntosh
> Senior HPC Consultant, Technical Lead,
> Multi-modal Australian ScienceS Imaging and Visualisation Environment
> Monash University, Ph: 9902 0439 Mob: 0434 524935
> Beowulf mailing list, Beowulf at beowulf.org sponsored by Penguin Computing
> To change your subscription (digest mode or unsubscribe) visit
More information about the Beowulf