It's strange that code without "-xHost" does not run on the head node. What other compiler options are there? The only reason I can see is that the Intel compiler has been installed in a special way to use additional compiler flags, and these flags make the code not work any more on Sandy Bridge.

To my knowledge, the processors accept the same machine instructions. The CPU tuning might be different.

Running short tests or compiled utilities on the head nodes is very convenient. I would continue to make sure the code runs everywhere until there is a proven performance benefit.

-erik


On Sun, Sep 18, 2016 at 2:36 PM, Roland Haas <rhaas@illinois.edu> wrote:
Hello all,

NERSC's edison cluster specifies -xHost in its cfg file. However login
nodes and compute nodes are actually different (Sandy Bridge vs. Ivy
Bridge cpus).

A quick test removing -xHost reveals a possible reason: without -xHost
the compiled exectuables do not run on the head node. No for the actual
question: is it worthwhile to claim cross compilation (and the
requirement to have to specify endianess, type sizes etc manually) to
possibly gain some more speed?

Given that Ivy and Sandy Bridge are tick and tock I would not expect
much of a gain (though maybe Ivy Bridge actually offers wider AVX
instructions?).

At least I will add a comment to edison.cfg explaining why either
-xHost is used or why a cross compilation is required.

Yours,
Roland

--
My email is as private as my paper mail. I therefore support encrypting
and signing email messages. Get my PGP key from http://keys.gnupg.net.

_______________________________________________
Users mailing list
Users@einsteintoolkit.org
http://lists.einsteintoolkit.org/mailman/listinfo/users




--
Erik Schnetter <schnetter@cct.lsu.edu>
http://www.perimeterinstitute.ca/personal/eschnetter/