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