Hej,

so from what I gather if you set JULIA_CPU_TARGET=core2, Julia restricts 
itself to the cpu features defined 
here: 
http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86.td?view=markup
Currently the only supported and tested options are i386, core2 and native, 
whereas native tries to detect the available features of your cpu and uses 
all of them, leading to better performance on more advanced architectures. 

The problem is that if you compile with target set to native you can't 
deploy your binaries to different machines with different processors. There 
is currently a PR that might help in that 
regard. https://github.com/JuliaLang/julia/pull/8074

The idea would be to build Julia with core2 and on each cluster node 
regenerate the sysimage with target=native.

Best Valentin

On Sunday, 24 August 2014 14:37:03 UTC+2, Florian Oswald wrote:
>
> Hi!
>
> I'm running julia release 0.3 on an hpc system that features two 6-core 
> 2.4GHz Intel Westmere processors (a total of 12 processor cores) per node. 
> I noticed my program is significantly slower on that machine than on my 
> mac, where I run this on 1 core (2.4GHz Intel Core i5). (runtime is 60 secs 
> vs 90 secs)
>
> I would expect the hpc cores to be slightly slower but was surprised it 
> was that much. I was wondering if any of the options I set to build this 
> are culprit for this? I do run the binary of release 0.3 on my mac, whereas 
> I build from source with those options on the hpc:
>
> OPENBLAS_TARGET_ARCH=NEHALEM 
> OPENBLAS_DYNAMIC_ARCH = 0 
> OPENBLAS_USE_THREAD=0 
> JULIA_CPU_TARGET=core2
>
> I can build julia without the final option. I cannot build it without the 
> first three options.
>
> I cannot run multiple nodes without the final option, since I get an error 
>
> Target architecture mismatch. Please delete or regenerate 
> sys.{so,dll,dylib}.
>
>
>
>
>

Reply via email to