[Beowulf] Detecting binaries that are limited to an architecture?
Peter St. John
peter.st.john at gmail.com
Thu May 5 14:23:22 PDT 2016
You might run it through a decompiler; then you'd be looking at the
assembler at least.
On Thu, May 5, 2016 at 4:51 PM, Paul McIntosh <paul.mcintosh at monash.edu>
> 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
> 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
> 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
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Beowulf